无框架情况下jsp数据传递 现在想从后台忘前台传数据。不知道如何获取request,和response,是没有任何框架的哦 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用servlet ,在servlet中跳转 不用框架的EE还真是不记得了后台继承httpservlet的do方法里面貌似直接有request,response参数的;至于前台request、response都是直接可以用的如:<%=request.getparameter("paramName")%>还是上学的时候用到的,呵呵 你的servlet里应该可以得到request吧。实在不行 你可以跳转的时候 作为url里的参数传出 在servlet用转发。request.getRequestDispatcher("demo.jsp").forward(request, response);把数据写到request中。 楼主连Servlet都忘了,把参数保存在request,session,或者application中都可以,再用请求转发到制定的页面 大侠们给个具体点的啊!Servlet 如何new出来啊, request,response的对象如何获取啊之类 public class xxxServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {} public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doGet(request, response); }}数据可以通过request参数获取,doGet处理get请求,doPost处理post请求。在web.xml里边配置你的servlet处理类 9楼的大哥您可能没有明白我的意思,我在模仿structs2框架自己写了一个小框架,在structs2框架中他的response和request可以通过这样获取HttpServletRequest request = ServletActionContext.getRequest();和HttpServletResponse response = ServletActionContext.getResponse();获取我也想弄一个类似于ServletActionContext的类封装小request和response,structs2框架实在看不懂,跪求大侠们帮帮忙! 不用框架不存在,你要么用servlet, request、response在jsp中直接可以用的如:<%=request.getparameter("paramName")%> struts2是通过拦截器实现action的分发和跳转的。你既然要模仿struts2,那么首先你得设计并且实现自己的拦截器。当拦截到什么什么样的请求后,根据请求的配置将请求的值赋给相应的javabean 然后处理完请求后 读取result response到相应的页面。 你都要写框架了。你连基本的jsp和servlet基础都不知道。 没有任何框架的话就是Servlet了,在Servlet在将参数放到request/session中 setAttribute和setParameter 这两个应该用第一个吧,记不清了,试试就知道了,然后在Servlet中用request.send???(记不清了,呵呵。。反正是用request不是response),然后再页面中直接用request.getAttribute("") 或是 request.getParameter("") request 是jsp的内置对象,在<% %>里面可以直接使用。 大哥这部分我实现了,我是想在我们写的action中往获取request,response从而向里面赋值 没有setParameter方法,只有getParamter方法,用来获取页面数据 求大哥哥,求教如何获取request,response,不是以参数形式传入的那种。 首先,说说SERVLET的创建吧,这你需要去了解SERVLET的生命周期过程。一个普通的类(对象),怎么就变成了SERVLET呢,并且你还得知道SERVLET有那些普通对象没有的特权,这是关键。如果你参看tomcat的源码,你会发现一个请求进来后,调用SERVLET的无参的构造器将其实例化,然后再调用init(ServletConfig)方法,才使得一个普通的对象变成了SERVLET,并且具有了SERVLETCONFIG,SERVLETCONTEXT的特权,大体是这样子的,如果你想了解更多,去查查,比如从调用无参构造器到init()方法之间发生了什么,参看量子理论的薛定谔之猫,还是很复杂的理论,你知道就行了。其次, 你不需要获取request,response对象,说具体点,是web container(比如TOMCAT)监听到有请求进来,它会为这个请求创建request,response对象并且创建一个线程,你servlet中拿到的已经是实例化的对象了(HttpServletRequest,HttpServletResponse都是接口类型,但是它们在SERVLET中早已经指向了具体的实现类,而你不必关心实现类是什么,叫什么名字,怎么写的,因为WEB CONTAINBER都给你做了,你面对的就是这两个接口类型),直接用就好了,所以说WEB Container为我们做了很多事情。最后注明:上述学习心得来自HEAD FIRST SERVLET & JSP 2ND一书中,我看的是英文原版,书上如是说,我实践并总结了一下。 Servlet开发必须实现javax.servlet.Servlet接口:import java.io.IOException;import javax.servlet.Servlet;import javax.servlet.ServletConfig;import javax.servlet.ServletException;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;import javax.servlet.http.HttpServletRequest;public class HelloWorldServlet implements Servlet { @Override public void destroy() { } @Override public ServletConfig getServletConfig() { return null; } @Override public String getServletInfo() { return null; } @Override public void init(ServletConfig arg0) throws ServletException { } @Override public void service(ServletRequest req, ServletResponse resp) throws ServletException, IOException { HttpServletRequest [color=#FF0000]request = (HttpServletRequest) req; HttpServletRequest response = (HttpServletRequest) resp; }}[/color] struts2.1.6拦截器里面doFilter方法中的代码是这样的,相信这个应该对你有所帮助。//强制类型转换,得到request response对象HttpServletRequest request = (HttpServletRequest) req; HttpServletResponse response = (HttpServletResponse) res;prepare.createActionContext(request, response);//设置上下文 这里面其实是用xwork里面的ActionContext,至于xwork怎么实现进行的.可以去看下源码。 SSH框架开发案例(文件中转站) 重复提交的问题 java的一个语法问题 菜鸟求助 关于Oracle中 sequence 的问题 一个javamail的奇怪问题 JSP网站如何发布? forward和sendredirect有什么区别啊? ResultSet关闭问题 ActiveMQ监控队列状态报javax.management.InstanceNotFoundException java 字符编码转码问题 Extjs4.0 treepanel eclipse中安装jad插件后报错,急求答案
后台继承httpservlet的do方法里面貌似直接有request,response参数的;
至于前台
request、response都是直接可以用的
如:
<%=request.getparameter("paramName")%>还是上学的时候用到的,呵呵
实在不行 你可以跳转的时候 作为url里的参数传出
request.getRequestDispatcher("demo.jsp").forward(request, response);
把数据写到request中。
public class xxxServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doGet(request, response);
}
}
数据可以通过request参数获取,doGet处理get请求,doPost处理post请求。
在web.xml里边配置你的servlet处理类
如:
<%=request.getparameter("paramName")%>
你既然要模仿struts2,那么首先你得设计并且实现自己的拦截器。当拦截到什么什么样的请求后,根据请求的配置将请求的值赋给相应的javabean 然后处理完请求后 读取result response到相应的页面。
setAttribute和setParameter 这两个应该用第一个吧,记不清了,试试就知道了,然后在Servlet中用request.send???(记不清了,呵呵。。反正是用request不是response),然后再页面中直接用request.getAttribute("") 或是 request.getParameter("")
request 是jsp的内置对象,在<% %>里面可以直接使用。
大哥这部分我实现了,我是想在我们写的action中往获取request,response从而向里面赋值
如果你参看tomcat的源码,你会发现一个请求进来后,调用SERVLET的无参的构造器将其实例化,然后再调用init(ServletConfig)方法,才使得一个普通的对象变成了SERVLET,并且具有了SERVLETCONFIG,SERVLETCONTEXT的特权,大体是这样子的,如果你想了解更多,去查查,比如从调用无参构造器到init()方法之间发生了什么,参看量子理论的薛定谔之猫,还是很复杂的理论,你知道就行了。
其次, 你不需要获取request,response对象,说具体点,是web container(比如TOMCAT)监听到有请求进来,它会为这个请求创建request,response对象并且创建一个线程,你servlet中拿到的已经是实例化的对象了(HttpServletRequest,HttpServletResponse都是接口类型,但是它们在SERVLET中早已经指向了具体的实现类,而你不必关心实现类是什么,叫什么名字,怎么写的,因为WEB CONTAINBER都给你做了,你面对的就是这两个接口类型),直接用就好了,所以说WEB Container为我们做了很多事情。
最后注明:上述学习心得来自HEAD FIRST SERVLET & JSP 2ND一书中,我看的是英文原版,书上如是说,我实践并总结了一下。
import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;public class HelloWorldServlet implements Servlet { @Override
public void destroy() { } @Override
public ServletConfig getServletConfig() { return null;
} @Override
public String getServletInfo() { return null;
} @Override
public void init(ServletConfig arg0) throws ServletException { } @Override
public void service(ServletRequest req, ServletResponse resp)
throws ServletException, IOException {
HttpServletRequest [color=#FF0000]request = (HttpServletRequest) req;
HttpServletRequest response = (HttpServletRequest) resp;
}}[/color]
HttpServletRequest request = (HttpServletRequest) req;
HttpServletResponse response = (HttpServletResponse) res;
prepare.createActionContext(request, response);//设置上下文 这里面其实是用xwork里面的ActionContext,至于xwork怎么实现进行的.可以去看下源码。