大家好,我是海Dao船长。
如果让大家写一个表单的前台页面,也许大家都能够完美的写出来,但是我们也得form表单需要提交给后台,那么怎么实现前台form表单的提交呢?下面用java代码实现表单的提交效果。
首先写一个简单的form表单,示例如下:
<a href="/servletday/PDayA?name=NAME&password=PASSWORD"> 点击测试是否连接到后台 </a> <form action="/servletday/PDayA" method="post"> 用户名:<input type="text" name="username"/> 密码:<input type="password" name="password"> 爱好<input type="checkbox" name="hobby" value="cf"/>吃饭 <input type="checkbox" name="hobby" value="sj"/>睡觉 <input type="checkbox" name="hobby" value="pb"/>跑步 <br/> <input type="submit" value="提交"/> </form>
其中/servletday是项目名,PDayA是后台的java文件名。
第一个a标签是测试是否连接到PDayA文件。
接下来就开始进行后台的编写了:
public class PDayA extends HttpServlet { //首先写类的doGet方法,进行a标签的连接测试。 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { System.out.println("GET :" + request.getParameter("name")); System.out.println("GET :" + request.getParameter("password")); } //之后进行表单的提交,用到的doPost方法 protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //第一种方法:首先获得request域中的数据并且进行定义变量,之后进行输出。 String username = request.getParameter("username"); String password = request.getParameter("password"); String[] hobby = request.getParameterValues("hobby"); System.out.println(username + ", "+password + ", " + Arrays.toString(hobby)); //第二种方法用接口实现 Enumeration names = request.getParameterNames(); while(names.hasMoreElements()) { System.out.println(names.nextElement()); } //第三种 用Map实现,需要注意的是key和value Map<String,String[]> maps = request.getParameterMaps(); for(String name : maps.ketSet()){ String[] value = maps.get(name){ System.out.println(name + "=" + Arrays.toString(value)); } } } }
如此便实现了表单提交的功能。
如果想要了解更多精彩内容,请大家关注微信公众号 : 海Dao船
海Dao船长会不定期的更新内容哦.