当前位置: 首页 > 编程笔记 >

Struts2下拉框实例解析

徐洋
2023-03-14
本文向大家介绍Struts2下拉框实例解析,包括了Struts2下拉框实例解析的使用技巧和注意事项,需要的朋友参考一下

其实以前我对Java的Struts框架没有具体认识,通过这篇文章,真的让我了解了框架的用处,好处。

下拉框在Web开发中经常会使用到,下面我们通过struts2的标签来实现下拉框的一些功能。

先来看看<s:select>的一些参数

注:listKey相当于HTML中的value值,我们是通过它的值来和后台进行交互的。

案例:用户选择了自己的偶像,然后要对其进行修改,跳转到修改界面之后,要回显用户最初选择的偶像。

用户偶像界面(假设用户当前的选择为"习近平"):

实现代码!!!!

用户偶像界面:

<form action="selectAction.action" method="post"> 
  您的偶像为:<s:select list="#{1:'邓小平',2:'胡锦涛',3:'习近平',4:'李克强'}" name="id" listKey="key" listValue="value"/> 
  <input type="submit" value="我要修改"> 
  </form> 
 </body> 

注:list使用OGNL创建的Map集合。

action代码:

public class SelectAction extends ActionSupport {
	private static final long serialVersionUID = 1L;
	/*用户所选的偶像的id*/
	private String id;
	/*偶像集合*/
	private List<User> users;
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public List<User> getUsers() {
		return users;
	}
	public void setUsers(List<User> users) {
		this.users = users;
	}
	public String execute(){
		/*创建一个集合模拟从数据库中查出所有的用户*/
		users = new ArrayList<User>();
		users.add(new User(1, "邓小平"));
		users.add(new User(2, "胡锦涛"));
		users.add(new User(3, "习近平"));
		users.add(new User(4, "李克强"));
		/*把所有的用户存在OGNL Context上下文中*/
		ActionContext.getContext().put("users", users);
		//注:这里并不需要把用户所选的值存起来,因为我们的id属性就是用户所选的值, 
		//作为action的属性,它已经保存到值栈中去了,可以直接根据属性名id来获取 
		return this.SUCCESS;
	}
}

javaBean对象:

public class User {
	/* 用户id */
	private Integer uid;
	/* 用户名 */
	private String uname;
	/* 无参构造函数 */
	public User() {
	}
	/* 构造函数 */
	public User(Integer uid, String uname) {
		this.uid = uid;
		this.uname = uname;
	}
	public Integer getUid() {
		return uid;
	}
	public void setUid(Integer uid) {
		this.uid = uid;
	}
	public String getUname() {
		return uname;
	}
	public void setUname(String uname) {
		this.uname = uname;
	}
}

修改界面:

<body> 
  您的偶像为: 
  <s:select list="#users" listKey="uid" listValue="uname" value="id" /> 
</body> 

注:value值只写了一个id(用户所选偶像的id)属性名称,是因为它是action中的属性,action中的属性会被保存到值栈中,所以可以直接获取。

总结

第一次体会到框架的好处,见识浅陋,勿怪。。

以上就是本文关于Struts2下拉框实例解析的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

 类似资料:
  • 主要内容:Struts 2 <s:select> 示例,1. 动作 - Action,2. 结果页面,3. struts.xml,5. 运行实例,参考这里创建一个Web工程:strut2selectdropdown,来演示在多个复选框如何设置的默认值,整个项目的结构如下图所示: 在Struts2,可以使用 <s:select> 标签来创建一个HTML下拉框。 产生下面的HTML代码... 其语法不需要太多解释,只不过是“headerKey”和“headerValue”。“headerKey”是一

  • 主要内容:1. Java List 示例,2. OGNL List 实例在Struts2中,HTML下拉框可以通过<s:select>标签呈现。要自动选择一个下拉框的默认值,只是声明<s:select>值”属性标记,并设置相应的默认值。 这里创建一个Web工程:strut2autoselectdropdown,来演示在多个复选框如何设置的默认值,整个项目的结构如下图所示: 1. Java List 示例 Java列表生成选择选项的下拉框。 <s:select>标记呈现

  • 主要内容:1. Action,2. 视图文件,3. struts.xml,4. 执行结果,参考这是一个Struts2的例子来说明使用定制返回类型,允许用户下载文件。web工程的文件夹结构如下所示: 1. Action 在Action类中,声明一个 InputStream 的数据类型和getter方法。 DownloadAction.java 2. 视图文件 一个正常的页面,有一个下载链接,用于下载文件。 downloadPage.jsp 3. struts.xml 定义下载文件的细节。 <

  • 本文向大家介绍vue.js实现单选框、复选框和下拉框示例,包括了vue.js实现单选框、复选框和下拉框示例的使用技巧和注意事项,需要的朋友参考一下 Vue.js可以很方便的实现数据双向绑定,所以在处理表单,人机交互方面具有很大的优势。下边以单选框、复选框和下拉框为例介绍他们在HTML和Vue.js中的具体实现方式。 一、单选框   在传统的HTML中实现单选框的方法如下: 注:这里name属性值必

  • 本文向大家介绍PyQt5下拉式复选框QComboCheckBox的实例,包括了PyQt5下拉式复选框QComboCheckBox的实例的使用技巧和注意事项,需要的朋友参考一下 笔者在用PyQt5写GUI时碰到了需要使用下拉式复选框的情况,但是PyQt5中没有相应的组件,而网上找到的方法大多是qt使用的,所以不能直接拿来用。 没办法,在这种让人无奈的情况下,笔者只能根据网上大神们的方法试着自己写一个

  • 本文向大家介绍bootstrap中selectpicker下拉框使用方法实例,包括了bootstrap中selectpicker下拉框使用方法实例的使用技巧和注意事项,需要的朋友参考一下 前言 最近一直在用bootstrap 的一些东西,写几篇博客记录下。。。。 bootstrap selectpicker是bootstrap里比较简单的一个下拉框的组件,先看效果如下: 附上官网api链接,htt