Tomcat 免费且开源的JSP服务器
JSP执行过程:
JSP文件.jsp
Servlet文件.java
Class文件.class
Servlet实例
JSP的基本语法
Servlet简介
所有Servlet必须直接或间接继承javax.servlet.Servlet接口,这样才能在Servlet容器中运行,
更简单的办法是继承HttpServlet类
过滤器
监听器
浏览器发送一个HTTP请求,HTTP请求由Web容器分配给特定的Servlet进行处理,Servlet的本质是一个Java对象,这个对象拥有一系列的方法来处理HTTP请求。常见的方法有doGet(),doPost()等。Web容器中包含了多个Servlet,特定的HTTP请求该由哪一个Servlet来处理是由Web容器中的web.xml来决定的
Servlet运行于支持Java的应用服务器中。从实现上讲,Servlet可以响应任何类型的请求,但绝大多数情况下Servlet只用来扩展基于HTTP协议的Web服务器
Servlet工作流程分为三个阶段。init(初始化),service(运行),destroy(销毁)
Servlet没有main方法,所有行为由Container控制。Container就是一个java程序。
在加载Servlet的.class后,Servlet会由构造函数生成一个实例,然后Container调用init()方法完成参数的初始化,接着调用service()方法,service会根据网页的请求,调用doGet或者doPost方法,最后调用销毁方法
Servlet 可能需要不止一本书。因为估计现在也很少有人直接裸写 Servlet ,一般都基于某个 Web 框架来开发
JSP的基本语法
JSP变量和函数 <%!…%>
JSP脚本 <%…%>
JSP的编译指令,3个:page,include, taglib
动作标签:
JSP的内置对象:共9个
request
response
session对象:
out对象:用来向客户端输出各种类型数据
page
config
JSP的范围(Scope)
JavaBean的应用
JavaBean 一个可以重复使用的软件组件,就是一个java类。里面可以封装复杂的计算任务,或者负责与数据库交互。这样有利于提高JSP开发的效率和程序代码的可重复使用性。
JSP+JavaBean 开发模式
将显示和业务逻辑分离了,但是没有将显示和控制分离
JSP+Servlet+JavaBean 开发模式
MVC模式
JSP 视图 用来表现页面
Servlet控制器 控制程序的流程并调用业务进行处理
JavaBean 封装业务逻辑
Struts开发方案
Spring开发方案
Struts+Hibernate
Struts+Spring+Hibernate
后来,javaBean被扩展到了后端上,就有了关于贫血模型、失血模型、涨血模型等等的讨论
新人拿到一个java项目如何看它的架构和逻辑,从哪里入手?
代码熟悉时,从下面几个角度梳理
1)编码规范
2)命名规范,包括包的,类的
3)层级调用web-》controller-》service-》domain