servlet
服务器和应用程序之间进行数据的交互的接口
servlet是一个类,必须实现javax.servlet.Servlet(直接或间接实现)
由程序员进行编写,由服务器进行维护和管理
serclet配置
web.xml,在WEB-INF文件夹下,不能改变路径和名字
<servlet>
<servlet-name>my </servlet-name>
<servlet-class>com.aptech.servlet.MyServIet </servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>my </servlet-name>
<url-pattern>/test</url-pattern>
</servlet-mapping>
1.编写servlet
2.配置servlet
3.访问 servlet,必须按照url-pattern所配置的信息访问
servlet的运行原理(生命周期)
服务器启动的时候,并不会马上创建servlet的实例.
只有当第一次访问该servlet所对应的url-pattern,才会依次调用构造方法》初始化(init)方法》服务(service)方法》,并且之后的每一次访问都是会调用service方法
保证整个服务器中只有一个该servlet的实例,最大程度的降低服务器的压力和开销(单例模式)
destroy 销毁方法 相当于留遗言 , 再执行完毕之后才销毁
设置编码
设置响应对象的编码
response.setCharacterEncoding("utf-8");
设置响应类别
response.setContentType("text/html;charset=utf-8");
往浏览器输出
PrintWriter out=responsor
404 找不到页面
405 禁止访问
500 java代码出错
无法访问该页面,无法访问服务器
服务器没有启动
200正常的情况
间接实现servlet接口
extends HttpServlet 类
重写
doPost();
doGet();
方法
注意:重写方法之后必须删除super.doPost()/ super.doGet();
负责会报405的错误代码
接收请求参数,必须接收表单发送的参数
request.setCharacterEncoding("utf-8");
request.getParameter("表单的name属性");
如果处理复选框 则使用以下方法,返回String格式的数组
request.getParameterValues("name属性");
post 提交密文 安全性高,传输速度较慢,发送内容无长度限制
get提交 也称之为url提交/请求 安全性较低,传输速度快,发送内容有长度限制
/my2?id=1&name=dw&sex=男
req.setCharacterEncoding() 设置编码无效
//1.拆分成字节
byte [] b=sex.getBytes("iso-8859-1");
//2.重新组合
sex=new String(b,"utf-8")
使用form表单并且提交方式为post
get url访问, from表单提交方式为get时, location.href="http://localhost:8080/jsp/m2";
a标签