频道栏目
首页 > 程序开发 > Web开发 > Jsp > 正文
J2EE是什么?get和post的请求区别、servlet的生命周期
2017-11-07 14:53:03      个评论    来源:Kobe561的博客  
收藏   我要投稿

1,J2EE是什么?

J2EE本身是一个标准,一个为企业分布式应用的开发提供的标准平台。

J2EE也是一个框架,包括JDBC、JNDI、RMI、JMS、EJB、JTA等技术。

3,get和post的请求区别

1,get是从服务器上获取数据,post是向服务器传送数据。

2,在客户端,Get方式在通过URL提交数据,数据在URL中可以看到;POST方式,数据放置在HTMLHEADER内提交。

3对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。

(2)GET方式提交的数据最多只能有1024字节,而POST则没有此限制。

(3)安全性问题。正如在(1)中提到,使用Get的时候,参数会显示在地址栏上,而Post不会。所以,如果这些数据是中文数据而且是非敏感数据,那么使用get;如果用户输入的数据不是中文字符而且包含敏感数据,那么还是使用post为好。

4,servlet的生命周期

编译阶段:

servlet容器编译servlet源文件,生成servlet类

·初始化阶段:

加载与JSP对应的servlet类,创建其实例,并调用它的初始化方法

·执行阶段:

调用与JSP对应的servlet实例的服务方法

·销毁阶段:

调用与JSP对应的servlet实例的销毁方法,然后销毁servlet实例

5,servlet和jsp的区别

jsp处理页面显示,servelet处理业务逻辑,jsp要编译为servlet才能够执行。

6,jsp架构模型

Model1:纯jsp维护难,代码复用性差。

Model2:jsp+javaBean,在jsp中使用usebean标签,代码 在jsp中体现和model1一样。

Mvc:jsp+javaBean+servlet

7,Jsp隐含变量

1、out来源于java.io.Writer类,它用于发送输出流到客户端。
2、request来源于javax.servlet.http.HttpServletRequest接口。它被关联到每一个HTTP请求。
3、response来源于javax.servlet.http.HttpServletResponse。response对象用于把取得的数据返回到客户端。
4、pageContext提供访问JSP页面的命名空间。它也提供用来访问其他的JSP隐含对象。
5、session来源于javax.servlet.http.HttpSession。它用于存储客户端请求的信息,因此它是有状态交互式的。
6、application来源于javax.servlet.ServletContext。
7、config来源于ServletConfig,它包含了当前JSP/Servlet所在的WEB应用的配置信息。
8、page来源于当前被访问JSP页面的实例化。它实际使用的是JSP转换成的Servlet。
9、exception用于捕获JSP抛出的异常。它只有在JSP页面属性isErrorPage=true时才可用。

8,四大共享范围

application:
全局作用范围,整个应用程序共享,就是在部署文件中的同一个webApp共享,生命周期为:应用程序启动到停止。

session:
会话作用域,当用户首次访问时,产生一个新的会话,以后服务器就可以记住这个会话状态。生命周期:会话超时,或者服务器端强制使会话失效。

request:
请求作用域,就是客户端的一次请求。

page
一个JSP页面。

以上作用范围使越来越小,request和page的生命周期都是短暂的,他们之间的区别就是:一个request可以包含多个page页(include,forward以及filter)。


9,动态include和静态include方法

动态include的优点和不足:

优点:

1:引入和同步一个动态的页面,使jsp页面更具灵活性

2:能和不同页面之间进行信息的交互和快捷的实现方式。

3:改变了原始的所有页面编码都放在一个jsp上,使不同的功能分别写在不同页里,通过动态include方式引用到页面,更易于编码,更易于管理。

不足:

动态的引入时需要频繁的变化和页面信息的更新和交互,要占用大量的资源开销。降低页面的访问速度。如果在没必要动态引入的情况下,不要使用动态include

应该注意事项:

1:动作的flush属性必须要定义,不定义会出现转换错误。而且设置的flush必须要为true

2:在动作中指定的页面必须是同一web应用程序的一部分。如果引入的是非同一web应用的页面将导致请求时错误。

10,Forward和sendRedirect方法的区别

forward()就是转发。sendRedirect就是重定向。两者最大的区别就是一个是:
forward()执行后还是在同一个request范围,
而sendRedirect执行之后就不在同一个request范围里面。

11,jsp有哪些动作,作用分别是什么?

JSP共有以下6种基本动作

jsp:include:在页面被请求的时候引入一个文件。

jsp:useBean:寻找或者实例化一个JavaBean。

jsp:setProperty:设置JavaBean的属性。

jsp:getProperty:输出某个JavaBean的属性。

jsp:forward:把请求转到一个新的页面。

jsp:plugin:根据浏览器类型为Java插件生成OBJECT或EMBED标记。

12,session的特点有哪些?

1,不是线程安全。

2,session是轻量级,

3,每个数据库操作都在事务中进行。

13,session缓存的作用。

1,减少数据库的访问频率。

2,保证缓存中的对象和数据库中的相关记录保持同步。

15, include指令标签

主要有两个方面的不同;

  1.执行时间上:

<%@includefile=”relativeURI”%>是在翻译阶段执行

在请求处理阶段执行.

  2.引入内容的不同:

<%@includefile=”relativeURI”%>

  引入静态文本(html,jsp),在JSP页面被转化成servlet之前和它融和到一起.

引入执行页面或servlet所生成的应答文本.

16,内置对象的作用域

application:全局作用范围,整个应用程序共享,就是在部署文件中的同一个webApp共享,生命周期为:应用程序启动到停止。

session:会话作用域,当用户首次访问时,产生一个新的会话,以后服务器就可以记住这个会话状态。生命周期:会话超时,或者服务器端强制使会话失效。

request:请求作用域,就是客户端的一次请求。

page:一个JSP页面。

17,cookie的使用

创建cookie

 <%
   StringuserName=request.getParameter("username");

   CookietheUsername=newCookie("username",userName);

   response.addCookie(theUsername);
  %>

获取cookie
  <%
   CookiemyCookie[]=request.getCookies();//创建一个Cookie对象数组

   for(intn=0;n=cookie.length-1;i++);//设立一个循环,来访问Cookie对象数组的每一个元素

   CookienewCookie=myCookie[n];

   if(newCookie.getName().equals("username"));//判断元素的值是否为username中的值
    {%>
     你好,<%=newCookie.getValue()%>!//如果找到后,向他问好
    <%}
  %>

设置cookie过期:setMaxAge(0);单位为秒。

18,什么是servlet

是运行在web容器中的服务器端小程序。在mvc架构中控制部分。

19,什么是servlet容器

用来管理servlet生命周期的应用程序(tomcat)

20,jsp标签

动作标签:jsp:includejsp:forwordjsp:usebeanjsp:set/getProperty

:<%@page%><%@include.%><%@taglib..%

Page指令:importsessioncontentTypebufferisTreadSafeinfoerrorPageisErrorPage

21、servlet的生命周期

web容器加载servlet,生命周期开始。

通过调用servlet的init()方法进行servlet的初始化。通过调用service()方法实现,根据请求的不同调用不同的do***()方法。结束服务,web容器调用servlet的destroy()方法。

22、如何现实servlet的单线程模式

<%@pageisThreadSafe=”false”%>

23、JSP和Servlet有哪些相同点和不同点,他们之间的联系是什么?

JSP是Servlet技术的扩展,本质上是Servlet的简易方式,更强调应用的外表表达。JSP编译后是"类servlet"Servlet和JSP最主要的不同点在于,Servlet的应用逻辑是在Java文件中,并且完全从表示层中的HTML里分离开来。而JSP的情况是Java和HTML可以组合成一个扩展名为.jsp的文件。JSP侧重于视图,Servlet主要用于控制逻辑

24,应用服务器有哪些

BEAWebLogicServer,IBMWebSphereApplicationServer,Oracle9iApplicationServer,jBoss,Tomcat

点击复制链接 与好友分享!回本站首页
上一篇:JSP url传参中文乱码问题解决方法
下一篇:jsp的运行原理
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站