Serclet java常用的方法以及注释(配web.xml 配置代码)

Serclet 是一个容器接口,可以实现Serclet接口来达到简单的Web和Tomcat之间的交互

1,web.xml配置代码以及说明

1<?xml version="1.0" encoding="UTF-8"?> 2<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 3xmlns="http://xmlns.jcp.org/xml/ns/javaee" 4xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" 5id="WebApp_ID" version="3.1"> 6<!-- Web应用的初始化参数,相当于全局的,任何都可以用 --> 7<context-param> 8<param-name>driver</param-name> 9<param-value>oracle.jdbc.DriverManager</param-value> 10</context-param> 11<!-- 配置和映射Servelt ,只有当前helloServelt能获取 --> 12<servlet> 13<!-- 注册的名字 --> 14<servlet-name>helloServelt</servlet-name> 15<!-- 类的权限类名 --> 16<servlet-class>servlet.HelloServlet</servlet-class> 17<!-- 配置servlet的初始化参数,此节点必须放在 load-on-startup节点之前 --> 18<init-param> 19<param-name>user</param-name> 20<param-value>huhu</param-value> 21</init-param> 22<init-param> 23<param-name>password</param-name> 24<param-value>1234</param-value> 25</init-param> 26<!-- 可指定servlet被创建的时机 :为负数则在第一次访问时创建,为0或正数则在servlet加载进servlet容器时创建,且越小先被创建 --> 27<load-on-startup>1</load-on-startup> 28</servlet> 29<servlet-mapping> 30<!-- 跟 servlet 节点的servlet-name节点的text一致 --> 31<servlet-name>helloServelt</servlet-name> 32<!-- 映射具体的访问路径 /代表访问当前Web应用的根目录 --> 33<url-pattern>/hello</url-pattern> 34</servlet-mapping> 35 36</web-app>

2,Servlet实现类常用的方法及说明

1package servlet; 2 3import java.io.IOException; 4import java.io.InputStream; 5import java.io.PrintWriter; 6import java.util.Arrays; 7import java.util.Enumeration; 8import java.util.Map; 9 10import javax.servlet.Servlet; 11import javax.servlet.ServletConfig; 12import javax.servlet.ServletContext; 13import javax.servlet.ServletException; 14import javax.servlet.ServletRequest; 15import javax.servlet.ServletResponse; 16import javax.servlet.http.HttpServletRequest; 17 18/** 19* Servlet的实现以及一些常用方法注释 20* 21* @author SmartTiger 22* @created 2018年10月15日 下午4:33:31 23*/ 24public class HelloServlet implements Servlet { 25 26// 当前Web应用关闭时启动的方法 27@Override 28public void destroy() { 29} 30 31@Override 32public ServletConfig getServletConfig() { 33 34return null; 35} 36 37@Override 38public String getServletInfo() { 39return null; 40} 41 42// 初始化配置信息 43@Override 44public void init(ServletConfig servletConfig) throws ServletException { 45// 知道名字的情况下求值 46String initParameter = servletConfig.getInitParameter("user"); 47String initParameter2 = servletConfig.getInitParameter("password"); 48System.out.println("user:" + initParameter + " " + "password:" + initParameter2); 49// 不知道名字的情况下,求所有,然后遍历 50Enumeration<String> initParameterNames = servletConfig.getInitParameterNames(); 51while (initParameterNames.hasMoreElements()) { 52String name = initParameterNames.nextElement(); 53String value = servletConfig.getInitParameter(name); 54System.out.println("name:" + name + " " + "value:" + value); 55} 56// 获取servletContext(全局初始化信息) 57ServletContext servletContext = servletConfig.getServletContext(); 58// 1.获取当前Web应用的初始化信息 59String driver = servletContext.getInitParameter("driver"); 60System.out.println("driver:" + driver); 61// 2.获取当前Web应用下在服务器上的文件的绝对路径 62String realPath = servletContext.getRealPath("/web.xml"); 63System.out.println("realPath:" + realPath); 64// 3.获取当前Web应用下的应用的名称 65String contextPath = servletContext.getContextPath(); 66System.out.println("contextPath:" + contextPath); 67// 4.获取当前Web应用下文件的输入流(/WEB-INF/classes) 68InputStream resourceAsStream = servletContext.getResourceAsStream("/WEB-INF/classes/lianxi.properties"); 69System.out.println("resourceAsStream:" + resourceAsStream); 70} 71 72// 每一次请求时调用的方法 73@Override 74public void service(ServletRequest request, ServletResponse response) throws ServletException, IOException { 75// 设置编码格式 76request.setCharacterEncoding("utf-8"); 77// 获取请求内容(request相关的方法) 78// 1,在知道name的情况下获取value 79String parameter = request.getParameter("名字"); 80System.out.println(parameter); 81// 2,不知道名字的情况下:先求名字的集合 82Enumeration<String> parameterNames = request.getParameterNames(); 83while (parameterNames.hasMoreElements()) { 84String name = parameterNames.nextElement(); 85System.out.println(name + " " + request.getParameter(name)); 86} 87// 获取该name下的value集合:例如html中的多选框 88String[] parameterValues = request.getParameterValues("interesting"); 89for (int i = 1; i < parameterValues.length; i++) { 90System.out.print(" " + parameterValues[i]); 91} 92// 获取值的键值对,键为名字,值为值的数组 93Map<String, String[]> map = request.getParameterMap(); 94System.out.println(Arrays.toString(map.get("姓名"))); 95System.out.println(Arrays.toString(map.get("熟悉技能"))); 96HttpServletRequest httpServletRequest = (HttpServletRequest) request; 97// 获取请求URL 98System.out.println(httpServletRequest.getRequestURL()); 99// 获取请求方式 100System.out.println(httpServletRequest.getMethod()); 101// 获取GET请求方式后边的参数 102System.out.println(httpServletRequest.getQueryString()); 103// 获取请求url-pattern 104System.out.println(httpServletRequest.getServletPath()); 105 106// response:先设置响应编码格式(respose相关的方法) 107response.setCharacterEncoding("GBK"); 108// 设置响应的内容类型:以Word为例 109response.setContentType("application/x-abiword"); 110// 获取响应打印流 111PrintWriter writer = response.getWriter(); 112writer.println("你好"); 113} 114 115public HelloServlet() { 116 117} 118}
点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

springmvc +hibernate+ spring+ maven框架搭建

一、web.xml<?xmlversion"1.0"encoding"UTF8"?<webappxmlns:xsi"http://www.w3.org/2001/XMLSchemainstance"xmlns"http://java.sun.com/xml/ns/javaee