页面表单

<form action="updateInput.action" method="post">
<input type="text" name="id"/>
<input type="submit" value="查询">
</form>

struts.xml配置

<action name="updateInput" class="com.test.UserAction" method="updateInput">
<result name="update_input">user_update.jsp</result>
</action>

com.test.UserAction

public class UserAction implements ModelDriven {

    private User user;

    @Override
public Object getModel() {
if (user == null) {
user = new User();
}
return user;
} public String updateInput() {
//测试ModelDriven陷阱
// 根据ID,查询数据库,得到User对象
Object object = ActionContext.getContext().getValueStack().findValue("#root");
Connection connection = DBConnection.getConnection();
PreparedStatement preparedStatement = null;
ResultSet resultSet = null;
User user1 = null;
try {
System.out.println("查询用户信息");
preparedStatement = connection
.prepareStatement("select * from t_user where id = ?");
preparedStatement.setInt(1, user.getId());
resultSet = preparedStatement.executeQuery(); if (resultSet.next()) {
user1 = new User();
user1.setId(resultSet.getInt("id"));
user1.setUsername(resultSet.getString("username"));
user1.setPassword(resultSet.getString("password"));
// user = user1;//这样写有问题
//值栈中的user并没有引用user1,所以在页面上取值实际上并没有取到user1的值。
//将user1的属性copy到user中之后,就可以在页面上取到值了。
BeanUtils.copyProperties(user, user1);
}
} catch (Exception e) {
e.printStackTrace();
}finally{
DBConnection.close(resultSet, preparedStatement, connection);
}
return "update_input";
}
}

user_update.jsp

<form action="user_update.action" method="post">
<input type="hidden" name="method:update">
id:<input type="text" name="id" value="<s:property value="id"/>"> <br/>
username:<input type="text" name="username" value="<s:property value="username"/>"> <br/>
password:<input type="text" name="password" value="<s:property value="password"/>"> <br/>
<input type="submit" name="submit" value="更新用户">
</form>

最新文章

  1. EMD分析 Matlab 精华总结 附开源工具箱(全)
  2. dubbo配置文件报错解决方案
  3. 点击表格tr同时点击checkbox
  4. C#中XML和json互相转换
  5. Android ExpandableListView
  6. 【BZOJ-3809】Gty的二逼妹子序列 分块 + 莫队算法
  7. 八大常见内排序java实现
  8. AwSnap:让全版本(Windows、iOS、Android)Chrome浏览器崩溃的有趣漏洞
  9. Ubuntu字体设置
  10. create---创建表
  11. 同步的HTTP请求
  12. android 50 进程优先级
  13. hyper-v使用wifi链接网络
  14. POJ_1556_The Doors_判断线段相交+最短路
  15. muse-ui底部导航自定义图标和字体颜色
  16. Dynamics 365-Full Text Index on Stopwords
  17. 主机管理+堡垒机系统开发:strace命令及日志解析(五)
  18. excel中mid函数的用法
  19. zabbix 自定义监控 排除带报错提示
  20. latex去掉页眉

热门文章

  1. pyhthon --递归,装饰器
  2. Leetcode House Robber II
  3. 【BZOJ-1864】三色二叉树 树形DP
  4. hdfs创建级联文件夹
  5. Linux内核版本类型
  6. java里面时间差比较
  7. python中set使用
  8. soapUI使用-DataSource获取oracle库中的参数
  9. 常见linux命令释义(第六天)——shell环境变量
  10. 高可用与负载均衡(7)之聊聊Lvs-DR+Keepalived的解决方案