欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Service和doGet和doPost

程序员文章站 2022-05-24 18:22:08
...

发请求首先得有请求框,jsp文件中可以设置form表单用于数据提交

新建一个jsp文件(直接建在项目下)
设置这么一个表单

<form action="Method" method="get">
    	用户名:<input type="text" name="uname" value=""><br> 
    	密码:<input type="text" name="pwd" value=""><br>
    <input type="submit" value="登录">
 </form>

然后根据URI就可以显示这个页面(ms是虚拟项目名)
ex:http://localhost:8888/ms/Method.jsp

上边代码里边儿action里面代表的是url-patterning(对应的ServletMethod.java这个Servlet) ,method代表的是请求方式
当提交数据时,服务器会找到action对应的的Servlet进行处理数据,表单的这个界面并不是一个请求,而是他所指的action对应的Servlet进行数据处理才算一个请求,所以http提交请求时的url应该是http:localhost:8888/ms/method

处理请求方式有这么三种,service,doPost,doGet

@Override
	protected void service(HttpServletRequest req, HttpServletResponse resp)
			throws ServletException, IOException {
		System.out.println("我是service");
	}
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp)
			throws ServletException, IOException {
		System.out.println("我是get");
	}
	@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp)
			throws ServletException, IOException {
		System.out.println("我是post");
	}

service既可以处理get也可以处理post,
doGet只能处理get,doPost只能处理post,
当service、doGet、doPost这三种方式都存在时,用service进行处理。
当没有service,请求方式为get,处理方法只有doPost时,会报错405

如果在重写的service方法中调用了父类的service方法(super.service(arg0,arg1))
则service方法处理完后,会根据请求方式寻找对应的doGet/doPost处理方法,一般情况下不这么做

相关标签: web开发 servlet