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 ...
随机推荐
- 【MAVEN】搜索错误“Index downloads are disabled,search results may be incomplete”
出现上面这个错误,需要将Maven的索引下载到本地. 应用后,在Window -> Show View -> Other -> Maven -> Maven Repositor ...
- 【Oracle】Oracle基本数据类型总结
ORACLE基本数据类型(亦叫内置数据类型 built-in datatypes)可以按类型分为:字符串类型.数字类型.日期类型.LOB类型.LONG RAW& RAW类型.ROWID &am ...
- GDataXMLNode:xml解析库
IOS学习:常用第三方库(GDataXMLNode:xml解析库) 解析 XML 通常有两种方式,DOM 和 SAX: DOM解析XML时,读入整个XML文档并构建一个驻留内存的树结构(节点树),通过 ...
- [Aaronyang] 写给自己的WPF4.5 笔记5[数据绑定三巴掌1/3]
生活总有意外,微笑对待每一件事,无需抱怨--Aaronyang的博客(www.ayjs.net) 博文摘要:数据库下载 教你如何在vs2013中不安装Mssql数据库,使用了Sqlserver Com ...
- Android Notification 的声音和震动
我们在Android系统发送一条Notification的时候,经常需要通过震动或声音来提醒用户.如何为Notification设置声音和震动了.大致思路有: - AndroidNotificatio ...
- idea设置tomcat虚拟路径的两种方法
1.使用tomcat自己的虚拟路径 1.1.在tomcat\config\server.xml中配置 path="/upload" 虚拟路径 E:\photo\upload 图片存 ...
- Debian 8 设置时区和时间配置
一.设置时区 1. 执行 tzselect 2. 弹出洲级地域选项: Please identify a location so that time zone rules can be set cor ...
- asp.net 浏览器下载文件的四种方式
// 方法一:TransmitFile实现下载 protected void Button1_Click(object sender, EventArgs e) { Response.ContentT ...
- hive SQL 字母大小写转换
lower(string A) lcase(string A) 将文本字符串转换成字母全部小写形式 upper(string A) ucase(string A) 将文本字符串转换成字母全部大写形式
- jmeter压测前清理内存
jmeter 压测时设置了内存为sed -i 's/HEAP="-Xms512m -Xmx512m"/HEAP="-Xms36096m -Xmx360096m" ...