- 浏览: 253085 次
- 性别:
- 来自: 湖南
文章分类
- 全部博客 (194)
- java (23)
- 数据结构和算法 (5)
- oracle (7)
- sql server (1)
- mysql (5)
- Ajax (5)
- JSTL (7)
- jsp (20)
- 组件 (11)
- C++可视化 (0)
- javascript (14)
- c/c++ (0)
- XML (6)
- 只是扩宽 (0)
- 设计模式 (3)
- 正则表达式 (3)
- 心情和感悟 (4)
- ACM (3)
- HTML/css (9)
- 软件破解 (2)
- spring (1)
- struts (15)
- hibernate (10)
- Servlet (2)
- sql (2)
- 面试题 (1)
- struts2 (22)
- Unix/Linux (0)
- javamail (1)
- svn (1)
- 异常 (3)
- EJB (3)
- jquery (2)
- android (1)
最新评论
-
lianlupengUestc:
From my testing (Struts2 versio ...
struts2 注解 -
yulongxiang:
非常感谢!!!!!!!
使用动态ActionForm(转)
1。默认action处理
2. 访问Web元素
a) Map类型
i. IoC
ii. 依赖Struts2
b) 原始类型
i. IoC
ii. 依赖Struts2
在jsp页面中这样可以取得
3.struts2和struts1在Action方面的区别:
struts2中 每个客户端访问都会new 一个新的Action
而struts1则是同一个Action,要考虑线程同步问题
4.简单参数验证addFieldError
在jsp中通过下面的这种方式来取得
5。包含
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> <struts> <constant name="struts.devMode" value="true" /> <package name="default" namespace="/" extends="struts-default"> <!--当找不到action则返回默认的action--!> <default-action-ref name="index"></default-action-ref> <action name="index"> <result>/default.jsp</result> </action> </package> </struts>
2. 访问Web元素
a) Map类型
i. IoC
ii. 依赖Struts2
b) 原始类型
i. IoC
ii. 依赖Struts2
import java.util.Map; import org.apache.struts2.interceptor.ApplicationAware; import org.apache.struts2.interceptor.RequestAware; import org.apache.struts2.interceptor.SessionAware; import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionSupport; public class LoginAction2 extends ActionSupport implements RequestAware,SessionAware, ApplicationAware { private Map<String, Object> request; private Map<String, Object> session; private Map<String, Object> application; //DI dependency injection //IoC inverse of control public String execute() { request.put("r1", "r1"); session.put("s1", "s1"); application.put("a1", "a1"); return SUCCESS; } @Override public void setRequest(Map<String, Object> request) { this.request = request; } @Override public void setSession(Map<String, Object> session) { this.session = session; } @Override public void setApplication(Map<String, Object> application) { this.application = application; } }
在jsp页面中这样可以取得
<?xml version="1.0" encoding="GB18030" ?> <%@ page language="java" contentType="text/html; charset=GB18030" pageEncoding="GB18030"%> <%@taglib uri="/struts-tags" prefix="s" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=GB18030" /> <title>Insert title here</title> </head> <body> User Login Success! <br /> <s:property value="#request.r1"/> | <%=request.getAttribute("r1") %> <br /> <s:property value="#session.s1"/> | <%=session.getAttribute("s1") %> <br /> <s:property value="#application.a1"/> | <%=application.getAttribute("a1") %> <br /> <s:property value="#attr.a1"/><br /> <s:property value="#attr.s1"/><br /> <s:property value="#attr.r1"/><br /> <s:debug></s:debug> <br /> </body> </html>
3.struts2和struts1在Action方面的区别:
struts2中 每个客户端访问都会new 一个新的Action
而struts1则是同一个Action,要考虑线程同步问题
4.简单参数验证addFieldError
import com.opensymphony.xwork2.ActionSupport; public class UserAction extends ActionSupport { private String name; public String add() { if(name == null || !name.equals("admin")) { this.addFieldError("name", "name is error"); this.addFieldError("name", "name is too long"); return ERROR; } return SUCCESS; } public String getName() { return name; } public void setName(String name) { this.name = name; } }
在jsp中通过下面的这种方式来取得
<body> User Add Error! <s:fielderror fieldName="name" theme="simple"/> <br /> <s:property value="errors.name[0]"/> <s:debug></s:debug> </body>
5。包含
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> <struts> <constant name="struts.devMode" value="true" /> <!-- 将login.xml包含在此处,相当于把login.xml中的配置直接复制到这里 --> <include file="login.xml" /> </struts>
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> <struts> <package name="login" extends="struts-default" namespace="/login"> <action name="login*" class="com.hugui.struts2.user.action.LoginAction{1}"> <result>/user_login_success.jsp</result> </action> </package> </struts>
发表评论
-
struts模式匹配
2010-09-09 23:25 852<?xml version="1.0&qu ... -
DispatchAction的使用
2010-09-09 11:02 1009DispatchAction的使用: * DispatchA ... -
org.apache.commons.beanutils.BeanUtils简介[转]
2010-09-09 08:54 875BeanUtils简读本 一 ... -
ForwardAction简介
2010-09-08 12:42 793<action-mappings> & ... -
struts异常处理
2010-09-08 12:26 1046struts-config.xml <global- ... -
struts对国际化的支持
2010-09-01 20:30 9381、struts国际化配置 *在struts-config. ... -
ActionForward的使用
2010-08-31 19:10 6671、了解redirect属性 <forward nam ... -
JSP Struts之HTML标签库详解(转)
2010-08-30 22:57 715Struts提供了五个标签库,即:HTML、Bean、Lo ... -
struts的一些组成部分(转)
2010-08-30 22:54 7221、ActionMapper和ActionMappin ... -
ActionMapping属性
2010-08-30 22:01 941属性描述 Path Action类的相对路径 Name ... -
ActionForm类型的自动转换和自定义转换器的实现
2010-08-30 17:48 1256测试ActionForm类型的自动转换 *boolean ... -
struts文件上传
2010-08-30 17:40 1008index.jsp: li>测试struts上传< ... -
使用动态ActionForm(转)
2010-08-30 14:46 3730在Struts框架中,ActionForm对象用来包装HTML ... -
MVC基本架构
2010-08-29 23:02 980MVC即Model-View-Controller(模型-视图 ...
相关推荐
1. **Action类与结果**:Struts 2 中的核心是 Action 类,它是处理用户请求的业务逻辑中心。Action 类执行相应的操作并返回一个结果,这个结果可以是一个视图(JSP、Freemarker 等)或者另一个 Action。结果配置在 ...
在初始化过程中,Struts2会解析`struts.xml`的内容,并基于这些配置创建Action和对应的处理逻辑。通过配置文件,你可以定义Action类、Action的执行方法、结果页面的跳转规则以及使用哪些拦截器。 总的来说,Struts2...
- **原理**:Struts2 的拦截器会在 Action 执行完成后,调用 getter 方法并将结果存储到适当的范围对象中。 **3.4 请求转发与重定向** - **转发**:Action 的 execute 方法返回一个字符串,根据这个字符串找到对应...
笔记中可能详细讲解了Struts2的配置文件,如struts.xml,它是整个应用的配置中心,定义了Action的映射、结果类型、拦截器栈等。在Action配置中,我们可以指定Action类、方法以及对应的URL路径,实现请求与业务的关联...
这个"struts2教程-学习笔记.zip"压缩包包含了关于Struts2的基础到高级的学习资源,帮助开发者深入理解并掌握该框架。 首先,"struts2教程.chm"可能是一个包含详细教程的Windows帮助文档,涵盖了Struts2的基础概念,...
通过阅读文章《Groovy学习笔记 Struts2集成--Groovy类作为Action》,你可以更深入地了解如何在实际项目中利用Groovy的特性来优化Struts2应用。提供的压缩包文件`struts2-groovy-plugin`可能包含了Struts2 Groovy插件...
缺点:版本较旧,相比新版本如Struts2,功能相对有限,且配置较为繁琐。 Hibernate的优缺点: 优点:简化了数据库操作,提高了开发效率,支持多种数据库,有强大的查询语言HQL和Criteria API。 缺点:性能可能略逊...
### Struts2 综合知识点解析 #### 一、Struts2 概述与历史背景 **Struts2** 是一款流行的 Java Web 开发框架,它遵循 MVC (Model-View-Controller) 设计模式,旨在简化 Web 应用程序的开发过程。Struts2 提供了一...
Struts-笔记-1很可能是对学习或研究Struts框架过程中的重要记录,它可能包含了初学者如何理解Struts的核心概念、架构以及如何在实际项目中应用的要点。 首先,Struts框架的起源和发展对于理解其重要性至关重要。...
2. **配置文件** - struts.xml是Struts2应用的核心配置文件,定义了Action的映射、结果页面和拦截器等。在这里,你需要配置Action的名称、对应的类以及结果页面。 3. **JSP页面** - 视图层由JSP页面负责,Struts2...
Struts2通过Action类处理用户的请求,并将结果转发到相应的视图。其核心组件包括FilterDispatcher(或现在的StrutsPrepareAndExecuteFilter)、Action、Result、Interceptor等。在SSH整合中,Struts2主要负责用户...
Struts2立体结构笔记主要涵盖了Struts2框架的基础知识、工作原理以及如何构建一个完整的立体化应用。Struts2作为一款强大的MVC(Model-View-Controller)框架,被广泛应用于Java Web开发中,它提供了丰富的特性来...
13. ** strut2四天笔记**:这份学习笔记可能涵盖了以上所有知识点,包括如何创建Action,配置struts.xml,使用OGNL表达式,处理异常,以及实践中的各种技巧和最佳实践。 在四天的学习过程中,你应该通过实践和理解...
本笔记将全面总结Struts2的核心概念、主要功能以及实际开发中的应用。 一、Struts2概述 Struts2是Apache软件基金会下的一个开源项目,它继承了Struts1的优点并解决了其存在的问题,如性能和灵活性。Struts2的核心是...
2. **Package**:包是Struts2中的一个关键概念,用于组织相关的Action和结果(Result)。包可以继承其他包,从而实现配置的复用和分层。`package`标签的属性包括name、extends、namespace等,其中,namespace用于...
本文将深入探讨Struts2的核心概念,包括Action、Result、配置文件、OGNL与ValueStack、Tags以及项目中的关键实践。 **一、Action** Action是Struts2中处理业务逻辑的核心组件,它是实现了`...
### Struts2_Action 学习笔记与通配符配置详解 #### 一、Struts2简介及简单配置 Struts2是一个基于Java EE平台的开源Web应用框架,它继承了Struts1的优点,并在此基础上进行了大量的改进。Struts2的核心功能之一是...
### Struts2学习笔记之文件上传与Ajax开发 #### Struts2文件上传 **文件上传简介** 文件上传是Web应用中常见的功能之一,Struts2框架内置了对文件上传的支持,使得开发者能够轻松地实现这一功能。为了确保文件...
01 Struts2-Action 5 一、 Struts作用: 5 二、 搭建Struts2的运行环境: 5 三、 Namespace 6 四、 标签 6 五、 Action 6 六、 路径问题的说明 8 七、 Action的动态调用方法 8 八、 Action通配符(wildcard)的配置 9 ...
在Struts2中,Action是业务逻辑的主要承载者,负责处理来自用户的请求,并决定下一步的动作。开发者可以通过继承自`ActionSupport`类来创建自己的Action类,或者使用注解的方式定义Action。Action类通常包含以下元素...