tomcat:
Servlet:
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0"> <!--配置Servlet--> <servlet> <servlet-name>demo1</servlet-name> <servlet-class>servlet.ServletDemo1</servlet-class> </servlet> <servlet-mapping> <servlet-name>demo1</servlet-name> <url-pattern>/demo1</url-pattern> </servlet-mapping> <!--配置Servlet--> <servlet> <servlet-name>demo2</servlet-name> <servlet-class>servlet.ServletDemo2</servlet-class> <!--指定Servlet的创建时机 1.第一次被访问时,创建 *<load-on-startup>的值为负数 2.在服务器启动时,创建 *<load-on-startup>的值为非负数 --> <load-on-startup>-5</load-on-startup> </servlet> <servlet-mapping> <servlet-name>demo2</servlet-name> <url-pattern>/demo2</url-pattern> </servlet-mapping> </web-app>
package requset; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; /** * @ProjectName: TutorDualSelectionSystem * @Package: ${PACKAGE_NAME} * @ClassName: ${NAME} * @Author: 王团结 * @Description: 演示request对象获取请求行数据 * @Date: 2019/6/22 0:24 * @Version: 1.0 */ @WebServlet("/requestDemo1") public class RequestDemo1 extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { System.out.println(request.getMethod()); System.out.println(request.getContextPath()); System.out.println(request.getServletPath()); System.out.println(request.getQueryString()); System.out.println(request.getRequestURI()); System.out.println(request.getRequestURL()); System.out.println(request.getProtocol()); System.out.println(request.getRemoteAddr()); } }
package requset; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.Enumeration; /** * @ProjectName: TutorDualSelectionSystem * @Package: ${PACKAGE_NAME} * @ClassName: ${NAME} * @Author: 王团结 * @Description: ${description} * @Date: 2019/6/22 0:40 * @Version: 1.0 */ @WebServlet("/requestDemo2") public class RequestDemo2 extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //演示获取请求头数据 //1.获取所有请求头名称 Enumeration<String> headerNames=request.getHeaderNames(); //2.遍历 while (headerNames.hasMoreElements()) { String name=headerNames.nextElement(); //根据名称获取请求头的值 String value=request.getHeader(name); System.out.println(name+"--"+value); } } }
package requset; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.Enumeration; /** * @ProjectName: TutorDualSelectionSystem * @Package: ${PACKAGE_NAME} * @ClassName: ${NAME} * @Author: 王团结 * @Description: ${description} * @Date: 2019/6/22 0:40 * @Version: 1.0 */ @WebServlet("/requestDemo3") public class RequestDemo3 extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //演示获取请求头数据 String referer=request.getHeader("referer"); System.out.println(referer); //防盗链 if (referer != null) { if(referer.contains("/test")){ System.out.println("正常"); response.setContentType("text/html;charset=utf-8"); response.getWriter().write("欢迎"); }else{ System.out.println("盗链"); } } } }
package requset; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; /** * @ProjectName: TutorDualSelectionSystem * @Package: ${PACKAGE_NAME} * @ClassName: ${NAME} * @Author: 王团结 * @Description: ${description} * @Date: 2019/6/22 0:40 * @Version: 1.0 */ @WebServlet("/requestDemo4") public class RequestDemo4 extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //演示获取请求头数据 String agent=request.getHeader("user-agent"); //判断agent的浏览器版本 if(agent.contains("Chrome")){ System.out.println("谷歌"); }else if(agent.contains("Firofox")){ System.out.println("火狐"); } } }
package requset; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.BufferedReader; import java.io.IOException; /** * @ProjectName: TutorDualSelectionSystem * @Package: ${PACKAGE_NAME} * @ClassName: ${NAME} * @Author: 王团结 * @Description: ${description} * @Date: 2019/6/22 7:44 * @Version: 1.0 */ @WebServlet("/RequestDemo5") public class RequestDemo5 extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //获取请求消息体--请求参数 //1.获取字符流 BufferedReader br=request.getReader(); //2.读取数据 String line =null; while ((line = br.readLine()) != null) { System.out.println(line); } } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } }
package requset; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.Enumeration; import java.util.Map; import java.util.Set; /** * @ProjectName: TutorDualSelectionSystem * @Package: ${PACKAGE_NAME} * @ClassName: ${NAME} * @Author: 王团结 * @Description: ${description} * @Date: 2019/6/22 7:44 * @Version: 1.0 */ @WebServlet("/RequestDemo6") public class RequestDemo6 extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //post获取请求参数 // 根据参数名称获取参数值 String username = request.getParameter("username"); System.out.println("post:" + username); //根据参数名称获取参数值的数组 String[] hobbies = request.getParameterValues("hobby"); for (String hobby :hobbies) { System.out.println(hobby); } //获取所有请求的参数名称 Enumeration<String > perarametNames=request.getParameterNames(); while (perarametNames.hasMoreElements()) { String name=perarametNames.nextElement(); System.out.println(name); String value=request.getParameter(name); System.out.println(value); System.out.println("-----------"); } //获取所有参数的集合 Map<String,String[]> parameterMpa=request.getParameterMap(); //遍历 Set<String> keyset=parameterMpa.keySet(); for(String name:keyset){ //通过键得值 String[] values=parameterMpa.get(name); for (String value:values) { System.out.println(value); } System.out.println("-----------------"); } } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //get 获取请求参数 /*// 根据参数名称获取参数值 String username = request.getParameter("username"); System.out.println("get:" + username);*/ this.doPost(request,response); } }
package requset; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.Enumeration; import java.util.Map; import java.util.Set; /** * @ProjectName: TutorDualSelectionSystem * @Package: ${PACKAGE_NAME} * @ClassName: ${NAME} * @Author: 王团结 * @Description: ${description} * @Date: 2019/6/22 7:44 * @Version: 1.0 */ @WebServlet("/RequestDemo7") public class RequestDemo7 extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //1.设置流的编码 request.setCharacterEncoding("utf-8"); //获取请求参数username String username=request.getParameter("username"); System.out.println(username); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //get 获取请求参数 this.doPost(request,response); } }
package requset; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; /** * @ProjectName: TutorDualSelectionSystem * @Package: ${PACKAGE_NAME} * @ClassName: ${NAME} * @Author: 王团结 * @Description: ${description} * @Date: 2019/6/22 7:44 * @Version: 1.0 */ @WebServlet("/RequestDemo8") public class RequestDemo8 extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { System.out.println("demo8"); //存储数据到request request.setAttribute("msg","hello"); request.getRequestDispatcher("/RequestDemo9").forward(request,response); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //get 获取请求参数 this.doPost(request,response); } }
package requset; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; /** * @ProjectName: TutorDualSelectionSystem * @Package: ${PACKAGE_NAME} * @ClassName: ${NAME} * @Author: 王团结 * @Description: ${description} * @Date: 2019/6/22 7:44 * @Version: 1.0 */ @WebServlet("/RequestDemo9") public class RequestDemo9 extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { System.out.println(request.getAttribute("msg")); System.out.println("demo9"); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //get 获取请求参数 this.doPost(request,response); } }
package requset; import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; /** * @ProjectName: TutorDualSelectionSystem * @Package: ${PACKAGE_NAME} * @ClassName: ${NAME} * @Author: 王团结 * @Description: ${description} * @Date: 2019/6/22 7:44 * @Version: 1.0 */ @WebServlet("/RequestDemo10") public class RequestDemo10 extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { ServletContext servletContext = request.getServletContext(); System.out.println(servletContext); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //get 获取请求参数 this.doPost(request,response); } }
package servlet; import javax.servlet.GenericServlet; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.annotation.WebServlet; import java.io.IOException; /** * @ProjectName: TutorDualSelectionSystem * @Package: servlet * @ClassName: ServeltDemo3 * @Author: 王团结 * @Description: * @Date: 2019/6/21 22:08 * @Version: 1.0 */ @WebServlet("/demo3") public class ServeltDemo3 extends GenericServlet { @Override public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException { System.out.println("demo3..."); } }
package servlet; import javax.servlet.*; import javax.servlet.annotation.WebServlet; import java.io.IOException; /** * @ProjectName: TutorDualSelectionSystem * @Package: servlet * @ClassName: ServlDemo * @Author: 王团结 * @Description: 不用配置的注解 * @Date: 2019/6/21 21:29 * @Version: 1.0 */ @WebServlet(urlPatterns = "/demo2") public class ServletDemo implements Servlet { @Override public void init(ServletConfig servletConfig) throws ServletException { } @Override public ServletConfig getServletConfig() { return null; } @Override public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException { System.out.println("hello"); } @Override public String getServletInfo() { return null; } @Override public void destroy() { } }
package servlet; import javax.servlet.*; import javax.servlet.annotation.WebServlet; import java.io.IOException; /** * @ProjectName: TutorDualSelectionSystem * @Package: cn.king.web.servlet * @ClassName: ServletDemo1 * @Author: ASUS * @Description: Servlet快速入门 * @Date: 2019/6/21 18:21 * @Version: 1.0 */ @WebServlet("/demo1") public class ServletDemo1 implements Servlet { @Override public void init(ServletConfig servletConfig) throws ServletException { } @Override public ServletConfig getServletConfig() { return null; } //提供服务的方法 @Override public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException { System.out.println("hello Servlet"); } @Override public String getServletInfo() { return null; } @Override public void destroy() { } }
package servlet; import javax.servlet.*; import java.io.IOException; /** * @ProjectName: TutorDualSelectionSystem * @Package: cn.king.web.servlet * @ClassName: ServletDemo2 * @Author: ASUS * @Description: Servlet方法 * @Date: 2019/6/21 19:28 * @Version: 1.0 */ public class ServletDemo2 implements Servlet { /** * 初始化方法 * 在Servlet被创建时,执行.只会执行一次 * @param servletConfig * @throws ServletException */ @Override public void init(ServletConfig servletConfig) throws ServletException { System.out.println("init.........."); } /** * 获取ServletConfig对象 * ervletConfig是Servlet的配置对象 * @return */ @Override public ServletConfig getServletConfig() { return null; } /** * 提供服务方法 * 每一次Servlet被访问时,执行.执行多次 * @param servletRequest * @param servletResponse * @throws ServletException * @throws IOException */ @Override public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException { System.out.println("service.."); } /** * 获取Servlet的一些信息,版本,作者信息等等 * @return */ @Override public String getServletInfo() { return null; } /** * 销毁方法 * 在服务器正常关闭时,执行.执行一次. */ @Override public void destroy() { System.out.println("destroy"); } }
package servlet; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; /** * @ProjectName: TutorDualSelectionSystem * @Package: servlet * @ClassName: ServletDemo4 * @Author: 王团结 * @Description: * @Date: 2019/6/21 22:23 * @Version: 1.0 */ @WebServlet("/demo4") public class ServletDemo4 extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { System.out.println("doGET"); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { System.out.println("doPOST "); } }
package servlet; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; /** * @ProjectName: TutorDualSelectionSystem * @Package: servlet * @ClassName: ServletDemo5 * @Author: 王团结 * @Description: Serlet路径配置 * @Date: 2019/6/21 22:39 * @Version: 1.0 */ //@WebServlet({"/d4", "/user/dd4", "/user/ddd4/*"}) @WebServlet({"/d4", "/user/dd4"}) public class ServletDemo5 extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { System.out.println("demo5"); } }
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <form action="/test/demo4" method="post"> <input name="username"> <input type="submit" value="提交2"> </form> <a href="/test/requestDemo3">demo4</a> </body> </html>
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>注册页面</title> </head> <body> <form action="/test/RequestDemo5" method="post"> <input type="text" placeholder="请输入用户名" name="usename"><br> <input type="text" placeholder="请输入密码" name="password"><br> <input type="submit" value="注册"> </form> </body> </html>
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>注册页面</title> </head> <body> <form action="/test/RequestDemo7" method="get"> <input type="text" placeholder="请输入用户名" name="username"><br> <input type="text" placeholder="请输入密码" name="password"><br> <input type="checkbox" name="hobby" value="game">游戏 <input type="checkbox" name="hobby" value="study">学习 <br> <input type="submit" value="注册"> </form> </body> </html>