struts2 requestaware框架,jsp中request.setAttribute("list",list),在action中怎样取值啊?

2008年4月 Java大版内专家分月排行榜第一
本帖子已过去太久远了,不再提供回复功能。17:30 提问
我是新手,想在jsp页面显示数据库表单 ,求帮助。。
这是action
import java.util.L
import com.opensymphony.xwork2.ActionS
import DAO.CustomerI
import ADO.C
import javax.servlet.http.HttpServletR
import org.apache.struts2.ServletActionC
public class customerList extends ActionSupport{
private static final long serialVersionUID = 1L;
private static List&Customer& customer1;
private CustomerI
public CustomerInfo getCustomerinfo() {
public void setCustomerinfo(CustomerInfo customerinfo) {
this.customerinfo =
public List&Customer& getCustomer() {
return customer1;
public void setCustomer(List&Customer& customer) {
customerList.customer1 =
public String execute() throws Exception{
HttpServletRequest request=ServletActionContext.getRequest();
customer1= CustomerInfo.querycustomer();
request.setAttribute("customer",customer1);
return SUCCESS;
public static void main(String[] args) {
System.out.println(CustomerInfo.querycustomer());
这是操作方法
public static List querycustomer()
List list = new ArrayList();
Configuration cfg = new Configuration().configure();
SessionFactory sf = cfg.buildSessionFactory();
Session session = sf.openSession();
Transaction tx = session.beginTransaction();
Query query = session.createQuery("from Customer");
List&?& list1 = query.list();
// 序列化函数
Iterator&?& it = list1.iterator(); //迭代
while (it.hasNext())
customer = (Customer)it.next();
//System.out.println(customer.getUsername() + "
" + customer.getPassword()+ ""
tx.commit();
session.close();
sf.close();
package ADO;
public class Customer {
public String getId() {
public void setId(String id) {
public String getUsername() {
public void setUsername(String username) {
this.username =
public String getPassword() {
public void setPassword(String password) {
this.password =
&%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%&
&%@ taglib uri="/struts-tags" prefix="s"%&
&%@page import="DAO.CustomerInfo"%&
&%@page import="java.util.List"%&
&%@page import="ADO.Customer"%&
&%@page import="java.util.ArrayList"%&
&!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"&
&title&My JSP 'welcome.jsp' starting page&/title&
&%=request.getAttribute("customer") %&
&/s:iterator&
按赞数排序
其他相似问题问:jsp中下拉框的text如何传值?jsp中下拉框的text如何传值?getParameterValues取得是value,text怎么取呢?答:jsp在是在执行的,jsp容器完成处理后,发给前端的是html。浏览器接到html以后,解释展示,将text展示出来,当你提交是,浏览器只将value上传器;上传到...
问:如何通过jsp向struts的action传递数据,并且动态的根据所传递的数据... 再展现在jsp中,当点击相信的标题时候,会向action专递一个值,从而利 答:你这个不是jsp 传递给action,而是通过从数据库读取了,然后再显示到页面上。典型的MVC。你可以写2个 作,一个是写,也就是存。另一个是取。首先是你 ,也就...
问:把jsp页面整个列表作为list对象传给Action的探讨近日用struts框架保存列表时遇到问题,仿佛列表无法作为个对象直接传给Action...答:想不到还能这样用,妙极了
问:JSP页面中向action中的方法传递参数_ 可以到page请问如何在jsp页面中 (&在这里把这个page参数 传递给 答:直接在JSP上调用/Dao的方法, 很少见有人这样写Struts的。在action中定义翻页方法,要翻到哪页,当参数 传递给这个方法
问:Jsp中Form标单提交数据给ActionForm从Action取出来是问号_爱...答:看看你的提交方式是post还是getpost般 情况比较少,get是用了iso-的编码格式传递的,所以有可能还得手动转下,建议你使用filter过滤器,过滤所有。...
问:dispatchaction中接收 jsp 传递的参数问题_ jsp页面向DispatchAction传递参数为何没用我用request.setAttribute或者直接 答:由jsp页面向Action传递参数至少要用session,当然如果反过来的话则可以用request.与你用什么Action作为父类无关.
问:使用struts时怎么从jsp重定向到action?如题,使用struts时怎么从jsp重定向到action?答:用(“*.action”);如果只是跳转,不用重定向,可以用jsp自己的标志&jsp:forward page=”*.action"/&希望能帮助你。
问:jsp向Action传输数据_ 我用的SSH框架写的,在一个jsp页面 想把users.name的值以参数形式传进 答:应该报的是jsp那个users.name中的users 不是action的空指针啊,你页面那个users是空的
问:jsp是什么格式?答:个开发人员眼中的JSP技术 JaServerTM Pages(JSP)技术为我们提供了种建立动态网页的简单方法,而且也简化了构造web程序的 。本文从个开发人员的角度对...
问:struts2中从jsp到action是如何传递参数的?_ extjs的jsp中:var url = "esf_querybyhql.action";这里用action配置中: 答:按Form传递,直接在Action中定义属性,和JSP页面的Form中的名称相同,就可以传递了
问:jsp中的参数如何传到另个jsp答:在form表单中做提交&form name="myform"action="checklogon.jsp"method="post"&&input type="text" name="name"/&&/form&或者使用a标记挂?来传参。...
问:action 掌握参数 传递的方法,即 前台JSP页面 如何向action的属性传递... 答:jsp中:action="xx.do?id=123"action中:request.getParameter("id");
问:jsp中接收参数我现在遇到个小问题。我在页面js中用" .location"这种形式去调用action的...答:参数的传递方式不要弄混了 .location的herf应该是“/XXX/XXX.jsp?flag=true”,这样才能参数
问:struts2 action 向jsp页面传递参数问题_ 成功转到yes.jsp }}还有就是怎么样在yes.jsp页面上得到上面Action A 中传下 答:以前用的是struts1.2 我一般是这样List&A& list = new ArrayList&A&()request.setAttribute("list", list); 在JSP中. &% List&A& lsit = (List&A&)request.getAttribute("list")
09-0109-0808-2808-29
10-0710-0810-0710-06
◇本站云标签struts2是什么?如何使用?-java教程-PHP中文网QQ群微信公众号struts2是什么?如何使用?一、struts2是什么  1.概念    2.struts2使用优势以及历史   二、搭建struts2框架  1.导包  (解压缩)struts2-blank.war就会看到    2.书写Action类public class HelloAction {public String hello(){
System.out.println(&hello world!&);
return &success&;
}View Code  3.书写src/struts.xml (记得加上dtd约束)&?xml version=&1.0& encoding=&UTF-8&?&&!DOCTYPE struts PUBLIC
&-//Apache Software Foundation//DTD Struts Configuration 2.3//EN&
&http://struts.apache.org/dtds/struts-2.3.dtd&&&struts&&package name=&hello& namespace=&/hello& extends=&struts-default& &&action name=&HelloAction& class=&cn.itheima.a_hello.HelloAction& method=&hello& &&result name=&success& type=&dispatcher& &/hello.jsp&/result&&/action&&/package&&/struts&View Code  4.将struts2核心过滤器配置到web.xml  filter-class记不住可以ctrl+shift+t 输入strutsPre来查找全类名
&!-- struts2核心过滤器 --&
&filter-name&struts2&/filter-name&
&filter-class&org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter&/filter-class&
&filter-mapping&
&filter-name&struts2&/filter-name&
&url-pattern&/*&/url-pattern&
&/filter-mapping&View Code  5.测试   三、struts2访问流程&struts2架构  1.struts2架构    2.Aop编程(面向切面)   四、配置详解  1.struts.xml配置详解&?xml version=&1.0& encoding=&UTF-8&?&&!DOCTYPE struts PUBLIC
&-//Apache Software Foundation//DTD Struts Configuration 2.3//EN&
&http://struts.apache.org/dtds/struts-2.3.dtd&&&struts&&!-- i18n:国际化. 解决post提交乱码 --&&constant name=&struts.i18n.encoding& value=&UTF-8&&&/constant&&!-- 指定反问action时的后缀名
http://localhost:8080/struts2_day01/hello/HelloAction.do--&&constant name=&struts.action.extension& value=&action&&&/constant&&!-- 指定struts2是否以开发模式运行
1.热加载主配置.(不需要重启即可生效)
2.提供更多错误信息输出,方便开发时的调试
--&&constant name=&struts.devMode& value=&true&&&/constant&&!-- package:将Action配置封装.就是可以在Package中配置很多action.
name属性: 给包起个名字,起到标识作用.随便起.不能其他包名重复.
namespace属性:给action的访问路径中定义一个命名空间
extends属性: 继承一个 指定包
abstract属性:包是否为抽象的; 标识性属性.标识该包不能独立运行.专门被继承
--&&package name=&hello& namespace=&/hello& extends=&struts-default& &&!-- action元素:配置action类
name属性: 决定了Action访问资源名.
class属性: action的完整类名
method属性: 指定调用Action中的哪个方法来处理请求
--&&action name=&HelloAction& class=&cn.itheima.a_hello.HelloAction& method=&hello& &&!-- result元素:结果配置
name属性: 标识结果处理的名称.与action方法的返回值对应.
type属性: 指定调用哪一个result类来处理结果,默认使用转发.
标签体:填写页面的相对路径--&&result name=&success& type=&dispatcher& &/hello.jsp&/result&&/action&&/package&&!-- 引入其他struts配置文件 --&&include file=&cn/itheima/b_dynamic/struts.xml&&&/include&&include file=&cn/itheima/c_default/struts.xml&&&/include&&/struts&View Code  2.struts2常量配置     2.1 struts2默认常量配置位置        2.2 修改struts2常量配置(方式先后也是加载顺序)      方式1:src/struts.xml(重要)
       &!-- i18n:国际化. 解决post提交乱码 --&
  &constant name=&struts.i18n.encoding& value=&UTF-8&&&/constant&      方式2:在src下创建struts.properties        struts.i18n.encoding=UTF8      方式3:在项目的web.xml中          &context-param&
        
&param-name&struts.i18n.encoding&/param-name&
        
&param-value&UTF-8&/param-value&
         &/context-param&      顺序:          2.3 常量配置
&!-- i18n:国际化. 解决post提交乱码 --&&constant name=&struts.i18n.encoding& value=&UTF-8&&&/constant&&!-- 指定反问action时的后缀名
http://localhost:8080/struts2_day01/hello/HelloAction.do--&&constant name=&struts.action.extension& value=&action&&&/constant&&!-- 指定struts2是否以开发模式运行
1.热加载主配置.(不需要重启即可生效)
2.提供更多错误信息输出,方便开发时的调试
--&&constant name=&struts.devMode& value=&true&&&/constant&View Code  3.struts2配置的进阶   <span style="color: #ff动态方法调用(重要)
&!-- 配置动态方法调用是否开启常量
默认是关闭的,需要开启
--&&constant name=&struts.enable.DynamicMethodInvocation& value=&true&&&/constant&方式一
&!-- 动态方法调用方式2:通配符方式
使用{1} 取出第一个星号通配的内容
--&&action name=&Demo1Action_*& class=&cn.itheima.b_dynamic.Demo1Action& method=&{1}& &&result name=&success& &/hello.jsp&/result&&/action&方式二    3.2struts2中的默认配置(了解)
&package name=&default& namespace=&/default& extends=&struts-default& &&!-- 找不到包下的action,会使用Demo2Action作为默认action处理请求 --&&default-action-ref name=&Demo2Action&&&/default-action-ref&&!-- method属性:execute
--&&!-- result的name属性:success
--&&!-- result的type属性:dispatcher 转发
--&&!-- class属性:com.opensymphony.xwork2.ActionSupport --&&action name=&Demo2Action&
&/hello.jsp&/result&&/action&&/package&View Code 五、action类详解  Action类的书写方式//方式1: 创建一个类.可以是POJO//POJO:不用继承任何父类.也不需要实现任何接口.//使struts2框架的代码侵入性更低.public class Demo3Action {
}方式一//方式2: 实现一个接口Action// 里面有execute方法,提供action方法的规范.// Action接口预置了一些字符串.可以在返回结果时使用.为了方便public class Demo4Action implements Action {
@Overridepublic String execute() throws Exception {
}方式二//方式3: 继承一个类.ActionSupport// 帮我们实现了 Validateable, ValidationAware, TextProvider, LocaleProvider .//如果我们需要用到这些接口的实现时,不需要自己来实现了.public class Demo5Action
extends ActionSupport{
}方式三 六、练习:客户列表  图解:    实现:public class CustomerAction extends ActionSupport {private CustomerService cs = new CustomerServiceImpl();
public String list() throws Exception {//1 接受参数String cust_name = ServletActionContext.getRequest().getParameter(&cust_name&);//2 创建离线查询对象DetachedCriteria dc =DetachedCriteria.forClass(Customer.class);//3 判断参数拼装条件if(StringUtils.isNotBlank(cust_name)){
dc.add(Restrictions.like(&cust_name&, &%&+cust_name+&%&));
}//4 调用Service将离线对象传递List&Customer& list = cs.getAll(dc);//5 将返回的list放入request域.转发到list.jsp显示ServletActionContext.getRequest().setAttribute(&list&, list);return &list&;
}Web层代码
public List&Customer& getAll(DetachedCriteria dc) {
Session session =
HibernateUtils.getCurrentSession();//打开事务Transaction tx = session.beginTransaction();
List&Customer& list = customerDao.getAll(dc);
//关闭事务
tx.commit();
}Service层代码
public List&Customer& getAll(DetachedCriteria dc) {//1 获得sessionSession session = HibernateUtils.getCurrentSession();//2 将离线对象关联到sessionCriteria c = dc.getExecutableCriteria(session);//3 执行查询并返回return c.list();
}Dao层代码以上就是struts2是什么?如何使用?的详细内容,更多请关注php中文网其它相关文章!共3篇50点赞收藏分享:.&猜你喜欢12345678910
PHP中文网:独家原创,永久免费的在线,php技术学习阵地!
All Rights Reserved | 皖B2-QQ群:关注微信公众号}

我要回帖

更多关于 struts1获取request 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信