Servlet笔记
来源:互联网 发布:ssuggest软件下载 编辑:程序博客网 时间:2024/06/18 15:41
1) 从单机到网络
2) 从CS到BS
2.什么是Servlet
1) 如何远程访问静态页面?
A.服务器上部署HTML
B.浏览器访问服务器的HTML
2)如何访问动态页面?
A.服务器上部署Servlet
B.浏览器访问Servlet,由Servlet动态生成HTML
3)Servlet
A.Servlet是服务器端的满足规范的组件(类)
B.它可以处理HTTP协议,动态生成HTML
3.Tomcat的使用
1)Linux:
A.安装Tomcat
B.启动Tomcat
打开/tomcat/bin,右键打开终端
执行命令:./startup.sh
C.访问Tomcat
打开浏览器,输入地址(默认端口为8080)
http://localhost:8088
看到一只猫则代表访问成功
D.关闭Tomcat
打开/tomcat/bin,右键打开终端
执行:./shutdown.sh
2)windows:
A.安装JDK,配置JAVA_HOME;
B.安装Tomcat
打开/tomcat/bin,双击startup.bat
C.访问Tomcat
http://localhost:8088
看到一只猫则代表访问成功.
D.关闭Tomcat
打开/tomcat/bin,双击shutdown.bat
3)修改Tomcat端口
打开/tomcat/conf/server.xml,在70行修改为8088
4.开发Servlet(手动部署)
1)创建Java项目
2)创建WEB目录
WebRoot
WEB-INF
classes
lib
*.jar
web.xml
3)Bulid Path -->Libraries --> Add Jars
Build Path -->source -->Output folder
4)创建Servlet
A.实现Servlet接口
B.继承HttpServlet类
5)注册Servlet
在web.xml中注册Servlet
6)手动部署
将WebRoot整体复制到/tomcat/webapps下
7)访问Servlet
http://localhost:8080/WebRoot/hello
5.开发Servlet(MyEclipse自动部署)
1)创建Web项目
2)写Servlet
3)注册Servlet
4)使用MyEclipse部署项目
A.在MyEclipse下部署Tomcat,告诉它要使用哪一个Tomcat
B.使用MyEclipse启动Tomcat
点击服务器图标下的Tomcat6-> Start
c.访问Tomcat
D.关闭Tomcat
点击服务器图标下的Tomcat6->Stop Servlet
5)使用MyEclipse启动Tomcat
6)访问Servlet
7)使用MyEclipse关闭Tomcat
6.HTTP协议
1)用来规范客户端和服务器通信的方式和数据格式。
2)其特点是一次连接处理一个请求。
3)请求步骤
A.建立连接
B.发送连接
C.接收响应
D.关闭连接
4)数据的格式
请求数据包的格式:
--请求行
--消息头
--实体内容
响应数据包的格式:
--状态行
--消息头
--实体内容
补充:
1.什么是JavaBean
满足如下规范的类
1)有包
2)有默认构造器
3)实现序列化接口
4)有bean属性(get/set方法所对应的属性)
public class Teacher{
//对象属性
private String teacherName;
//name是bean属性
public void setName(String name){
this.teacherName=name;
}
public String getName(){
return this.teacherName;
}
//UserName是bean属性
public String getUserName(){
}
}
2.名词解析
1)部署
1)就是把编译后的代码拷贝到Tomcat/
webapps下。
2)部署是专业的说法。
2)服务器
Tomcat是服务器,也叫Java Web服务器,也叫Web服务区,也叫Servlet容器。
1.请求方式
1)get
A.利用URL传参
浏览器会把参数自动附加在URL上传递给服务器,在传参的过程中参数是可见的。
B.对传递的数据有限制,很小
C.使用get的时机
--传递的数据少
--如查询、删除
2)post
A.利用实体内容传参
数据在传递的过程中不可见
B.对传递的数据没有限制,很大
C.使用post的时机
--传递的数据多
--如新增保存、修改保存、注册、登录
2.给服务器传参时的乱码问题
1)get
get_encoding.png
2)post
post_encoding.png
3)总结
A.尽量避免get请求传中文,post请求乱码采用req.setCharacterEncoding()设置
B.服务器给浏览器响应时 res.setContentType("text/html;charset=utf-8");
重定向:
1.2个独立的组件(Servlet)之间跳转,采用重定向。一次重定向中包含两次请求。
2.使用时机:
1)新增保存后,重定向到查询
2)修改保存后,重定向到查询
3)删除后,重定向到查询
早期重定向用来解决2个网站之间的衔接问题,现在也常被用来解决
一个项目内部的两个不同组件之间的衔接问题。
1.注册Servlet访问路径
1)精确(/名称)
A.给Servlet取唯一的一个访问名
只能通过该访问名访问这个Servlet
B.比较直观,但是比较麻烦。
C.举例:
查询员工:/findEmp
新增员工:/addEmp
删除员工:/deleteEmp
2)通配符(/*)
A.任何请求都可以访问这个Servlet
B.特征:可以使用一个Servlet处理项目中的所有请求,
从而达到简化Servlet注册的目的
C.举例:
ActionServlet ->/*
所有的请求都交给ActionServlet处理
3)后缀(*.abc)
A.带有"abc"后缀的请求才能访问次Servlet。
B.特征:每一个模块单独使用一个Servlet处理其业务,用后缀区分模块。
C.举例:
员工模块(增删改查员工)
EmpServlet -> *.emp
部门模块(增删改查部门)
DeptServlet -> *.dept
D.注意
此种方案也可以写一个Servlet处理所有请求,即将所有请求当做一个大模块
ActionServlet -> *.do
2.项目中的做法
在项目中为了减少web.xml的配置,通常使用一个Servlet处理所有的请求。
1)参考SpringMVC框架的做法
Servlet ->*.do
即采用第三种方案(后缀)处理所有请求;
2)参考Struts2框架的做法
Filter(类似于Servlet) ->/*
即采用第二种方案(通配符)处理所有请求
3)注意
A.在这种方案下写Servlet,一个Servlet处理全部请求,那么必须实现约定那个功能对应那个请求路径,
然后此Servlet才能遵循这个约定处理业务。
B.开发之前,必须完成这些约定(开发规范)
3.重构EmpManager(简化配置)
1)目标:使用一个Servlet处理所有的请求。
2)规范:
A.所有的请求后缀都是.do;
1.JSP概述
1)JSP借鉴了微软的ASP
2)JSP用来改善Servlet动态生成页面的开发
3)Java Server Page
A.Java服务端的动态页面技术。
B.它更像网页,但是它是服务端组件,
不是客户端组件,和HTML有本质的区别。
C.JSP运行在服务器上,HTML运行在浏览器上
2.JSP的使用
1)HTML/CSS/JS
直接书写
2)Java
*A.JSP表达式
用来输出变量
*B.JSP脚本
写Java的语法(分支、循环)
C.JSP声明
声明Java函数
建议将Java函数封装在类中,在
JSP中对其进行调用,最好别直接
在JSP中写Java。
- 【servlet】servlet 笔记
- servlet 理解 --servlet笔记
- servlet笔记
- Servlet笔记
- Servlet笔记
- Servlet笔记
- Servlet 笔记
- servlet笔记
- Servlet笔记
- servlet 笔记
- servlet笔记
- servlet笔记
- Servlet笔记
- servlet笔记
- Servlet笔记
- servlet笔记
- Servlet笔记
- servlet 笔记
- Linux C程序异常退出怎么办——core文件帮你忙
- 在CentOS系统上从零开始搭建WordPress博客的全流程记录
- java之修改并选择显示SQL Server数据库中的数据
- VS2013修改模版、创建类模版文件
- [Shell]date获取指定日期的后几天
- Servlet笔记
- opencv 处理视频并使用Qt窗口作为输出
- Android中Intent介绍
- 数据库案例中创建连接池以及连接
- Java记事
- 修改win10和ubuntu16.04双系统启动顺序
- 【Codeforces】-366A- Dima and Guards
- Python 文件和目录的操作
- 腾讯云一键搭建WordPress博客网站