jsp(java server page)和servlet是JAVA EE规范的两个基本成员,是JAVA WEB开发的重点也是基础知识。JSP本质上也需要编译成SERVLET运行。
JSP比较简单,可以理解为在HTML页面中嵌入JAVA代码,或使用各种JSP标签,再辅以各种JAVA BEAN.
<!-- JSP声明 --> <%! public String info(){return "Hello jsp";} %> <div> <!-- JSP 代码段 --> <% out.println(new java.util.Date());%> <br/> <%=info() %> <!-- JSP表达式 --> </div>
Servlet 在MVC规范出来以后,仅仅作为控制器使用,不再生成页面标签,也不再作为视图层角色使用。
Servlet是一个特别的JAVA类,它继承HttpServlet,每一个Servlet可以响应客户端的请求。提供了不同的方法来响应客户端请求。
主要有doGet,doPost,doPut,doDelete方法。
我们写自己的Servlet的时候,通常不需要重载init 和 destroy方法,实现其service方法即可,完成对页面的渲染。
public void service(HttpServletRequest request,HttpServletResponse response)…
Servlet中没有内置对象,需要显式创建,这点需要注意。
然后编译成class文件,然后放置在WEB-INF/classes路径下,还需要在web.xml中配置Servlet的名字和URL。
Filter主要用于对用户请求进行预处理,也可以对HttpServletResponse进行后处理,是一个典型的处理链。
作用:用于授权,日志,负责解码等。
Listener介绍
当web应用在Web容器中运行时,Web应用内部会不断发生各种事件,如启动,停止,用户Session开始,结束,请求到达等。
Servlet api提供了大量监听器来监听Web应用的内部事件,从而允许当web内部事件发生时回调监听器内的方法。
使用listener只需要两个步骤:
1。定义listener实现类
2。通过注解 或 web.xml文件中配置listener
表达式语言
EL 是一种简化的数据访问方式。使用EL可以方便地访问JSP的隐含对象和JAVA BEANS组件,在JSP2规范中,建议尽量使用EL与文件的格式一致,避免使用JAVA脚本。
Servlet 3.0顺应了潮流,抛弃了采用web.xml配置servlet,Filter,Listener的步骤,允许开发人员使用注解修饰它们,从而进行部署。
提供了异步处理
原来servlet作为控制器如果调用了一个耗时的业务方法,则需要等到完成之后才响应,3。0使用一个新的线程去调用耗时的业务方法,这样避免等待。
WebSocket 是HTML5规范的一部分,它允许js建立与远程服务器的连接,从而允许远程服务器将数据推送给浏览器。由此可以构建实时性要求比较高的应用,如在线游戏,在线证券,设备监控,新闻在线播报,只要服务器有了新数据,就可以直接将数据推送给浏览器。