4、普通属性
public String execute(){
username = "zhangsan";
password = "123";
}
<s:property value="username"/><br>
<s:property value="password"/><br>
5、自定义对象
public String execute(){
userInfo = new UserInfo();
userInfo.setUsername("hhh");
userInfo.setPassword("111");
}
<s:property value="userInfo.username"/><br>
<s:property value="userInfo.password"/><br>
6、List(普通属性)
public String execute(){
list = new ArrayList<String>();
list.add("aaa");
list.add("bbb");
list.add("ccc");
}
<s:iterator value="list" var="var">
<s:property value="var"/><br>
</s:iterator>
或者:
<s:iterator value="list">
<s:property/><br>
</s:iterator>
6、List(自定义对象属性)
public String execute(){
list = new ArrayList<UserInfo>();
UserInfo userInfo = new UserInfo();
userInfo.setUsername("u1");
userInfo.setPassword("p1");
userInfo.setRoleInfo(new RoleInfo("r1"));
list.add(userInfo);
userInfo = new UserInfo();
userInfo.setUsername("u2");
userInfo.setPassword("p2");
userInfo.setRoleInfo(new RoleInfo("r2"));
list.add(userInfo);
}
<s:iterator value="list" var="var">
<s:property value="#var.username"/>
<s:property value="#var.password"/>
<s:property value="#var.roleInfo.rolename"/><br>
</s:iterator>
或者:
<s:iterator value="list">
<s:property value="username"/>
<s:property value="password"/>
<s:property value="roleInfo.rolename"/><br>
</s:iterator>
7、数组(普通属性)
public String execute(){
strs = new String[2];
strs[0] = "as";
strs[1] = "asd";
}
<s:iterator value="strs">
<s:property/><br>
</s:iterator>
或者:
<s:iterator value="strs" var="var">
<s:property value="var"/><br>
</s:iterator>
8、数组(自定义对象属性)
public String execute(){
strs = new UserInfo[2];
UserInfo userInfo = new UserInfo();
userInfo.setUsername("u11");
userInfo.setPassword("11");
strs[0] = userInfo;
userInfo = new UserInfo();
userInfo.setUsername("u22");
userInfo.setPassword("22");
strs[1] = userInfo;
}
<s:iterator value="strs">
<s:property value="username"/>
<s:property value="password"/><br>
</s:iterator>
或者:
<s:iterator value="strs" var="var">
<s:property value="#var.username"/>
<s:property value="#var.password"/><br>
</s:iterator>
8、数组(自定义对象属性)
public String execute(){
strs = new UserInfo[2];
UserInfo userInfo = new UserInfo();
userInfo.setUsername("u11");
userInfo.setPassword("11");
userInfo.setRoleInfo(new RoleInfo("r11"));
strs[0] = userInfo;
userInfo = new UserInfo();
userInfo.setUsername("u22");
userInfo.setPassword("22");
userInfo.setRoleInfo(new RoleInfo("r22"));
strs[1] = userInfo;
}
<s:iterator value="strs" var="var">
<s:property value="#var.username"/>
<s:property value="#var.password"/>
<s:property value="#var.roleInfo.rolename"/><br>
</s:iterator>
或者:
<s:iterator value="strs">
<s:property value="username"/>
<s:property value="password"/>
<s:property value="roleInfo.rolename"/><br>
</s:iterator>
8、Map(普通属性)
public String execute(){
map = new HashMap<String,String>();
map.put("k1", "v1");
map.put("k2", "v2");
}
<s:iterator value="map" var="var">
<s:property value="#var.key"/>
<s:property value="#var.value"/><br>
</s:iterator>
或者:
<s:iterator value="map">
<s:property value="key"/>
<s:property value="value"/><br>
</s:iterator>
8、Map(自定义对象属性)
public String execute(){
map = new HashMap<String,UserInfo>();
UserInfo userInfo = new UserInfo();
userInfo.setUsername("u1");
userInfo.setPassword("p1");
userInfo.setRoleInfo(new RoleInfo("r1"));
map.put("k1", userInfo);
userInfo = new UserInfo();
userInfo.setUsername("u2");
userInfo.setPassword("p2");
userInfo.setRoleInfo(new RoleInfo("r2"));
map.put("k2", userInfo);
}
<s:iterator value="map" var="var">
<s:property value="#var.key"/>
<s:property value="#var.value.username"/>
<s:property value="#var.value.password"/>
<s:property value="#var.value.roleInfo.rolename"/><br>
</s:iterator>
或者
<s:iterator value="map">
<s:property value="key"/>
<s:property value="value.username"/>
<s:property value="value.password"/>
<s:property value="value.roleInfo.rolename"/><br>
</s:iterator>
8、Map嵌套Map(自定义对象属性)
public String execute(){
map = new TreeMap<String,Map<String,UserInfo>>();
Map<String,UserInfo> innerMap = new TreeMap<String,UserInfo>();
UserInfo userInfo = new UserInfo();
userInfo.setUsername("u1");
userInfo.setPassword("p1");
userInfo.setRoleInfo(new RoleInfo("r1"));
userInfo = new UserInfo();
userInfo.setUsername("u11");
userInfo.setPassword("p11");
userInfo.setRoleInfo(new RoleInfo("r11"));
innerMap.put("k1", userInfo);
innerMap.put("k11", userInfo);
map.put("key1", innerMap);
//////////////////////////
innerMap = new TreeMap<String,UserInfo>();
userInfo = new UserInfo();
userInfo.setUsername("u2");
userInfo.setPassword("p2");
userInfo.setRoleInfo(new RoleInfo("r2"));
userInfo = new UserInfo();
userInfo.setUsername("u22");
userInfo.setPassword("p22");
userInfo.setRoleInfo(new RoleInfo("r22"));
innerMap.put("k2", userInfo);
innerMap.put("k22", userInfo);
map.put("key2", innerMap);
}
<s:iterator value="map" var="var">
<s:iterator value="value">
<s:property value="#var.key"/>
<s:property value="key"/>
<s:property value="value.username"/>
<s:property value="value.password"/>
<s:property value="value.roleInfo.rolename"/><br>
</s:iterator>
</s:iterator>
分享到:
相关推荐
2. **logic标签库** - `logic:equal`、`logic:notEqual`、`logic:greaterThan`等标签提供了条件判断功能,可以替代JSTL中的条件语句。 - `logic:iterate`用于循环迭代集合,类似于JSTL的`c:forEach`。 - `logic:...
总结,Struts2标签库大大简化了JSP页面的编写,提高了代码的可读性和维护性。通过熟练掌握这些标签,开发者能更好地利用Struts2框架构建高效、稳定的Web应用。学习和理解Struts2标签库详解文档,对于提升Java Web...
### Struts2标签库详解 #### 一、Struts2标签库简介 Struts2框架是一种基于MVC设计模式的企业级应用开发框架,它能够帮助开发者构建高效且可维护的Web应用程序。Struts2框架内置了一个强大的标签库,这些标签不仅...
在Struts2框架中,标签库是一系列预定义的JSP标签,它们提供了丰富的功能,如数据绑定、控制流、输入验证等,帮助开发者创建更加整洁、易于维护的代码。 Struts2标签库主要分为以下几个部分: 1. **核心标签(Core...
### Struts1标签库详解:核心知识点概览 #### Bean Tags: 创建与管理Bean - **bean:cookie**: 此标签用于从客户端请求中提取cookie的值。它根据`name`属性来查找特定的cookie,如果`multiple`属性未设置,则返回一...
总结来说,这个Java分页应用展示了如何利用Struts2框架和其标签库来构建一个简单的留言板系统,涉及到的知识点包括Struts2框架的工作原理、MVC模式、JSP页面的构建、数据库分页查询以及URL参数的处理。对于初学者,...
### Struts2 标签库详解 #### 一、引言 Struts2是一个流行的Java Web框架,它基于MVC(Model-View-Controller)设计模式。为了简化开发过程并提高代码的重用性,Struts2提供了一套丰富的标签库,这些标签库可以帮助...
总结,Struts标签库为Java Web开发者提供了一套强大且便捷的工具,用于构建动态网页。通过熟练掌握和恰当使用这些标签,可以提升开发效率,降低维护成本,同时提高应用的质量和用户体验。在实际项目中,合理利用...
### Struts2 标签库解析 #### 一、引言 Struts2是一个流行的Java Web应用程序框架,它提供了一套强大的工具集用于构建高效、易于维护的企业级应用。Struts2标签库作为该框架的重要组成部分,极大地简化了前端开发...
使用Struts2标签的准备\n\n在使用Struts2标签之前,需要进行以下配置:\n\n- **引入标签库**:在JSP页面顶部添加`<%@ taglib uri="/struts-tags" prefix="s"%>`,声明Struts2的标签库。\n- **配置过滤器**:在`web....
总结,Struts2的标签库是开发人员的得力工具,它提供了丰富的功能,使开发者能够更专注于业务逻辑,而不是繁琐的视图层实现。通过熟练掌握这些标签,可以大大提高开发效率,同时保持代码的清晰和可读性。在实际项目...
### Struts2标签库详解 #### 一、引言 Struts2框架是Apache软件基金会下的一个开源项目,它提供了一种基于MVC设计模式的Web应用开发框架。Struts2框架中的标签库(Tag Library)是其核心功能之一,为开发者提供了...
Struts标签库是Java开发中用于构建MVC框架Struts应用的重要组成部分,它极大地简化了JSP页面中的逻辑处理,让开发者能更专注于视图层的设计。以下是对Struts1.x中常用标签的详细总结: 1. **Bean标签库**: - `...
在Struts2框架中,标签库是其重要组成部分,它提供了丰富的标签来帮助开发者更方便地构建用户界面。`struts2-tags-API`就是这样一个资源,它包含了Struts2标签API的详细文档,帮助开发者理解和使用这些标签。 一、...
Struts2标签库是其强大的视图层工具,简化了JSP页面的编写。例如: 1. `<s:form>`:创建表单,自动绑定Action的属性。 2. `<s:textfield>`:创建输入字段,与Action的属性关联。 3. `<s:submit>`:提交按钮,触发...
总结,Struts2的标签库极大地简化了JSP页面的编写,提高了开发效率。通过深入学习和实践,开发者可以充分利用这些标签来构建出结构清晰、功能强大的Web应用。在实际项目中,结合源码分析和相关开发工具,可以进一步...