jsp是简化servlet编写的一种技术,它对java代码和html语句混合在同一个文件编写,只对网页中
要动态产生的内容采用java代码来编写,而固定不变的静态内容采用普通静态html页面的编写方式进行编写
2)jsp的helloword
新建一个jsp页面在body节点里边<%%>编写java代码
jsp页面访问路径同html相同
3.jsp所包含的九大隐含对象
PagetContext pageContext=null;
HttpSession session=null;
ServletContext context=null;
ServletConfig config=null;
JspWriter out=null;
Object page=this;
//....
使用<%%>编写代码在此位置,可以用到request,response,pageContext,session
//appliaction config,out,page这8个隐含对象(实际上还有一个叫做exception的隐含对象)
pageContext:页面的上下文,是pageContext的一个对象,可以从该对象中获取其他8个隐含对象
session: 代表浏览器与服务器的一次对话。是HttpSession的一个对象。
application :代表当前web应用,是ServletContext的一个对象。
config:当前jsp对应的Servlet的ServletConfig对象(几乎不用)
out:jspWriter对象,调用out.println()可以直接把字符串打印到浏览器上
page:指向当前jsp对应的servlet对象的引用。但是为Object类型。
exception 只有在指定的。声明在page指令的isError="true"才可以使用。
4.jsp可以防止在web应用程序中除了WEB-INF及其子目录外的任何目录中。
5.jsp声明将java代码封装在<%%>之中,他里边的代码将被插入进,servlet的_jsp页面中。6.。。
6。jsp注释的格式<%--%>区别:jsp注释可以阻止java代码的执行。
7.和属性相关的方法
Object getAttribute(String name):获取指定的属性
Enumeratioin getAttributeNames()获取所有属性的名字组成的Enumeration
removeAttribute(String name)移除指定的属性
void setAttribute(String name,Object o)设置属性
pageContext request,session,application对象都有这些属性。
以上四个对象也称为域对象。
pageContext:属性的作用仅限于同一个jsp请求,因此servlet中不能获取到pageContext对象。
request :属性的作用仅限于同一个请求
session :属性作用仅限于一次会话(浏览器直到关闭称之为一次会话,前提是在此之间会话不失效)
application :属性作用范围限于当前web应用。即application是全局的对象。范围最大。只要一处设置,其他都可以获取到该属性值。
8.请求转发和重定向
1)本质区别
请求的抓饭那只发出一次请求,重定向则发出了两次请求
具体区别:
a.转发 地址栏是初次发出请求的地址
b.重定向 地址栏不再是初次发出的请求地址,地址栏地址为最后相应的地址。
2)在最宠servlet中,request对象和中转的那个request是同一个对象。
而重定向请求的request则不再是那个。
3)请求的转发只能转发到当前web应用的资源。重定向到任何资源。
4)请求转发“/”代表当前web的根目录( http://localhost:8080/day29/),重定向的"/"当前web站点( http://localhost:8080/)的根目录
注:当前按web应用的根目录为 http://localhost:8080/day29
站点的根目录为: http://localhost:8899/
要动态产生的内容采用java代码来编写,而固定不变的静态内容采用普通静态html页面的编写方式进行编写
2)jsp的helloword
新建一个jsp页面在body节点里边<%%>编写java代码
jsp页面访问路径同html相同
3.jsp所包含的九大隐含对象
PagetContext pageContext=null;
HttpSession session=null;
ServletContext context=null;
ServletConfig config=null;
JspWriter out=null;
Object page=this;
//....
使用<%%>编写代码在此位置,可以用到request,response,pageContext,session
//appliaction config,out,page这8个隐含对象(实际上还有一个叫做exception的隐含对象)
pageContext:页面的上下文,是pageContext的一个对象,可以从该对象中获取其他8个隐含对象
session: 代表浏览器与服务器的一次对话。是HttpSession的一个对象。
application :代表当前web应用,是ServletContext的一个对象。
config:当前jsp对应的Servlet的ServletConfig对象(几乎不用)
out:jspWriter对象,调用out.println()可以直接把字符串打印到浏览器上
page:指向当前jsp对应的servlet对象的引用。但是为Object类型。
exception 只有在指定的。声明在page指令的isError="true"才可以使用。
4.jsp可以防止在web应用程序中除了WEB-INF及其子目录外的任何目录中。
5.jsp声明将java代码封装在<%%>之中,他里边的代码将被插入进,servlet的_jsp页面中。6.。。
6。jsp注释的格式<%--%>区别:jsp注释可以阻止java代码的执行。
7.和属性相关的方法
Object getAttribute(String name):获取指定的属性
Enumeratioin getAttributeNames()获取所有属性的名字组成的Enumeration
removeAttribute(String name)移除指定的属性
void setAttribute(String name,Object o)设置属性
pageContext request,session,application对象都有这些属性。
以上四个对象也称为域对象。
pageContext:属性的作用仅限于同一个jsp请求,因此servlet中不能获取到pageContext对象。
request :属性的作用仅限于同一个请求
session :属性作用仅限于一次会话(浏览器直到关闭称之为一次会话,前提是在此之间会话不失效)
application :属性作用范围限于当前web应用。即application是全局的对象。范围最大。只要一处设置,其他都可以获取到该属性值。
8.请求转发和重定向
1)本质区别
请求的抓饭那只发出一次请求,重定向则发出了两次请求
具体区别:
a.转发 地址栏是初次发出请求的地址
b.重定向 地址栏不再是初次发出的请求地址,地址栏地址为最后相应的地址。
2)在最宠servlet中,request对象和中转的那个request是同一个对象。
而重定向请求的request则不再是那个。
3)请求的转发只能转发到当前web应用的资源。重定向到任何资源。
4)请求转发“/”代表当前web的根目录( http://localhost:8080/day29/),重定向的"/"当前web站点( http://localhost:8080/)的根目录
注:当前按web应用的根目录为 http://localhost:8080/day29
站点的根目录为: http://localhost:8899/