Servlet 小试牛刀(doGet,doPost)
实验说明:
通过javax.servlet.http下的HttpServlet,HttpServletRequest,HttpServletResponse来完成一些常用Servlet实例
java代码部分
package com.servlet; import java.io.IOException;
import java.io.PrintWriter; import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; public class HelloServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { this.log("执行了doGet方法");
execute(request,response);
} public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { this.log("执行了doPost方法");
execute(request,response);
} public long getLastModified(HttpServletRequest request){
this.log("执行 getLastModified");
return -1;
} @SuppressWarnings("unused")
private void execute(HttpServletRequest request, HttpServletResponse response)throws ServletException,IOException{
response.setCharacterEncoding("utf-8");
request.setCharacterEncoding("utf-8"); StringBuffer requestURL=request.getRequestURL();//获取页面URL
String method=request.getMethod();//获取访问方法
String param=request.getParameter("param");//获取参数 response.setContentType("text/html");//设置文档类型是html
PrintWriter out=response.getWriter();
out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
out.println("<html>");
out.println("<head><title>A Servlet</title></head><body>");
out.println("以"+method+"方式访问页面。获取的param参数为"+param+"</br>");
out.println("<form action='"+requestURL+"' method='get'>" +
"<input type='text' name='param' value='param String'/>" +
"<input type='submit' value='get'/></form>" +
""); out.println("<form action='"+requestURL+"' method='post'>" +
"<input type='text' name='param' value='param String'/>" +
"<input type='submit' value='post'/></form>" +
""); out.println("<script>document.write('本页面最后更新时间:'+document.lastModified);</script>");
out.println("</body>");
out.println("</html>");
}
}
web.xml设置
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<display-name></display-name>
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>com.servlet.HelloServlet</servlet-class>
<init-param>
<param-name>message</param-name>
<param-value>welcome to FirstServlet!</param-value>
</init-param> <init-param>
<param-name>encoding</param-name>
<param-value>utf-8</param-value>
</init-param>
<!-- 配置该Servlet的加载方式.1是tomcat启动时加载.0是第一次该方法是加载 -->
<load-on-startup>1</load-on-startup> </servlet>
<!-- 可以通过 /servlet/HelloServlet 或是。jsp/.php等来访问-->
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/servlet/HelloServlet</url-pattern>
<url-pattern>/servlet/HelloServlet.jsp</url-pattern>
<url-pattern>/servlet/HelloServlet.php</url-pattern>
<url-pattern>/servlet/HelloServlet.aspx</url-pattern>
<url-pattern>/servlet/HelloServlet.asp</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
重点code部分:
(1)用getServletConfig().getInitParameter("encoding");//来获取web.xml中的初始化数据。
(2)StringBuffer requestURL=request.getRequestURL();//获取页面URL
(3)String method=request.getMethod();//获取访问方法
(4)String param=request.getParameter("param");//获取参数
Servlet 小试牛刀(doGet,doPost)的更多相关文章
- servlet中doGet()和doPost()的区别
1.生成方式 get方法有四种: ①直接在URL地址栏中输入URL ②网页中的超链接 ③form中method为get ④form中method为空时,默认是get提交 post只知道有一种:form ...
- servlet中doGet()和doPost()的用法
转自:https://blog.csdn.net/qq_38963960/article/details/79468182 1.servlet中doGet()和doPost()的用法 一般来说我们是用 ...
- [转]servlet中的service, doGet, doPost方法的区别和联系
原文地址:http://m.blog.csdn.net/blog/ghyg525/22928567 大家都知道在javax.servlet.Servlet接口中只有init, service, des ...
- servlet 中 service ,doGet , doPost 关系
web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app version="2 ...
- Servlet的doGet与doPost方法的区别与使用
Servlet的doGet与doPost方法的区别与使用 2016年07月07日 13:05:13 阅读数:10222 一,区别 在使用表单提交数据到服务器的时候有两张方式可共选择,一个是post一个 ...
- 自定义servlet重写doGet或者doPost方法时,405 method not allowed
自定义servlet public class TestServlet extends HttpServlet { @Override protected void doGet(HttpServlet ...
- doget,doPost在底层走的是service
doget,doPost在底层走的是service 因为在源码上 先执行service方法 然后再调用doget,doPost方法
- 【Servlet】doGet()与doPost()的区别
doGet与doPost的区别 .Servlet接口只定义了一个服务方法--service .当发出客户端请求时,调用service方法并传递一个请求和响应对象 .使用时经常在doPost()中调用d ...
- Servlet -doGet() doPost()原理
一.自定义类只需要重写doGet(HttpServletRequest request, HttpServletResponse response) 和doPost(HttpServletReques ...
随机推荐
- oppo X907刷机包 COLOROS 1.0 正式版公布 安卓4.2.2
ROM介绍 本版本号将是X907史上最好的一版本号 全新COLOROS的UI 更新全局手势板操作 优化高速启动应用 安全保障中心也是一直採用COLOROS组成的 COLOROS 1.0给用户带来在线音 ...
- Nginx的事件处理机制
Nginx的事件处理机制:对于一个主要的webserver来说,事件通常有三种类型,网络事件.信号.定时器. 首先看一个请求的基本过程:建立连接---接收数据---发送数据 .再次看系统底层的操作 : ...
- JavaScript-每隔5分钟执行一次ajax请求的实现方法
个页面好像只能有一个 window.onload=function(){},所以要有多个事件,这样写就好了 window.onload=function(){ //假设这里每个五分钟执行一次test函 ...
- MyEclipse10搭建Strust2开发环境
一.创建一个JavaWeb项目 启动MyEclipse10 ,然后在MyEclipse中创建一个JavaWeb项目,点击[File]---->[New]---->[WebProjec ...
- HDU-4879-ZCC loves march(map+set+并查集)
Description On a m*m land stationed n troops, numbered from 1 to n. The i-th troop's position can be ...
- NSURLConnection请求时间
在ios平台上做网络开发最常用的两个类: NSMutableURLRequest *urlRequest = [[NSMutableURLRequestalloc] initWithURL:url c ...
- a标签中的href="#"与href="javascript:void(0)"区别
转自http://blog.csdn.net/fightplane/article/details/5190037 <a href="#"> 点击链接后,页面会向上滚到 ...
- Android - Binder驱动
以下资料摘录整理自老罗的Android之旅博客,是对老罗的博客关于Android底层原理的一个抽象的知识概括总结(如有错误欢迎指出)(侵删): http://blog.csdn.net/luosh ...
- js--小结①
- Navicat 看历史执行SQL
Navicat可以通过这个框口看手动操作所执行的代码操作