现在招工作的都是招J2EE的。所以先打算把JSP复习了一次,然后再复习下三个框架的内容。这次又把以前的视屏教程看了遍,发觉以前不理解的地方,现在都能理解了,可能是程序写多了的缘故吧。哈哈。
一、Servlet部分
首先,介绍一下WebApplication的几个重要文件夹在Web-INF文件目录下有两个重要的文件夹,一个是lib,另外一个是classes,lib是用来放一些库文件,classes是放编译好的servlet,在WEB-INF文件下还有一个web .xml,里面是记录WebApplication的配置。
所有的Servlet都实现了Servlet接口,而我们写的WebApplication都要继承HttpServlet这个类。我们可以重载HttpServlet类的方法,最主要的是doGet()跟doPost(),一般web服务都是通过get方式提交例如,在url中夹带参数。通过get方式传送的就会调用Servlet的doGet()方法,在form表单中声明传送方式为post的时候,就是调用doPost()的方法传送。而get跟post传送之间的区别就是get传送的时候能够在url地址栏里看到,而post不能。
然后说一下Servlet的生命周期:
加载类,实例化(普通类的实例化),
初始化(调用init()方法),
处理请求(WebApplication先调用service()方法,再根据请求调用doGet()或者doPost()方法),
退出服务(调用destry()方法)
然后讲一下在doGet()或doPost()里面很重要的两个参数一个是HttpServletRequest,另外一个是HttpServletResponse
HttpServletRequest代表客户端发送给服务器的请求
HttpServletResponse代表服务器返回客户端的对象
接着讲一下三个很重要的概念:Cookie、Session、Application
Cookie:1、只能写文本文件(安全性)
2、客服端可以阻止服务器写入
3、每个WebApplication只能拿到自己写进去的东西
Cookie有两种形式,一种是保存在客服端的内存里面(浏览器里面),另外一种是写入文本文件。当创建Cookie的时候没有设置生命周期,就会保存到内存里面,设置了生命周期则会保存到文本里面。如果保存在浏览器里面,当把窗口关了,Cookie也会随之消失,而保存在文本里的则可以根据你设置的时间保存下来。
Cookie还有两点要注意的,第一是Cookie是以名值对的形式保存的。第二是Cookie只能被它的同一个页面或者子路劲下面的Servlet/jsp访问到。
Session:Session是保存到服务器的名值对。通过UUID与浏览器保持关联(自动分配给浏览器跟服务器一个相同的UUID)如果浏览器支持Cookie则UUID保存在Cookie里面,如果不支持则只能通过重写URL的方法把UUID写在URL里面(调用resonse.encodeURL()方法)。Session不像Cookie那样拥有路劲访问的问题,只要浏览器没有关闭,都能访问到Session的内容。
Application跟Session类似,但是它是放在服务器共享区域类的,所有人都可以访问。
关于Servlet的还有xml的配置,这里不介绍了。自己看一下tomcat里面的就可以啦。
二、JSP部分
JSP的传统语法有以下几个方面
1、声明 2、脚本 3、表示式 4、注释 5、编译指令 6、动作指令 7、内置对象
inlude:
在编译指令跟在动作指令都有include这个属性。在编译指令的include是表示编译的时候就把另外一个jsp或者html页面include进来而动作指令的include是执行到这条指令的时候才把页面包含进来,两者的区别是不能往编译指令的include里面传递参数,而动作指令的可以。
转发和重定向
foward(转发)首先客户端先发一个请求给服务器,又服务器在跳转到令一个页面,转发的过程客服端是不知道的,用的是同一个Request
response.sendRedirect()是客户端发一个请求给服务器,服务器返回一个要转向的url给客服端,客户端再打开这个新的url。两个Request是不同的。
JSP的内置对象
1、out 2、request 3、response 4、pageContent 5、Session 6、application 7、config 8、exception 9、page
复习的时候还要复习下JavaBean的使用,JSP与Servlet的通信,JSP的注释,这里不详细介绍了