Open PI-KA-CHU opened 5 years ago
前言:
Servlet的生命周期:
Servlet的工作原理:
Tomcat中的JSP引擎就是一个Servlet程序,负责解释执行JSP页面 处理流程: 1)客户通过浏览器向服务器端的JSP页面发送请求。 2)容器接受到客户请求后,会检查JSP文件对应编译后的Servlet文件(.class)是否存在。如果不存在,则跳转到第4)步,否则执行下一步。 3)容器检查JSP页面是否有更新(修改),没有更新,则跳转到第5)步,否则执行下一步。 4)容器将JSP文件转换为Servlet类源文件(.java)。(此步会检查和捕获JSP语法错误) 5)容器将Servlet源文件(.java)编译成相应的字节码(.class)文件。(会检查和捕获Java语法错误) 6)容器将字节码(.class)文件加载到内存。 7)容器实例化Servlet(调用构造函数),然后调用初始化方法(jspInit())初始化Servlet。到此为止,Servlet对象真正成为一个Servlet,准备就绪,可以处理客户的请求了。 8)容器创建一个新的线程来运行Servlet并运行Servlet的_jspService()方法处理客户的请求。 9)Servlet生成并向客户返回一个响应(或把请求转发给另一个Web应用组件处理)。
Servlet容器会创建一个请求对象ServletRequst,其中封装了用户请求的信息,以便处理客户端请求,此外还会创建一个响应对象ServletResponse,用于响应客户端请求,想客户端返回数据。
然后Servlet容器把创建好的ServletRequst和ServletResponse对象传给用户所请求的Servlet。
Servlet利用ServletResponse包含的数据和自身的业务逻辑处理请求,并把处理好的结果写在ServletResponse中,最后Servlet容器把响应结果传给用户。
JavaBean学习
什么是javaBean,如何进行交互:
<jsp:useBean id="loginUser" class="com.po.Users" scope="page"></jsp:useBean> <jsp:useBean id="userDao" class="Dao.UserDao"></jsp:useBean> <jsp:setProperty name="beanName" property="propertyName" value="">
Bean的三大特性:
javaBean的三大核心部分:
事件为JavaBean组件提供了一种发送通知给其他组件的方法。在AWT事件模型中,一个事件源可以注册事件监听器对象。当事件源检测到发生了某种事件时,它将调用事件监听器对象中的一个适当的事件处理方法来处理这个事件。
javaBean的三大构件:
Session bean: 会话构件,是短暂的对象,运行在服务器上,并执行一些应用逻辑处理,它由客户端应用程序建立,其数据需要自己来管理。分为无状态和有状态两种。
Entity bean: 实体构件,是持久对象,可以被其他对象调用。在建立时指定一个唯一标示的标识,并允许客户程序,根据实体bean标识来定位beans实例。多个实体可以并发访问实体bean,事务间的协调由容器来完成。
MessageDriven Bean: 消息构件,是专门用来处理JMS(Java Message System)消息的规范(EIB2.0)。JMS是一种与厂商无关的API,用来访问消息收发系统,并提供了与厂商无关的访问方法,以此来访问消息收发服务。JMS客户机可以用来发送消息而不必等待回应。
其他的常见问题:
优先级:Servlet中API设置 > 程序/web.xml设置 > Tomcat/conf/web.xml设置
//方式一:在web.xml中设置session-config <session-config> <session-timeout>2</session-timeout> </session-config> //方式二:在Tomcat的/conf/web.xml中session-config,默认值为30分钟 <session-config> <session-timeout>30</session-timeout> </session-config> //方式三:在servlet中设置 HttpSession session = request.getSession(); session.setMaxInactiveInterval(60);//单位为秒
session存取对象分别用什么方法?
request.getSession.getAttribute() request.getSession.setAttribute()
Web.xml文件的位置?
WebContent/WEB-INF/
创建一个监听类,需要实现什么接口?
监听不同的类型的类需要实现不同的接口,如HttpSessionListener
Response对象的什么方法可以将cookie写入会话中重写URL接口?
response.encodeRedirectURL(“”)
Filter控制生命周期的方法是哪三个?
init(),doFilter(),destroy()
Servlet及JavaBean期末复习
Servlet容器会创建一个请求对象ServletRequst,其中封装了用户请求的信息,以便处理客户端请求,此外还会创建一个响应对象ServletResponse,用于响应客户端请求,想客户端返回数据。
然后Servlet容器把创建好的ServletRequst和ServletResponse对象传给用户所请求的Servlet。
Servlet利用ServletResponse包含的数据和自身的业务逻辑处理请求,并把处理好的结果写在ServletResponse中,最后Servlet容器把响应结果传给用户。
什么是javaBean,如何进行交互:
Bean的三大特性:
javaBean的三大核心部分:
javaBean的三大构件:
Session bean: 会话构件,是短暂的对象,运行在服务器上,并执行一些应用逻辑处理,它由客户端应用程序建立,其数据需要自己来管理。分为无状态和有状态两种。
Entity bean: 实体构件,是持久对象,可以被其他对象调用。在建立时指定一个唯一标示的标识,并允许客户程序,根据实体bean标识来定位beans实例。多个实体可以并发访问实体bean,事务间的协调由容器来完成。
MessageDriven Bean: 消息构件,是专门用来处理JMS(Java Message System)消息的规范(EIB2.0)。JMS是一种与厂商无关的API,用来访问消息收发系统,并提供了与厂商无关的访问方法,以此来访问消息收发服务。JMS客户机可以用来发送消息而不必等待回应。
优先级:Servlet中API设置 > 程序/web.xml设置 > Tomcat/conf/web.xml设置
session存取对象分别用什么方法?
Web.xml文件的位置?
创建一个监听类,需要实现什么接口?
Response对象的什么方法可以将cookie写入会话中重写URL接口?
Filter控制生命周期的方法是哪三个?