HttpServlet使用
1.在javaresource文件目录下建一个servlet类,该类继承HttpServlet类。接着重写Get()和Post方法。
2.在webContent\WEB-INF目录下的web.xml中对servlet进行配置。
配置信息:
其中
welcom-file-list中的welcome-file是配置工程的初始界面也就是主界面
servlet-name配置servlet的名字
servlet-class配置该servlet的路劲:package+Classname/包名+servlet类名
URL-pattern是浏览器的访问名
注:servlet和servlet-mapping中的servlet-name必须相同
url-pattern中需在前面加个/以拼接url的格式。
3.配置完成后接下来对浏览器发来的请求进行处理,分get/post两种:
都会有两个参数:HttpServletRequest req(客户端的请求), HttpServletResponse resp(服务器段的响应)
首先我们对两参数进行编码格式设置,通过调用setCharacterEncoding("UTF-8");方法进行设置。不过对于get请求这方法不完善需要在tomcat的server.xml中标签设置URIEncoding="UTF-8"属性。
Response调用setContentType("text/html;charset = UTF-8");可以设置
客户端的响应的内容类型和编码格式。
上面是一些响应内容文件类型
接下来介绍一些两种参数的一些方法:
Request:
一、获取客户机环境信息常见方法:
1.getRequestURL方法返回客户端发出请求时的完整URL。
2.getRequestURI方法返回请求行中的资源名部分。
3.getQueryString方法返回请求行的参数部分。
4.getRemoteAddr方法返回发出请求的客户机的IP地址。
5.getRemoteHost方法返回发出请求的客户机的完整主机名。
6.getRemotePort方法返回客户机所使用的网络端口号。
7.getLocalAddr方法返回WEB服务器的IP地址。
8.getLocalName方法返回WEB服务器的主机名。
9.getMethod得到客户机请求方式。
二、获得客户机请求头:
1.getHeader(String name)方法
2.getHeaders(String name)方法
3.getHeaderNames()方法
三、获得客户机请求参数(客户端提交的数据):
1.getParameter(name)方法
2.getParameterValues(String name)方法
3.getParameterNames方法
4.getParameterMap方法,做框架时大量使用
5.setAttribute("buildingList",list);添加数据
6..req.getRequestDispatcher("buildingList.jsp").forward(req, resp); 重定向,界面跳转。一般和setAttribute配套。且跳转的url不带参。
respond:
1.getOutputStream()获取输出字节流
2.getWriter()获取输出字符流
3.addDataHeader()添加头部信息
4.addHeader()
5.setDataHeader()
6.setHeader()
7.setStatus()负责向客户端(浏览器)发送响应状态码的相关方法
8.sendRedirect("hello.do?action=delete");重定向,带参
在这只介绍前两个:
在我们输出数字时需要将int转为String,还有就是如果用于下载文件使用
getOutputStream();保证文件的完整性,使用字符流容易造成文件完整性的破坏。