JSP怎么将表单提交到对应的servlet
昨天学习了这些内容,今天做一下分享吧,个人感觉挺乱的。。。。呵呵,其实没事,慢慢就好了。难的不会,会的不难嘛!努力+认真就可以了,相信大家都可以的!加油!!!
下面的图是我用myeclipse建立的项目的目录。

目录结构有点多哈。。。没事其实很简单的!
下面是我的index.jsp中的全部代码:这里只是有一个表单,提交到TestServlet.java这个servlet中
| 
 1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
16 
17 
18 
19 
20 
21 
22 
 | 
<%@ page language="java" contentType="text/html; charset=GB18030"    pageEncoding="GB18030"%><meta http-equiv="Content-Type" content="text/html; charset=GB18030"><title>Insert title here</title>    <h1>测试servlet</h1>         <hr>        <form action="servlet/TestServlet" method="post" dir="ltr">            <input name="userID" type="text"><br>            <input value="查询" type="submit"><br>        </form>             b.jsp         | 
下面是TestServlet.java中的全部代码:这个是获取表单提交的内容,然后转发到另一个页面(c.jsp),其中这里包含一个业务逻辑(UserManager.java)
UserManager usermanager=new UserManager();
List userlist=usermanager.findUserByName(username);
以上这两行代码是业务逻辑的代码,获取数据。
| 
 1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
16 
17 
18 
19 
20 
21 
22 
23 
24 
25 
26 
27 
28 
29 
 | 
package com.majianjie.servlet;import java.io.IOException;import java.util.List;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class TestServlet extends HttpServlet {    @Override    protected void service(HttpServletRequest req, HttpServletResponse res)            throws ServletException, IOException {                 //取得表单数据                 String username=req.getParameter("username");        UserManager usermanager=new UserManager();        List userlist=usermanager.findUserByName(username);                 req.setAttribute("userlist", userlist);//设置到req中,key-->value                 //转向到一个界面c.jsp,取出list中的数据        req.getRequestDispatcher("/a/b/http://blog.csdn.net/majianjie/article/details/c/c.jsp").forward(req, res);//转发getRequestDispatcher             }   } | 
下面是UserManager.java 的代码行(即业务逻辑)
| 
 1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
16 
 | 
package com.majianjie.servlet;import java.util.ArrayList;import java.util.List;public class UserManager {    public List<string> findUserByName(String name){        List<string> userList=new ArrayList<string>();        userList.add("数据一");        userList.add("数据二");        userList.add("数据三");        return userList;    }}</string></string></string> | 
下面是c.jsp的代码
| 
 1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
16 
17 
18 
19 
20 
21 
 | 
<%@ page language="java" contentType="text/html; charset=GB18030"    pageEncoding="GB18030"%>     <%@ page import="java.util.*" %><meta http-equiv="Content-Type" content="text/html; charset=GB18030"><title>Insert title here</title>c.jsp    <p>    <%        List userList = (List)request.getAttribute("userlist");        out.println(userList);         %>    </p><p>a.jsp</p> | 
下面是a.jsp的代码
<%@ page language="java" contentType="text/html; charset=GB18030"
    pageEncoding="GB18030"%>
a.jsp
下面是b.jsp的代码
<%@ page language="java" contentType="text/html; charset=GB18030"
    pageEncoding="GB18030"%>
b.jsp
d.jsp, e.jsp中的代码和a.jsp中的代码一样,唯一不同的就是: 将a改为d ,将a改为e......大部分代码是自动生成的,很省事的。
最后是web.xml中的代码:这里是一些配置信息。很重要的!!!嘿嘿嘿
| 
 1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
16 
17 
18 
 | 
<!--?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">  <welcome-file-list>    <welcome-file>index.jsp</welcome-file>  </welcome-file-list>     <servlet>    <servlet-name>TestServlet</servlet-name>    <servlet-class>com.majianjie.servlet.TestServlet</servlet-class>  </servlet>     <servlet-mapping>        <servlet-name>TestServlet</servlet-name>        <url-pattern>/servlet/TestServlet</url-pattern>  </servlet-mapping>   </web-app> | 
在表单中,当你点击提交按钮,触发这个链接action="servlet/TestServlet"。请求到达服务器tomcat后,tomcat检查当前项目的web.xml中所有的
配置中的的属性值。看当中有没有一个和请求地址servlet/TestServlet相同。结果找到如,如下:
TestServlet
      /servlet/TestServlet
其中  /servlet/TestServlet  是你表单的访问地址
然后,tomcat根据上面的TestServlet找到和
相对应的配置如下
TestServlet
    com.majianjie.TestServlet
然后根据当中 找到TestServlet.java文件的地址。
然后通过设置tomcat就可以在浏览器中访问了。例如我的配置好tomcat后在浏览器中输入:http://localhost:8888/test_servlet/就可以访问了,
结果如图:

点击查询后:

点击超级链接b.jsp后是:<喎�"http://www.2cto.com/kf/ware/vc/"
target="_blank"
class="keylink">vcD4KPHA+PGltZyBzcmM9"http://www.2cto.com/uploadfile/Collfiles/20140225/20140225085659468.jpg"
 alt="">
JSP怎么将表单提交到对应的servlet的更多相关文章
- jsp页面form表单提交时候乱码
		
1.问题描述: 表单提交中文乱码问题,怎么解决 2.原因 当表单传输到服务器上时,服务器会将传输的数据进行编码(iso-8859-1),然后当我们从服务器上面取数据的时候,就会出现乱码 3.解决的方式 ...
 - javaweb项目中jsp的from表单提交action内容与web.xml的servlet-mapping对应
		
login.jsp <%@ page contentType="text/html;charset=UTF-8" language="java" %> ...
 - JSP表单提交中文乱码解决方案
		
分2种提交方式,解决方案不同: 1.form表单提交方式为get 乱码: 解决方案: 因为get方法是参数在URL中显示,因为tomcat的URL编码默认是:IOS-8859-1所以要么改tomcat ...
 - JSP将表单提交并在本页中显示
		
代码如下: <%@ page language="java" import="java.util.*" pageEncoding="UTF-8& ...
 - struts2 jsp表单提交后保留表单中输入框中的值 下拉框select与input
		
原文地址:struts2 jsp表单提交后保留表单中输入框中的值 下拉框select与input jsp页面 1 function dosearch() {2 if ($(&q ...
 - JSP表单提交与接收
		
JSP表单提交与接收 在Myeclipse中新建web project,在webroot中新建userRegist1.jsp,代码如下 <%@ page contentType="te ...
 - JSP表单提交中文乱码
		
简要笔记:由于jsp默认表单提交编码方式是:ISO-8859-1,而我们需要的是utf-8或者是gbk码,故需要转化. 具体方法是:在表单处理文件中,将获取到的变量进行转换. String userN ...
 - JSP表单提交 与 接受显示
		
Demo01.jsp 提交表单输入的信息至 Demo02.jsp方法一 1 <%@ page language="java" contentType="text/h ...
 - jsp——js事件修改属性样式的两种方法(直接赋值、修改属性)、验证表单符合某要求、阻止表单提交、告诉浏览器不要缓存
		
代码 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncodi ...
 
随机推荐
- 指尖下的js ——多触式web前端开发之二:处理简单手势(转)
			
这篇文章将描述多触式网页开发中对手势(Gesture)事件的处理. 水果设备中的Gesture,广义的说包括手指点击(click),轻拂(flick),双击(double-click),两只手 ...
 - golang ----map按key排序
			
实现map遍历有序 1. key有序 思路:对key排序,再遍历key输出value 代码如下:既可以从小到大排序,也可以从大到小排序 package main import ( "fmt& ...
 - mysqldump: Couldn't execute 'SET OPTION SQL_QUOTE_SHOW_CREATE=1'
			
源码安装的mysql数据库,在执行mysqldump的时候报错: # mysqldump -u root -p --all-databases > dbdump.db Enter passwor ...
 - spring MVC中传递的参数对象中包含list的情况
			
测试需要的jar包:spring 3.2.jar + jackson-all-1.8.5.jar. 写代码时碰到个需要将对象里的子明细一起传递到controller里去,当时就想直接将参数一起传递过 ...
 - debian 8 解压安装mysql(版本5.7.19)
			
debian 8 解压安装mysql(版本5.7.19)一.下载 根据目标主机的型号官网下载mysql安装包如: mysql-server_5.7.19-1debian8_amd64.deb-bund ...
 - source insight 相对路径新建工程
			
在创建source insight工程时,最好用“相对路径”,并“将si的工程文件,保存到源码包里”! 这样一来,等以后,将源码包放置于硬盘上其他位置,或分发给其他人,或改了源码包的名称,si工程仍然 ...
 - Python 爬虫实例(15)  爬取   汽车之家(汽车授权经销商)
			
有人给我吹牛逼,说汽车之家反爬很厉害,我不服气,所以就爬取了一下这个网址. 本片博客的目的是重点的分析定向爬虫的过程,希望读者能学会爬虫的分析流程. 一:爬虫的目标: 打开汽车之家的链接:https: ...
 - U811.1接口EAI系列之二--生成销售出库单调用U8的EAI通用处理方法--PowerBuilder语言
			
1.销售系统销售出库,更新U811.1材料库存的EAI的XML生成. 2.主要根据U8配置会生成出库单和同时是否更新库存量,还是更新现存量等等. 3.具体参考代码如下: 作者:王春天 2013-11- ...
 - MySQL通过Explain查看select语句的执行计划结果触发写操作
			
[背景] 某某同学执行了一下Explain结果结果发现数据库有了一条写入操作,恭喜这位同学你的锅到货了,你签收一下: 对! 你没有听错,在一种场景下就算是Explain也会引发数据的写操作,就这是外层 ...
 - CentOS 安装Mosquitto及测试
			
系统信息,阿里云服务器 安装工具 yum install gcc gcc-c++ yum install openssl-devel yum install c-ares-devel yum inst ...