站内搜索: 请输入搜索关键词

当前页面: 开发资料首页JSP 专题hibernate + struts 的update语句怎么写

hibernate + struts 的update语句怎么写

摘要: hibernate + struts 的update语句怎么写


我的update语句提交时总是不能更改信息,那位大哥帮忙给看看!

这是业务逻辑:
public boolean check(String username,String password){
Session session=HibernateSessionFactory.currentSession();
Transaction tx=null;
User user=null;
boolean result=false;
try{
tx=session.beginTransaction();
String sql="from User user where user.username='"+username+"' and user.password='"+password+"'";
Query query=session.createQuery(sql);
List list=query.list();
Iterator it=list.iterator();
if(it.hasNext()){

result=true;
}
}catch(Exception e){
e.printStackTrace();
}
return result;
}
这是action:

if(type.equals("update")){
try{
userId = Integer.parseInt(request.getParameter("id"));

System.out.println("aaaa");
op.update(userId,username,password);
System.out.println("aaaa11");
}catch(Exception e){
e.printStackTrace();
}
}return mapping.findForward("update");
这是jsp页面:

<% User user=(User)request.getSession().getAttribute("list");

Integer id=user.getUserId();
String username=user.getUsername();
String password=user.getPassword();

//Integer id=use.getUserId();
%>


id:<input name="id" value="<%=id%>"/>


username:



password:














粘错了
不好意思!
这个是update语句


public User update(int userId,String username,String password){
Session session=HibernateSessionFactory.currentSession();
Transaction tx=null;
User user = null;;
try{
tx=session.beginTransaction();
User id = (User) session.get(User.class,new Integer(userId));
System.out.println("bbbbb");
session.update(id);
System.out.println("aaaa33");
}catch(Exception e){
e.printStackTrace();
}finally{
session.flush();
}
return user;

}


你的bean设计有问题,一般的话一个事务请在一个session中完成,也就是在使用update时,将session参数传给update,还有你的transaction没有commit,添加tx.commit();然后在catch块添加tx.rollback();


你说的将session参数传给update指的是什么,能不能具体一点


update没有传进来参数吗,还是有其他的问题,
控制台没有报任何错误,而且测试的输出全都能显示到控制台,
就是要修改的数据没能更改!


up!
要沉了!


你先获取到那行的信息,实例化一个对象,然后再直接调用那个对象的set方法修改你要修改的属性,那就可以修改啦!


set方法中的参数是从actionform传来的
请问应该怎么写
User user=new User();
user.setUsername("这里写什么");
user.setUserpassword(" ....");
我不知道怎么能够把form中的值赋进去!


谁能帮帮我啊
快郁闷死了


↑返回目录
前一篇: 跪求jsp乱码的过滤器?
后一篇: 请教一个List接口的问题