随着网络应用日益普及,Web应用程序的开发也越来越流行。在Java Web应用程序开发中,Struts2框架被广泛使用。其中,下拉列表是常见的用户输入控件,常常用来选择一项或多项数据。在Struts2中,操作下拉列表选择的数据通常都与操作数据库数据有关。本文将介绍Struts2下拉列表的使用方法,同时提供一个简单的实例演示如何操作数据库中的数据。
一、Struts2下拉列表的使用方法
1.定义下拉列表
在Struts2中,可以使用HTML标签或Struts2标签库定义下拉列表。下面是HTML标签的定义:
其中,name属性指定下拉列表的名称,option标签定义每个选项的内容和对应的值(value属性)。
运用Struts2标签库定义下拉列表更加简单。只需在P页面中使用相应的标签,即可生成下拉列表。下面是使用Struts2标签库定义下拉列表的示例代码:
2.处理下拉列表
在Struts2中,可以使用Action类的属性、Ognl表达式等方式获取下拉列表选择的数据。下面是使用Action类的属性获取下拉列表选择的数据的示例代码:
在Action类中定义mySelect属性:
private String mySelect;
public String getMySelect() {
return mySelect;
public void setMySelect(String mySelect) {
this.mySelect = mySelect;
在P页面中使用下拉列表:
在操作Action中,可以通过以下方式获取用户选择的数据:
public String myAction() {
System.out.println(“mySelect=” + mySelect);
return SUCCESS;
通过以上步骤,即可获取下拉列表中选择的数据。
二、的示例代码
下面提供一个简单的示例,演示如何使用Struts2下拉列表操作数据库中的数据。
(1)创建数据库表
创建一个名为“person”的数据库表,包含id、name和age三个字段:
CREATE TABLE person(
id INTEGER PRIMARY KEY AUTOINCREMENT,
age INTEGER
(2)进行Struts2配置
在struts.xml文件中,首先配置命名空间和默认Action,如下所示:
/index.jsp
/index.jsp
在com.example.PersonAction类中,定义查询数据库的方法:
public class PersonAction extends ActionSupport {
private List list;
public List getList() {
return list;
public void setList(List list) {
this.list = list;
public String query() throws Exception {
Connection conn = null;
PreparedStatement ps = null;
ResultSet rs = null;
Class.forName(“com.myIDC.com/xtywjcwz/20443.html" target="_blank">sql.jdbc.Driver”);
String url = “jdbc:mysql://localhost:3306/test”;
String username = “root”;
String password = “123456”;
conn = DriverManager.getConnection(url, username, password);
String sql = “select * from person order by id”;
ps = conn.prepareStatement(sql);
rs = ps.executeQuery();
list = new ArrayList();
while(rs.next()) {
Person person = new Person();
person.setId(rs.getInt(“id”));
person.setName(rs.getString(“name”));
person.setAge(rs.getInt(“age”));
list.add(person);
} catch(Exception e) {
e.printStackTrace();
return error;
if(rs != null) rs.close();
if(ps != null) ps.close();
if(conn != null) conn.close();
return SUCCESS;
(3)定义P页面
在index.jsp页面中,使用Struts2下拉列表,如下所示:
Struts2下拉列表操作数据库数据
(4)实现查询功能
在PersonAction类中,再添加一个查询指定id的方法:
public class PersonAction extends ActionSupport {
private List list;
public List getList() {
return list;
public void setList(List list) {
this.list = list;
private Person person;
public Person getPerson() {
return person;
public void setPerson(Person person) {
this.person = person;
private int personId;
public int getPersonId() {
return personId;
public void setPersonId(int personId) {
this.personId = personId;
public String query() throws Exception {
//查询数据库并将结果保存到list中
public String getById() throws Exception {
Connection conn = null;
PreparedStatement ps = null;
ResultSet rs = null;
Class.forName(“com.mysql.jdbc.Driver”);
String url = “jdbc:mysql://localhost:3306/test”;
String username = “root”;
String password = “123456”;
conn = DriverManager.getConnection(url, username, password);
String sql = “select * from person where id=?”;
ps = conn.prepareStatement(sql);
ps.setInt(1, personId);
rs = ps.executeQuery();
while(rs.next()) {
person = new Person();
person.setId(rs.getInt(“id”));
person.setName(rs.getString(“name”));
person.setAge(rs.getInt(“age”));
} catch(Exception e) {
e.printStackTrace();
return ERROR;
if(rs != null) rs.close();
if(ps != null) ps.close();

if(conn != null) conn.close();
return SUCCESS;
在index.jsp中,添加新的表单和提交按钮,调用getById方法:
Struts2下拉列表操作数据库数据
个人信息:
姓名: |
年龄: |
至此,我们已经完成了Struts2下拉列表操作数据库数据的示例。
三、
相关问题拓展阅读:
香港服务器首选树叶云,2H2G首月10元开通。树叶云(shuyeidc.com)提供简单好用,价格厚道的香港/美国云
服务器
和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。
sql存储过程实例
CREATE OR REPLACEprocedure procedure_namebeginfor c in (select column_a_name from table_a_name)loopupdate table_b_name set column_b_name=_a_name loop;end;
struts2如何返回下拉框的值
先得到你现在的值:如性别-女 然后再循环添加下拉框的值,在每次循环时,都判断下添加的值是否和得到的值相等 如果相等则 添加属性selected 选中当前正在添加的值
linux命令:从登录mysql数据库,到访问l数据库的所有表,然后锁定某一个表,显示表结构,再查询表内容。
service mysqld start(启动mysql服务)mysql(进入本地mysql数据库)show Databases;(查看有哪些数据库)use 数据库名;(切换到XXX数据库)show tables; (查看此库中有那些表)然后就是对具体的某张表进行操作了
发表评论