servlet是java服务器上运行的小程序,用于生成相应内容,返回给服务器。
servlet的创建过程
例:
访问login.html,html文件会指定<form action="login" method="post">,通过xml将action对应到相应的servlet,
xml:
<servlet-name>LoginServlet</servlet-name>
<servlet-class>LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping>
主要方法:
获取参数
当浏览器使用get方式提交数据的时候,servlet需要提供doGet()方法
当浏览器使用post方式提交数据的时候,servlet需要提供doPost()方法
实际上,在执行doGet()或者doPost()之前,都会先执行service(),由service()方法进行判断,到底该调用doGet()还是doPost(),直接重写service()方法,在其中提供相应的服务,就不用区分到底是get还是post了。
throws ServletException, IOException {
跳转:
服务端跳转(301) 永久跳转
request.getRequestDispatcher("xxx.html").forward(request, response);
客户端跳转(302)临时跳转
response.sendRedirect("xxx.html");
这种方式要传值出去的话,只能在url中带parameter或者放在session中,无法使用request.setAttribute来传递。
301 重定向是网页更改地址后对搜索引擎友好的最好方法,只要不是暂时搬移的情况,都建议使用301来做转址。 302 重定向是临时性转移。