zoukankan      html  css  js  c++  java
  • dljd_hibernate_047_单表查询-为动态参数赋值_[重点]

    一、hql语句中的动态参数赋值

      

    package edu.aeon.hibernate.test;
    
    import java.util.List;
    import org.hibernate.Session;
    import org.hibernate.Transaction;
    import org.junit.Test;
    import edu.aeon.aeonutils.hibernate.getsessionutil.GetSessionUtil;
    import edu.aeon.beans.Student;
    /**    
     * [说明]:测试hql语句动态参数赋值
     * @author aeon
     *
     */
    public class TestQueryPara {
        /**
         * 测试hql语句动态参数赋值
         */
        @Test
        public  void testHqlQuery() {
            Transaction transaction=null;
            Session session=null;
            try {
                session = GetSessionUtil.getSession();
                transaction=session.getTransaction();
                transaction.begin();
                //String hql="from Student where stuage >10 and stuage <20 ";
                // 第一种动态参数赋值[start]
                String hql="from Student where stuage >? and stuage <? ";
                List<Student> stuList = session.createQuery(hql).setInteger(0, 10).setInteger(1, 20).list();
                //[/end]
                for (Student stu : stuList) {
                    System.out.println(stu);
                }
                System.out.println("hql查询!");
                transaction.commit();
            } catch (Exception e) {
                e.printStackTrace();
                //事物的回滚操作
                transaction.rollback();
            }finally{
                /*
                 * 其实这种getCurrentSession获取到的session我们无需手动关闭
                 * 因为当事务提交或者回滚的时候已经做了关闭session操作
                 * 而用openSession获取到的session我们一定要用手动去关闭
                 * */
                if(null!=session){
                    session.close();
                }
            }
        }
    }    

    数据库数据信息截图:

      

    第一种动态参数赋值执行结果截图:

      

    第二种动态参数赋值执行结果截图:

      

    第三种动态参数赋值执行结果截图:

       

      

    如有任何疑问可联系邮箱: 给我发邮件、或直接联系QQ:1584875179 || 点返回首页

  • 相关阅读:
    Redis面试题
    Mysql面试题
    Mybatis面试题
    Springmvc面试题
    spring常见面试题
    优雅的参数校验
    Linux安装mongodb
    Redis缓存的雪崩、穿透、击穿
    语音识别(LSTM+CTC)
    大数据利器Hive
  • 原文地址:https://www.cnblogs.com/aeon/p/10106341.html
Copyright © 2011-2022 走看看