servlet
Servlet的使用三步曲
- 创建一个类,实现接口:Servlet或继承HttpServlet
- 在web.xml中“注册”这个实现类
- Tomcat(Servlet容器)会创建实现类对象,并调用相应的生命周期方法
生命周期方法
构造器
init()方法
service()方法
destroy()方法
执行过程
第一次请求
创建对象
执行init()方法
执行service()方法
后面请求
执行service()方法 …. ……
对象销毁前
执行destroy()方法
Servlet 执行过程分析
get请求方式
url会显示参数数据的传递是有限的method="get"get的编码是在tomcat/conf/servlet.xml 里面解决的
post 请求方式
method="post"参数在url里面看不到了post编码问题的解决response.setContentType("text/html;charset=UTF-8");
出现的问题总结
1.导入的项目出现异常:JDK unfound、Tomcat unfound 等问题
**解决:**点击小三角选中customize view,取消选中resources,右击项目名称点击properties,点击Java Build Path,就会出现JRE或者Tomcat 出现unfind,编辑修改完成,最后点击项目地下的.settings目录下的org.eclipse.wst.common.project.facet.core.xml文件,打开后修改里面的配置参数,保存后就没有错误啦
2.解决乱码问题
-
从页面获取值的时候post 提交方式
request.setCharacterEncoding(“UTF-8”); -
从页面获取值的时候get 提交方式
< Connector port=“8080” protocol=“HTTP/1.1” connectionTimeout=“20000” redirectPort=“8443” URIEncoding=“UTF-8”/> -
Servlet 返回到页面
response.setContentType(“text/html;charset=UTF-8”); -
jsp页面设置utf-8 编码
<%@ page language=“java” contentType=“text/html; charset=UTF-8” pageEncoding=“UTF-8”%>
< meta http-equiv=“Content-Type” content=“text/html; charset=UTF-8”>
3.复制的项目需要修改:
右击properties 搜索web选项 点击web project settings将原项目名改为现项目名就完成啦