Jsp经典自学笔记.docx

上传人:b****4 文档编号:3807474 上传时间:2023-05-06 格式:DOCX 页数:11 大小:2.08MB
下载 相关 举报
Jsp经典自学笔记.docx_第1页
第1页 / 共11页
Jsp经典自学笔记.docx_第2页
第2页 / 共11页
Jsp经典自学笔记.docx_第3页
第3页 / 共11页
Jsp经典自学笔记.docx_第4页
第4页 / 共11页
Jsp经典自学笔记.docx_第5页
第5页 / 共11页
Jsp经典自学笔记.docx_第6页
第6页 / 共11页
Jsp经典自学笔记.docx_第7页
第7页 / 共11页
Jsp经典自学笔记.docx_第8页
第8页 / 共11页
Jsp经典自学笔记.docx_第9页
第9页 / 共11页
Jsp经典自学笔记.docx_第10页
第10页 / 共11页
Jsp经典自学笔记.docx_第11页
第11页 / 共11页
亲,该文档总共11页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

Jsp经典自学笔记.docx

《Jsp经典自学笔记.docx》由会员分享,可在线阅读,更多相关《Jsp经典自学笔记.docx(11页珍藏版)》请在冰点文库上搜索。

Jsp经典自学笔记.docx

Jsp经典自学笔记

<%@pagelanguage=”java”,important=”java.lang.Object,Encording=”UTF-8”%>

Thismyfirstjsp

<%@includefile=”a.jsp”%>

—这是HTML注释-->

<%--这是JSP注释--%>

<%inta=1;intb=2;

intc=a+b%>

c的值为:

<%=c>

forwardpage=”forwardto.jsp”>

paramname="username"value="admin"/>

forward>

 

—thisisforwardto.jsp-->

<%stringuserame=request.getparameter(“username”);

Stringoutstr=newstring(“谢谢光临”);

Outstr+=username;

Out.println(str);

%>

 

<%@pagelanguage=”java”,important=”java.lang.Object,Encording=”UTF-8”%>

Thisinpu.jsp

row:


col:


value=”submit”>

 

<%@pagelanguage=”java”,important=”java.lang.Object,Encording=”UTF-8”%>

Thisoutput.jsp

<%introw=integer.parseInt(request.getParameter(“row”);

Intcol=integer.parseInt(request.getparameter(“col”);

intvalue=0;

%>

<%for(inti=o;i

%>

<%for(intj=0;j

%>

<%}%>

<%}%>

<%=++value%>

 

1.JSP执行流程:

2.JSP详细执行流程:

3.

5.JSP声明的格式:

<%!

inta=3;%>,脚本段的形式:

<%intb=3;%>,当服务器将JSP转换为Servlet时,会将JSP中的声明转换为类的

 

成员变量,而将脚本段转换为方法中的局部变量,Servlet是单实例的,这样成员变量的值就只有一个,每个用户都会访问到它,而脚本段中的值则是局部变量,每个用户访问的时候各有一份,互不影响。

4.

forward>指令用于转向页面,在该指令后面的所有代码都没有机会执行了,因为页面的流程已经转向了另外一个页面了。

5.

getParameter方法是getParameterValues方法的特例,表示请求参

数值只有一个,如果请求参数值有多个,请使用getParameterValues方法。

在多选框的情况下,需要使用getParameterValues方法来获取用户所选择的多个复选框的值。

JavaWebLesson4

1.request的setAttribute与getAttribute方法一般都是成对出现的,首先通过setAttribute方法设置属性与属性值,然后通过getAttribute方法根据属性获取到与该属性对应的对象值(获取到之后一般都需要进行向下类型转换,将属性值转换为真正的对象)。

setAttribute与getAttribute方法都是在服务器端内部执行的,客户端不知道服务器端是否执行过这两个方法。

JavaWebLesson4

1.request的setAttribute与getAttribute方法一般都是成对出现的,首先通过setAttribute方法设置属性与属性值,然后通过getAttribute方法根据属性获取到与该属性对应的对象值(获取到之后一般都需要进行向下类型转换,将属性值转换为真正的对象)。

setAttribute与getAttribute方法都是在服务器端内部执行的,客户端不知道服务器端是否执行过这两个方法。

2.request的getParameter方法的作用是获取到客户端通过表单或url请求参数所发送过来的参数值,是客户端与服务器端之间的交互,服务器端要想获取到客户端发送过来的数据,就需要使用getParameter方法来获取。

没有与getParameter方法对应的setParameter方法。

3.request对象内数据的存活范围就是在request对象的存活范围内,当客户端向服务器端发送一个请求,服务器向客户端返回一个响应后,该请求对象就被销毁了;之后再向服务器端发送新的请求时,服务器会创建新的request对象,该request对象与之前的request对象没有任何关系,因此也无法获得在之前的request对象中所存放的任何数据。

4.session对象内数据的存活范围也就是session对象的存活范围(?

只要浏览器不关闭,session对象就会一直存在?

),因此在同一个浏览器窗口中,无论向服务器端发送多少个请求,session对象只有一个。

5.

application(应用对象):

存活范围最大的对象,只要服务器没有关闭,application对象中的数据就会一直存在。

在整个服务器运行过程当中,application对象只有一个。

6.request、session以及application这3个对象的范围是逐个增加的:

request只在一个请求的范围内;?

session是在浏览器窗口的范围内?

;application则是在整个服务器的运行过程中。

 

5.JAVAweb5

1.RequestDispatcher对象通过HttpServletRequest的对象的getrequestDispatcher方法得到:

requestDispatcher内方法forword的方法称为请求转发。

如果location地址前面加上“/”,则表示相对于Servlet容器的根来请求,即http:

//localhost:

8080,如果location地址前没有加上“/”,则表示相对于当前请求的URI来寻找地址。

既:

RequestDispatcherrd=request.getrequestDispatcher(my.jsp);

Rd.forward(req,resp);

2.HttpServletresponse内有一方法sendRedirect此方法称为重定向。

既:

response.sendRedirect("/my.jsp");

3.请求转发与重定向的区别。

1)请求转发,整个过程处于同一个请求当中

2)重定向。

实际上客户端会向服务器端发送两个请求。

3)RequestDispatcher是通过调用HttpServletRequest对象的getRequestDispatcher()方法得到的,是属于请求对象的方法。

4)sendRedirect()是HttpServletResponse对象的方法,即响应对象的方法,既然调用了响应对象的方法,那就表明整个请求过程已经结束了,服务器开始向客户端返回执行的结果。

 

JavaWebLesson6

1.可以在

setproperty>中通过param参数为bean的属性动态赋值。

对应的servlet代码是:

2.javabean的存活范围:

3.当将javabean放在session存活范围内时:

生成的servlet代码为:

4.当将javabean放在application范围内时:

5.生成的servlet代码为:

6.每一个servlet都必须实现servlet接口,GernericServlet是一个通用的、不特定任何协议的Servlet,他实现了servlet接口,而HttpServlet继承了GerbericServlet,所以也就实现了Servlet接口。

所以我们定义的Servlet只需要继承HttpServlet父类即可。

7.Servlet接口定义了一个service方法。

HttpServlet对该方法进行了实现,实现方式就是将ServletRequest与ServletResponse转换为HttpServletRequest与HttpServletResponse

8.转换完毕后,会调用HttpServlet类中自己定义的service方法,如下所示

9.在该service方法中,首先获得到请求的方法名,然后根据方法名调用对应的doXXX方法,比如说请求方法为GET,那么就去调用doGet方法;请求方法为POST,那么就去调用doPost方法。

10.在HttpServlet类中所提供的doGet、doPost等方法都是直接返回错误信息,所以我们需要在自己定义的Servlet类中override这些方法

11.源码面前,了无秘密

12.Servelt核心API之间的关系UML图:

13.Servlet的启动

Servlet过滤器(Filter)

1.

.Servlet过滤器本身并不生成请求和响应对象,它只提供过滤作用。

•Servlet过滤器能够在Servlet被调用之前检查Request对象,修改RequestHeader和Request内容;

•在Servlet被调用之后检查Response对象,修改ResponseHeader和Response内容。

Servlet过滤器负责过滤的Web组件可以是Servlet、JSP或HTML文件。

2.

所有的Servlet过滤器类都必须实现javax.servlet.Filter接口。

这个接口含有3个过滤器类必须实现的方法:

–init()

–doFilter()

–destroy()

3.

init(FilterConfig):

这是Servlet过滤器的初始化方法,Servlet容器创建Servlet过滤器实例后将调用这个方法。

在这个方法中可以读取web.xml文件中Servlet过滤器的初始化参数

•doFilter(ServletRequest,ServletResponse,FilterChain):

这个方法完成实际的过滤操作。

当客户请求访问与过滤器关联的URL时,Servlet容器将先调用过滤器的doFilter方法。

FilterChain参数用于访问后续过滤器

•destroy():

Servlet容器在销毁过滤器实例前调用该方法,在这个方法中可以释放Servlet过滤器占用的资源

 

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2