j2ee 学习笔记
1. Servlet
1.1 基本流程
plaintext
1 | (*)-> "login.html" |
web.xml
xml
1 | <!--注册servlet name--> |
- 主要实现了处理映射(servlet-mapping标签) 和注册Servlet(servlet标签)
loginServlet
java
1 |
|
- service将请求类型分发给doPost, doGet 等方法,用户只用重写这些方法
java
1 | /** |
servlet 跳转
- 服务端跳转java
1
request.getRequestDispatcher("success.html").forward(request, response);
- 流程如下plaintext
1
2
3
4@startuml
浏览器 -> Tomcat : <color:#0867ff> /login</color>
Tomcat -> 浏览器 : <color:#0867ff>把success.html的内容发送给浏览器
@enduml
- 客户端跳转java
1
response.sendRedirect("fail.html");
- 流程如下plaintext
1
2
3
4
5
6@startuml
浏览器 -> Tomcat : <color: #0867ff> /login</color>
Tomcat -> 浏览器 : <color: #0867ff>服务器发送一条特殊信息给浏览器让浏览器访问fail.html</color>
浏览器 -> Tomcat : <color: #0867ff> 访问Tomcat</color>
Tomcat -> 浏览器: <color: #0867ff> 服务端获取fail.html的内容,发送给浏览器</color>
@enduml
1.2 生命周期
a. 实例化
java
1 | /** |
b. 初始化
java
1 | /** |
c. 提供服务
- service -> doGet or service -> doPost
d. 销毁
java
1 | /** |
e. 被回收
1.3 自启动
如果tomcat启动就需要执行一些初始化代码,就需要自启动,如校验数据库完整性
web.xml 需要配置自启动
xml1
2
3
4
5
6
7
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>HelloServlet</servlet-class>
<!-- 自启动 数字越[小]优先级越[高], 取值范围1-99-->
<load-on-startup>10</load-on-startup>
</servlet>且将业务逻辑写在servlet 中的init()部分
java1
2
3
4
5
6
7/**
* 在此书写逻辑
*/
public void init(){
System.out.println("init of Hello Servlet");
}``java
1.4 request常用方法
java
1 | System.out.println("3. ========== service ============= 函数"); |
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.