- 浏览: 1990057 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (509)
- JavaEE (122)
- Oracle数据库 (29)
- JavaScript (37)
- SAP (5)
- MySql数据库 (7)
- JavaSE (4)
- Ajax (1)
- jQuery (13)
- SSH框架 (36)
- Web Service (10)
- JSF框架 (2)
- JBPM (0)
- ireport报表 (2)
- ibatis (5)
- Hibernate (31)
- JSP (11)
- Tomcat 服务器 (20)
- Other (19)
- JavaWeb (4)
- Maven (11)
- OSWorkFlow (10)
- HTML (13)
- Exception汇总 (7)
- SVN (2)
- 笑话 (1)
- JSTL (1)
- WebSphere Message Broker (13)
- ANT命令 (3)
- Liunx (12)
- Struts2 (26)
- Eclipse (6)
- DOS (3)
- Flex (11)
- WebSphere (1)
- 开发常用工具 (3)
- Junit (2)
- EJB (4)
- Struts1.2 (2)
- Jboss (1)
- Android (2)
- Java框架源码解析 (1)
- Spring (4)
- MyBatis (6)
- SpringMVC (4)
- Jetty (2)
- 数据库表设计 (1)
- SSO (4)
最新评论
-
贝塔ZQ:
也可以试试PageOffice插件,觉得更简单点
Jxl操作Excel设置背景、字体颜色、对齐方式、列的宽度 -
jia1208:
...
Could not publish server configuration for Tomcat v6.0 Server at localhost. -
u011274527:
赞
java.io.EOFException java.io.ObjectInputStream$PeekInputStream.readFully 错误 -
旭旭小牛啦:
怎么没哟了,继续赛
jQuery 选择器 -
wzw3919:
100行会报空指针
Java 解压缩zip文件
直接贴后台代码:
package com.struts2.action; import java.util.HashMap; import java.util.Locale; import java.util.Map; import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionSupport; import com.struts2.localeutil.LocaleUtil; import com.struts2.model.User; import com.sun.org.apache.xml.internal.utils.LocaleUtility; public class UserAction extends ActionSupport{ private static final long serialVersionUID = -1905893698092880349L; private final Map<String,Locale> localMap = new HashMap<String, Locale>(); private String id; private String username; private String password; private String language; private Map<String, Locale> langugeMap; public UserAction(){ this.langugeMap = new HashMap<String, Locale>(); this.setLangugeMap(getcurrLocalMapMethod()); } public Map<String, Locale> getLangugeMap() { return langugeMap; } public void setLangugeMap(Map<String, Locale> langugeMap) { this.langugeMap = langugeMap; } public String getLanguage() { return language; } public void setLanguage(String language) { this.language = language; } public String getId() { return id; } public void setId(String id) { this.id = id; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public Map<String,Locale> getcurrLocalMapMethod(){ localMap.put("简体中文", Locale.CHINA); localMap.put("English", Locale.ENGLISH); localMap.put("繁体中文", Locale.TAIWAN); localMap.put("日本の言語",Locale.JAPAN); localMap.put("Americanese English", Locale.US); return localMap; } /** * 登陆方法; * @return String; */ @SuppressWarnings("unchecked") public String login(){ this.id = "1001"; //判断; if(this.username.equals("zhouhaitao") && this.password.equals("123456")){ //ActionContext.getContext.相当于request.setAttribuet()一样; ActionContext.getContext().put("id",id); //保存到session当中; ActionContext.getContext().getSession().put("name", this.username+"登陆成功!"); return "yes"; }else{ return "no"; } } /** * 注册方法; */ public String regester(){ System.out.println("调用注册的方法.开始注册!"); System.out.println(this.id); System.out.println(this.username); System.out.println(this.password); ActionContext.getContext().put("name",this.username+"注册成功!"); return "yes"; } /** * 获取选择的语言; * @return */ public String getSelectLanguge(){ System.out.println("获取的语言是:"+this.language); String[] str= this.language.split("_"); Locale locale2 = null; Locale locale1 = null; if(str.length>2){ locale1 = LocaleUtility.langToLocale(this.language.split("_")[1]); locale2 = LocaleUtil.toLocale(this.language.split("_")[1]); }else{ locale1 = LocaleUtility.langToLocale(this.language.split("_")[0]); locale2 = LocaleUtil.toLocale(this.language.split("_")[0]); } System.out.println("1通过转换后的语言是:"+locale1.getLanguage()); System.out.println("2通过转换后的语言是:"+locale2.getLanguage()); return "index"; } }
DemoAction :
package com.struts2.action; import java.util.ArrayList; import java.util.List; import java.util.Map; import org.apache.struts2.ServletActionContext; import com.opensymphony.xwork2.ActionSupport; import com.struts2.model.User; public class DemoAction extends ActionSupport{ private static final long serialVersionUID = 6021481463050081906L; private List<String> stuList; private List<User> userList; private Map<String, User> userMap; private int sid; private String sname; private String address; @SuppressWarnings("unchecked") public String displayStudentList(){ stuList = new ArrayList<String>(); stuList.add("ZhouHaiTao"); stuList.add("LiuJing"); stuList.add("ZengPing"); stuList.add("ZhangSan"); ServletActionContext.getContext().getSession().put("stuList", stuList); ServletActionContext.getContext().put("selectFruit", sname); return "display"; } public String onClickUrl(){ ServletActionContext.getContext().put("urlMsg", "你单击了超链接,提交至Action中!"); return "display"; } public List<User> getUserList() { return userList; } public void setUserList(List<User> userList) { this.userList = userList; } public Map<String, User> getUserMap() { return userMap; } public void setUserMap(Map<String, User> userMap) { this.userMap = userMap; } public List<String> getStuList() { return stuList; } public void setStuList(List<String> stuList) { this.stuList = stuList; } public int getSid() { return sid; } public void setSid(int sid) { this.sid = sid; } public String getSname() { return sname; } public void setSname(String sname) { this.sname = sname; } public String getAddress() { return address; } public void setAddress(String address) { this.address = address; } }
直接贴前台代码:
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <%@ taglib prefix="s" uri="/struts-tags"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Struts2标签使用</title> <script type="text/javascript"> function commitToDemoAction(){ document.getElementById("myform").action="demo!displayStudentList.action"; } </script> </head> <body> <center> <h1>Struts2 标签使用大全</h1> </center> <s:form id="myform" name="myform" method="post" theme="simple"> <b>标签一(s:submit的标签使用)</b><br/> <s:submit id="bid" onclick="commitToDemoAction()" value="提交到Action中获取数据" cssStyle="border:1px solid blue"/><br/><br/> <b>标签二(s:iterator的标签使用)</b><br/> 显示结果如下: <br/> <s:iterator id="stuid" status="sta" value="stuList"> ${stuid } </s:iterator> <br/><br/> <b>标签三(s:if..s:else的标签使用)</b><br/> <s:if test="sid == 10"> sid等于10 </s:if> <s:else> sid不等于10 </s:else> <br/><br/> <b>标签四(s:a的标签使用)</b><br/> <s:a id="sid" cssStyle="color:blue" label="超链接" value="100" href="/Struts2/demo/demo!onClickUrl.action">Struts2超级接的使用</s:a> <font color="red">${request.urlMsg }</font> <br/><br/> <b>标签五(s:bean的标签使用)直接取得后台User对象的值</b><br/> <s:bean name="com.struts2.model.User" id="sbean" /> <table id="tid" border="1px" style="color:blue;width:400px" cellpadding="0px" cellspacing="0px"> <tr> <td>${sbean.userId } </td> <td>${sbean.userName }</td> <td>${sbean.userAge }</td> <td>${sbean.userAddress }</td> </tr> </table> <br/><br/> <b>标签六(s:checkbox的标签使用)struts2的checkbox标签在使用的时候需要注意它的两个属性。value和fieldValue,在其他的标签中value是真实值。而在checkbox中,value如果为true,就表示复选框被选中;如果为false就表示不被选中。fieldValue才是此复选框对应的真实的值</b><br/> 苹果:<s:checkbox fieldValue="苹果" value="false" name="sname"/> 鸭梨:<s:checkbox fieldValue="鸭梨" value="false" name="sname"/> 香蕉: <s:checkbox fieldValue="香蕉" value="false" name="sname"/> 葡萄: <s:checkbox fieldValue="葡萄" value="true" name="sname"/> <br/> 你选择的水果是: <font color="red">${request.selectFruit }</font> </s:form> </body> </html>
Struts2.xml配置文件:
<?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> <!-- 可以引用其他的配置文件 --> <include file="struts-default.xml"></include> <!-- name代表包的名称 extends代表引用其他的默认文件,namespace代表命名空间,可选--> <package name="com.struts2.action" extends="struts-default"> <!-- 公用的结果 --> <global-results> <result name="index">/index.jsp</result> </global-results> <!-- name 代表action名称,与struts1的path类似 --> <action name="user" class="com.struts2.action.UserAction"> <result name="yes" type="dispatcher">success.jsp</result> <result name="no" type="redirect">failure.jsp</result> </action> <action name="demo" class="com.struts2.action.DemoAction"> <result name="display" type="dispatcher">/demo/displayData.jsp</result> </action> </package> </struts>
发表评论
-
java.lang.NoSuchMethodException: No such accessible method: addForwardConfig() o
2012-06-07 00:07 3378经常有人在配置Struts1.2的struts-conf ... -
Unable to load configuration. - action - file:/C:/Documents%20and%
2011-12-12 21:34 8035Unable to load configuration. - ... -
Struts2+jQuery+Ajax
2011-11-29 11:05 2926一个简单的Json实例,采用Struts2 + jQuery1 ... -
Struts2 使用”#“获取数据 和不使用“#”号的区别。
2011-09-29 11:43 1221最近使用struts2 做项目时, 如果在后台可以使用两 ... -
struts2 标签 s:optiontransferselect左右下拉列表的使用。
2011-09-24 01:08 1930最近做项目,需要用到struts2中的标签, 自己便研 ... -
Struts2 标签出现'dojo' 未定义 解决方案
2011-09-23 23:09 1366我在做项目用到了struts2中的 s:optiont ... -
struts2几种result type探究
2011-09-22 02:18 1308可以在struts2-core-{version}.jar ... -
Struts2 自定义拦截器,怎么实现先于 action 执行
2011-09-08 00:31 1418在Action前用拦截器是直接return act.invok ... -
struts2自定义拦截器,模拟登陆权限验证
2011-09-08 00:27 2260struts2自定义拦截器一——模拟登陆权限验证 1、h ... -
JSP的Filter对struts2 中的 action拦截不起作用的解决方案.
2011-09-08 00:22 2190好像在web.xml配置filter只能实现对jsp的拦截 ... -
从数据库中获取国际化资源文件的key,然后通过Struts2的标签显示
2011-09-04 13:34 3330首先在mySql数据库中建 ... -
Parse Error at line 2 column 15: Document is invalid: no grammar found.
2011-09-03 00:09 2210今天部署把项目部署到tomcat上面时,发现了一个错误,. ... -
java.lang.NoClassDefFoundError: org/apache/commons/io/output/DeferredFileOutputS
2011-08-29 01:02 4042java.lang.NoClassDefFoundError: ... -
java.lang.RuntimeException: Unable to load bean org.apache.struts2.dispatcher.mu
2011-08-29 00:32 1414最近做文件上传的功能时,报如下错误..是因为少了一个jar包的 ... -
Struts2 标记判断List集合和Map集合元素的大小
2011-08-25 20:34 4251比如判断一个list集合中的元素等于或小于0, <!- ... -
Struts2 <s:if> 标签的使用
2011-08-25 16:31 1070标签用法如下: test中是用来,放表达式,不能嵌套EL表达 ... -
Struts2 Caused by: java.lang.IllegalArgumentException: argument type mismatch
2011-08-15 09:27 8850前台页面文本框 name 绑定的属性,与后台属性不一致. ... -
Struts2+JQuery+Json登陆实例
2011-07-17 23:21 6320在搭建之前.. 首先,需要准备struts2.0框架的5个核心 ... -
java.lang.NoSuchMethodError: com.opensymphony.xwork2.ActionContext.get(Ljava/lan
2011-07-16 18:47 5532java.lang.NoSuchMethodError: ... -
Struts2通过使用ActionContext类获取request和response对象
2011-07-16 18:23 2849使用ActionContext类这种方法比较简单,我们可以通过 ...
相关推荐
在压缩包中的"example"文件可能包含了一个或多个使用Struts2标签的实际示例,可以参考这些示例来理解和学习Struts2标签的用法。通过实践,你会更好地掌握这些标签的功能和用法,从而在开发过程中更加得心应手。
下面,我们将详细介绍 Struts2 标签库的使用。 4.1 通用标签 通用标签用来控制页面的执行过程,并从 Action 或值堆栈中取得数据。这些标签可以分为控制标签、数据标签和其他标签。 控制标签用来控制程序的执行,...
`struts2标签用法.doc`和`标签详解`文件可能包含更深入的标签用法和实例,例如如何使用`s:form`创建表单,如何利用`s:action`执行Action,以及如何使用`s:debug`标签进行调试等。 5. **Struts2标签的高级用法** -...
总的来说,这个教程应该会涵盖Struts2的基本概念、配置方式、标签的使用技巧,以及EXT3.0在前端展示中的应用,旨在帮助开发者快速掌握Struts2框架,并能有效利用其特性构建高效的企业级应用。通过学习和实践,你可以...
在这个基于Struts2的自定义分页标签的实践中,我们将深入探讨如何创建、配置和使用自定义标签来实现数据的分页展示,同时与Oracle数据库进行交互。 首先,理解分页的基本概念至关重要。分页是将大量数据分成小块,...
本资源详细介绍了如何在Struts2中自定义分页标签,使得开发过程更加便捷。 在Struts2中,分页通常涉及到以下几个关键步骤: 1. **创建Action类**:首先,你需要创建一个Action类,该类将处理用户的请求,包括获取...
Struts2 标签使用方法 Struts2 标签库提供了主题、模板支持,极大地简化了视图页面的编写,而且,Struts2 的主题、模板都提供了很好的扩展性。Struts2 允许在页面中使用自定义组件,这完全能满足项目中页面显示复杂...
本示例将深入探讨Struts2的表单标签使用方法,帮助开发者更好地理解和应用这些标签。 首先,我们来了解一些基本概念。在Struts2中,表单标签通常与Action类中的属性相对应,用于在JSP页面上创建HTML表单元素。例如...
在Struts2中,自定义标签是提高代码可读性和可维护性的重要工具。本文将深入探讨Struts2自定义标签的实现机制、优点以及如何在实际项目中进行应用。 一、Struts2自定义标签的概念 自定义标签是JSP的一种扩展,允许...
然而,在使用Struts 2标签时,需要注意一些重要的事项。 首先,在使用Struts 2标签之前,需要在web.xml文件中配置Struts 2的核心Filter。这是因为Struts 2的核心Filter是Struts 2框架的入口点,负责处理所有的请求...
Struts2标签库的组成 Struts2框架的标签库可以分为以下三类: 用户界面标签(UI标签):主要用来生成HTML元素的标签。 表单标签:主要用于生成HTML页面的FORM元素,以及普通表单元素的标签。 非表单标签:主要用于生成...
下面将详细阐述Struts2标签库的使用、功能和优势。 1. **Struts2标签库介绍** Struts2框架中的标签库是基于JSP标准标签库(JSTL)的扩展,它提供了一系列与动作、结果、表单和国际化相关的标签。这些标签能够帮助...
本篇文章主要关注Struts2中的常用标签,这些标签大大简化了Web开发中的一些常见任务。 首先,我们要明白Struts2标签库与Struts1.x的不同之处。在Struts1.x中,标签库按照功能划分为HTML、Tiles、Logic和Bean等几个...
这篇博客将深入探讨Struts2中的表单标签及其使用方法。 首先,我们需要理解Struts2表单标签的基本结构。通常,一个表单标签以`<s:form>`开头,并以`</s:form>`结束。它允许我们指定表单的属性,如`action`(表单...
除了预定义的标签外,Struts2还允许开发者自定义标签,这需要创建一个继承自`org.apache.struts2.views.jsp.TagSupport`的Java类,并在JSP页面中使用`<s:tag>`进行调用。 五、标签库的扩展性 Struts2的标签库不仅...
Struts2 标签库及国际化的使用案例 Struts2 框架提供了强大的标签库和国际化功能,本实验旨在掌握 Struts 2 标签库和国际化功能的使用,并实现用户注册页面的国际化显示。 一、Struts2 标签库 Struts2 框架提供了...
在Struts2标签库中,还有许多其他的标签,如、、等,每个标签都有其特定的使用场景和应用。 Struts2标签库提供了一系列的标签,帮助开发者快速构建Web应用程序,并提高了开发效率。但是,为了充分发挥Struts2标签库...
Struts标签库提供了一组预定义的JSP标签,这些标签有助于开发者更有效地处理常见的Web开发任务,如表单处理、数据展示、逻辑控制等。在本文中,我们将深入探讨其中的Bean Tags、HTML Tags和Logic Tags。 1. **Bean ...