Servlet开发与配置

Servlet开发

init():初始化jsp/servlet的方法。

destroy():销毁jsp/servlet之前的方法。

service():对用户请求生成响应的方法。

如果需要重写init()方法重写该方法的第一行调用super.init(config)。该方法将调用HttpServlet的init方法。

 

Servlet用于响应客户端请求的方法:

doGet() 用于响应客户端GET的请求。

doPost() 用于响应客户端的POST请求。

doPut() 用于响应客户端的PUT请求。

doDelete() 用于响应客户端的DELETE请求。

大部分时候,servlet对于所有请求响应都是完全一样的。此时,可以采用重写一个方法来代替上面的几个方法:只需要重写service()方法即可响应客户端的所有请求。

Servlet配置

1、  通过@WebServlet Annotation进行配置

如果使用annotation配置需要注意:

不能再web.xml文件的根元素(<web-app…/>)中指定metadata-complete=”true”。

不能再web.xml文件中配置该Servlet。

 

2、  通过web.xml文件进行配置

配置Servlet的名字:对应web.xml文件中的<servlet/>元素。

配置servlet的URL:对应web.xml文件中的<servlet-mapping/>元素.




Input.jsp

<form method="post" action="/test/myServlet">
    <table>
    	<tr>
    		<td>姓名:</td>
    		<td><input type="text" name="name"></td>
    	</tr>
    	<tr>
    		<td>性别:</td>
    		<td>
    			<input type="radio" name="gender" value="男">男
    			<input type="radio" name="gender" value="女">女
    		</td>
    	</tr>
    	<tr>
    		<td>颜色:</td>
    		<td>
    			<input type="checkbox" name="color" value="blue">蓝色
    			<input type="checkbox" name="color" value="green">绿色
    		</td>
    	</tr>
    	<tr>
    		<td>国家:</td>
    		<td>
    			<select name="country">
    				<option value="1">中国</option>
    			</select>
    		</td>
    	</tr>
    	<tr>
    		<td><input type="submit"></td>
    	</tr>
    </table>
  </form>


@WebServlet(name="myServlet",urlPatterns="/myServlet")
public class MyServlet extends HttpServlet {

	@Override
	protected void service(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		//设置解码方法
		request.setCharacterEncoding("GBK");
		response.setContentType("text/html;charSet=GBK");
		//获取name的请求参数
		String name=request.getParameter("name");
		//获取gender的请求参数
		String gender=request.getParameter("gender");
		//获取color的请求参数
		String[] color=request.getParameterValues("color");
		//获取country的请求参数
		String country=request.getParameter("country");
		//获取页面输出流
		PrintStream out=new PrintStream(response.getOutputStream());
		//输出html页面标签
		out.println("<html>");
		out.println("<head>");
		out.println("<title>servlet测试</title>");
		out.println("</head>");
		out.println("<body>");
		//输出请求参数的值:name
		out.println("您的名字:"+name+"<hr/>");
		out.println("您的性别:"+gender+"<hr/>");
		out.println("您喜欢的颜色:");
		for(String c:color){
			out.println(c+" ");
		}
		out.println("<hr/>");
		out.println("您来自的国家:"+country);
		out.println("</body>");
		out.println("</html>");
		
		
	}



通过web.xml方式配置servlet:

<!-- 配置servlet的名字 -->
 <servlet>
 	<servlet-name>myServlet</servlet-name>
 	<servlet-class>com.xxx.action.MyServlet</servlet-class>
 </servlet>
 <!-- 配置servlet的URL -->
 <servlet-mapping>
 	<servlet-name>myServlet</servlet-name>
 	<url-pattern>/myServlet</url-pattern>
 </servlet-mapping>











  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值