分享
 
 
 

Jsp基础知识总结

王朝java/jsp·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

Jsp我们学完也有好长一段时间间了,过程中总结的一点点基础知识,拿来与初学者分享,直到最后做我们一个小小的项目,宠物医院,也是用我们最简单的工具Jcreater4.0来做的,呵,到了Ecliplse下才发现,开发速度如此之快,不过这样也打好了我们的基础....不多说了,把所学到的小小总结发来至此吧,愿给初学者带来便利,同时愿高人给以指点不足之处.....

首先来说一下我们jsp的课程:第一部分为Servlet技术,包括Servelt入门,会话跟踪,JavaMal和Servlet.第二部分就是Jsp技术,包括:jsp简介,jsp脚本和指令的使用,jsp隐式对象,JavaBean与jsp中的标准动作,jsp表达式语言,自定义标签,jsp自定义表签库.第三部分就是过滤器的设计模式,包括过滤器和MVC设计模式.

一.Servlet知识及常见错误和规律.

1.桌面运行程序与WEB应用程序在过程实质是一样的---基于请求与响应的过程.

2.http协议(超文本传输协议)

1).无状态:多次请求信息之间无联系.

2).用于internet发送请求和响应消息

3).使用端口接收和发送消息,默认为80端口.

端口:为内存缓冲区(多线程接收数据)

windows: 0---65535端口

0---4096为系统端口

3.什么是Servlet?

Server let服务器端小程序.

用来处理客户端发送的请求,并由服务器响应给客户端的java编写的程序.

Servlet只在服务器运行

4.Servlet详解:

import java.io.*;

import javax.servlet.*;

import javax.servlet.http.*;

import java.util.*;

public class MyServlet extends HttpServlet

{

public void doGet(HttpServletRequest request,HttpServletResponse response)

throws ServletException,IOException

{

response.setContentType("text/html;charset=gb2312");

request.setCharacterEncoding("gb2312");

response.sendRedirect("Login.jsp"); //重定向方法

request.getParameter(""); //读取客户端数据

/ /以下方法为转发,不同于重定向的是:转发时数据不丢失.

ServletContext context=this.getServletContext();

RequestDispatcher dispatcher=context.getRequestDispatcher("/welcome.jsp");

dispatcher.forward(request,response);

...//以下方法为包含(用得相对较少)

dispatcher.include(request,response);

}

public void doPost(HttpServletRequest request,HttpServletResponse response)

throws ServletException,IOException

{

doGet(request,response);

}

}

(2).当需要向Servlet传递参数的时候,Src="Servlet?name=' ' ";

5.执行servlet时,发生下载提示:

(1).可能性一:text/html;charset=GBK中间分号写成逗号.

(2).可能性二:XML中配置信息出错.

(3).可能性三:如定义全局变量时,例:CONTENT_TYPED在以后所用中放在双引号之中.

(4).可能性四:当上面的text/html,charset中写错字符的时候,也会提示下载.

6执行servlet时,发生404错误:

(1).多为xml中配置出错.

(2).可能在servlet通信方法中url出错.

(3).表单提交时:action路径.

(4).比较弱智的错误就是标记写错,请仔细检查.

7.执行servlet时,发生403错误:

(1).tomcat下站点里发生错误.

8.执行servlet时,发生405错误:

(1).servlet中没有post提交方法时.

95.执行servlet时,发生500错误:

(1).多数为servlet程序代码中发生异常错误.

10.执行时,取出的数据为null.就要根据实际情况对应错误提示去找.

11.执行jsp页时,发生500错误提示....

多数为jsp页面在转译过程中发生编译错误! 甚是严重错误,可以按提示回头去找...

二.XML配置

<!--config中的配置信息,当中配置需要在servlet中的xml中-->

<servlet>

<init-param>

<param-name>sess</param-name>

<param-class>com.serv<param-class>

</init-param>

<servlet-name>Myservlet</servlet-name>

<servlet-class>com.Myservetl</servlet-class>

</servlet>

<!--此为对Myservlet进行映射-->

<servlet-mapping>

<servlet-name>Myservlet</servlet-name>

<servlet-class>/url</servlet-class>

<servlet-mapping>

<!--context中配置信息-->

<context-param>

<param-name>ses</param-name>

<param-class>com.ser</param-class>

</context-param>

注意:配置信息只能读取,并且config是在单个Servlet中能访问,context是全局访问

三.

========================会话跟踪技术总结========================

用户授权.

隐藏表单域

URL重写

Cookie使用

--------------------------------------------------------------------------------------------

1.会话:是同一客户端和服务器之间在同一段时间的多次请求和响应.

2.Session使用(重点)

HttpSession session=request.getSession();

session.setAttribute("name",Object); //附值

session.getAttribute(); //取值

session.removeAttributer();

3.Cookie(类)

1).Cookie是什么?

cookie是一段字符串,由HTTP支持,在客户端可以永久保存.写入(硬盘).

每次请求,响应中都会为cookie留有空间.

2).用法:

Cookie cookie=new Cookie("name",cookie); //必须指定cookie的键与值,且必须为字符串.

response.addcookie(cookie);

cookie.setMaxAge(3600); //以秒为单位.

//读取客户端发送过来的cookie,返回值类型为: cookie数组

request.getCookies();

//循环读取键与值.

使用过程:(1).生成cookie, new cookie("","")

(2).设置生存周期 >0,SetMaxAge(秒).

(3).发送到客户端:response.addCookie(cookie);

小常识:(1).一个网站最多向一个客户端写20个cookie.

(2).一个客户端最多接收300个cookie.

4.Session与Cookie这间的关系:

session的ID作为Cookie的值在客户端与服务器之间进行传递.

--------------------------------------------------------------------------------------------

四.构建实体Bean的原则:

/*

* 1.bean类为公有

* 2.类成员为私有

* 3.必有一个无参构造

* 4.有set()和get()方法

* 5.方法命名为setXxx()或getXxx()方法

*/

五.MVC实现数据封装

此数据封装标准按MVC总结.

所需内容: 1.Servlet 2.JavaBean 3.OperBean(DBconnection) 4.Jsp

由Servlet提取前台数据,然后将数据封装于JavaBean中,再实例化OperBean,调用OperBean中方法,

将JavaBean对象以参数的形式传过去,并进行一系列的操作后,返回数据存入ArrayList中或者其它集合内,并将集合对象封装Session对象中,便于在前台取值.

Servlet控制:

........

Arraylist lis=new ArrayList();

String name=request.getParameter("username");

JavaBean bean=new JavaBean();

bean.setName(name);

OperBean oper=new OperBean();

lis=oper.operMethod(bean);

HttpSession session=request.getSession();

session.setAttribute("list",lis);

OperBean逻辑:

...

public ArrayList OperMethod(JavaBean bean)

{

ArrayList lis=new ArrayList();

String usr=bean.getName("name");

String sql="select * from student where name='"+usr+"'";

DBconnection db=new DBconnection();

...//操作数据业务

return lis;

}

前台业务:

...

ArrayList list=(ArrayList)session.getAttribute("lis");

Iterator ite=list.iterator();

while(ite.harNext()) //遍历输出

{

JavaBean bean=(JavaBean)ite.next();

.

//取bean中值

}

//由此可以进行"用户登陆","数据的增删改查","注销登陆"等操作.....

以上所有jsp技术都是没有与struts等框架相关的,只是简单的MVC思想,只有懂得以上简单的思想,才可以进一步的对框架这些高层次的东西钻研,我感觉是如此,毕竟我也是个初学者,还有好多知识不懂,也在不停的学习之中,如果有哪个朋友有好的见意或者好的学习方法,请多多指教!

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有