HIbernate中Query.setDate()

来源:互联网 发布:进销存的软件 编辑:程序博客网 时间:2024/06/06 04:09
Session session = getHibernateTemplate().getSessionFactory().openSession(); // 获取Session
        Transaction tx=null;
        try{
          
            tx=session.beginTransaction();
            for(Object o: routerMap.keySet()){
            Router router=(Router)routerMap.get(o);
            String sql="update Router set gatewayIp= ? ,province= ? ,city=? ,"+
            "county= ? ,routerName= ? ,netType= ? ,updateTime= ? where gatewayIp= ? ";
            Query query = null;
            session.beginTransaction(); 
            query = session.createQuery(sql);
            query.setString(0, router.getGatewayIp());
            query.setString(1, router.getProvince());
            query.setString(2, router.getCity());
            query.setString(3, router.getCounty());
            query.setString(4, router.getRouterName());

            query.setString(5, router.getNetType());

//query.setDate(6, new Date());//保存到数据库中是只有年月日

            query.setTimestamp(6, new Date());//这样才是具体时间

//通过setCalendar()赋值也是OK的

           
            query.setString(7, (String)o);
            query.executeUpdate();
       
       
           
            tx.commit(); // 提交事务
            //session.getTransaction().commit();
    //session.close(); 
            }
        }catch(Exception ex){
            ex.printStackTrace(); 
            tx.rollback();
        }finally{
        session.close();
        }   
原创粉丝点击