Servlet(Action)之间的数据传递
来源:互联网 发布:pptv网络电视直播下载 编辑:程序博客网 时间:2024/05/08 16:28
Servlet(Action)之间的数据传递
1:如何让用户的请求数据从一个Servlet传递给另一个Servlet
第一种方式:通过超链接传递数据
第二种方式:通过表传递取参数。
第三种方式:通过setAttribute("name",value)与getAttribute(name value)传递参数
1)通过超链接获得参数:
需要在超链接后面给定要传递参数的值。但长度有限制
- package testParameter;
- 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 TestA extends HttpServlet{
- @Override
- protected void service(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- response.setContentType("text/html");
- PrintWriter out=response.getWriter();
- String name="hello,everyone";
- out.println("<html>");
- out.println("<body>");
- out.println("<a href='/JSP/test?id="+name+"'>this is a test</a>");
- out.println("<body>");
- out.println("</html>");
- out.flush();
- }
- }
package testParameter;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 TestA extends HttpServlet{@Overrideprotected void service(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {response.setContentType("text/html");PrintWriter out=response.getWriter();String name="hello,everyone";out.println("<html>");out.println("<body>");out.println("<a href='/JSP/test?id="+name+"'>this is a test</a>");out.println("<body>");out.println("</html>"); out.flush();}}
通过request.getParameter("id")获得参数的值:
- package testParameter;
- 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 Test extends HttpServlet {
- @Override
- protected void service(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- String name=request.getParameter("id");
- response.setContentType("text/html;charset=gb2312");
- PrintWriter out=response.getWriter();
- out.println("<html>");
- out.println("<body>");
- out.println(name);
- out.println("</body>");
- out.println("</html>");
- out.flush();
- }
- }
package testParameter;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 Test extends HttpServlet {@Overrideprotected void service(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {String name=request.getParameter("id");response.setContentType("text/html;charset=gb2312");PrintWriter out=response.getWriter();out.println("<html>");out.println("<body>");out.println(name);out.println("</body>");out.println("</html>"); out.flush();}}
通过表单获得参数:
- package testParameter;
- 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 TableP extends HttpServlet{
- @Override
- protected void service(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- response.setContentType("text/html;charset=gb2312");
- PrintWriter out=response.getWriter();
- out.println("<html>");
- out.println("<body>");
- out.println("<form action='/JSP/tabletest' method='post'>");
- out.println("<table align='center'>");
- out.println("<tr>");
- out.println("<td>");
- out.println("username:");
- out.println("</td>");
- out.println("<td>");
- out.println("<input type='text' name='name'>");
- out.println("</td>");
- out.println("</tr>");
- out.println("<tr>");
- out.println("<td>");
- out.println("password:");
- out.println("</td>");
- out.println("<td>");
- out.println("<input type='text' name='pwd'>");
- out.println("</td>");
- out.println("</tr>");
- out.println("<tr >");
- out.println("<td colspan='2'>");
- out.println("<input type='submit' value='提交'>");
- out.println("</td>");
- out.println("</tr>");
- out.println("</table>");
- out.println("</form>");
- out.println("</body>");
- out.println("</html>");
- out.flush();
- }
- }
- package testParameter;
- 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 GetTableP extends HttpServlet{
- @Override
- protected void service(HttpServletRequest req, HttpServletResponse resp)
- throws ServletException, IOException {
- resp.setContentType("text/html;charset=gb2312");
- PrintWriter out=resp.getWriter();
- String name=req.getParameter("name");
- String pwd=req.getParameter("pwd");
- out.println("<html>");
- out.println("<body>");
- out.println(name);
- out.println("<hr>");
- out.println(pwd);
- out.println("</body>");
- out.println("</html>");
- out.flush();
- }
- }
package testParameter;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 TableP extends HttpServlet{@Overrideprotected void service(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {response.setContentType("text/html;charset=gb2312");PrintWriter out=response.getWriter();out.println("<html>");out.println("<body>");out.println("<form action='/JSP/tabletest' method='post'>");out.println("<table align='center'>");out.println("<tr>");out.println("<td>");out.println("username:");out.println("</td>");out.println("<td>");out.println("<input type='text' name='name'>");out.println("</td>");out.println("</tr>");out.println("<tr>");out.println("<td>");out.println("password:");out.println("</td>");out.println("<td>");out.println("<input type='text' name='pwd'>");out.println("</td>");out.println("</tr>");out.println("<tr >");out.println("<td colspan='2'>");out.println("<input type='submit' value='提交'>");out.println("</td>");out.println("</tr>");out.println("</table>");out.println("</form>");out.println("</body>");out.println("</html>"); out.flush();}}package testParameter;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 GetTableP extends HttpServlet{@Overrideprotected void service(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {resp.setContentType("text/html;charset=gb2312");PrintWriter out=resp.getWriter();String name=req.getParameter("name");String pwd=req.getParameter("pwd");out.println("<html>");out.println("<body>");out.println(name);out.println("<hr>");out.println(pwd);out.println("</body>");out.println("</html>"); out.flush();}}
3:通过setAttribute("name",data)和getAttribute("name");
其中data可以是任何数据类型,另一个servlet通过名字获取该对象getAttribute("name");
注:setAttriute可以被request,session,ServletContext等对象使用。以下以request为例:
- package testParameter;
- import java.io.IOException;
- import javax.servlet.ServletException;
- import javax.servlet.http.HttpServlet;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- public class AttributeA extends HttpServlet{
- @Override
- protected void service(HttpServletRequest req, HttpServletResponse resp)
- throws ServletException, IOException {
- String data="this is just a test,wo need more test for this";
- req.setAttribute("name", data);
- req.getRequestDispatcher("/attributeb").forward(req, resp);
- }
- }
- package testParameter;
- 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 AttributeB extends HttpServlet{
- @Override
- protected void service(HttpServletRequest req, HttpServletResponse resp)
- throws ServletException, IOException {
- String name=(String)req.getAttribute("name");
- resp.setContentType("text/html;charset=gb2312");
- PrintWriter out=resp.getWriter();
- out.println("<html>");
- out.println("<body>");
- out.println(name);
- out.println("</body>");
- out.println("</html>");
- out.flush();
- }
- }
- Servlet(Action)之间的数据传递
- Servlet之间传递数据
- JSP、JAVASCRIPT、SERVLET之间数据的传递
- jsp与servlet之间的数据传递
- Servlet与JSP之间的数据传递
- JSP、servlet、SQL之间的数据传递
- jsp,servlet,sql之间的数据传递
- Jsp和Servlet之间的数据共享(数据传递和数据调用)
- 通过 session 完成 action 之间的数据传递
- 对JSP、JAVASCRIPT、SERVLET之间数据传递的总结
- 对JSP、JAVASCRIPT、SERVLET之间数据传递的总结
- 对JSP、JAVASCRIPT、SERVLET之间数据传递的总结
- servlet之间的数据传递-使用POST方法
- JSP、servlet、SQL三者之间的数据传递
- JSP、servlet、SQL三者之间的数据传递
- struts2的action之间的参数传递
- Jsp和Servlet之间的数据共享(数据传递和数据调用
- struts中在两个action之间进行传递数据的方法
- ASP 远程图片自动保存到本地服务器
- 软件开发:需求分析的20条法则
- resume模板,写的不好
- 一个人出差的日子——惊魂30秒
- 微软PDC2008
- Servlet(Action)之间的数据传递
- 同步机制
- hibernate数据查询的几种方式
- Oracle数据库备份与恢复-ORACLE数据库恢复方法
- 如何解决导出DBF时“字段将不能置于记录中”错误?记录过大错误产生原因
- PROTEL软件使用的误区及几个不易搞清的概念
- MDB链接SQLSERVER导致写入冲突
- 用objcopy把调试信息放到单独的文件中
- 如何使用find查找deque中保存的结构体对象