Rhythmk 学习 Hibernate 09 - Hibernate HQL
生活随笔
收集整理的這篇文章主要介紹了
Rhythmk 学习 Hibernate 09 - Hibernate HQL
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
1、初始數(shù)據(jù)
@Testpublic void test01() {Session session = null;try {session = HibernateUtil.getSessionFactory().openSession();session.beginTransaction();for (int i = 0; i < 100; i++) {book entity = new book();entity.setBookCode("book-code-" + i);entity.setBookname("book-name" + i);entity.setPrice(i);session.save(entity);}session.getTransaction().commit();} catch (HibernateException e) {e.printStackTrace();} finally {if (session != null)session.close();}}
2、查詢對象
@Testpublic void test02() {Session session = null;// form 對象名 非 表名String sql = " from book ";try {session = HibernateUtil.getSessionFactory().openSession();Query query = session.createQuery(sql);List<book> list = (List<book>) query.list();for (book b : list) {System.out.println(b);}} catch (HibernateException e) {e.printStackTrace();} finally {if (session != null)session.close();}}
3、查詢單字段
@Testpublic void test03() {/** 查詢單字段*/Session session = null;String sql = " select bookname from book ";try {session = HibernateUtil.getSessionFactory().openSession();Query query = session.createQuery(sql);List<String> list = (List<String>) query.list();for (String b : list) {System.out.println(b);}} catch (HibernateException e) {e.printStackTrace();} finally {if (session != null)session.close();}}
4、查詢指定字段
@Testpublic void test04() {/** 查詢多字段,且指定條數(shù)Object[]*/Session session = null;String sql = " select bookname,bookCode from book ";try {session = HibernateUtil.getSessionFactory().openSession();Query query = session.createQuery(sql);// 指定5條query.setMaxResults(5);List<Object[]> list = (List<Object[]>) query.list();for (Object[] b : list) {System.out.println(b[0] + "," + b[1]);}} catch (HibernateException e) {e.printStackTrace();} finally {if (session != null)session.close();}}
5、返回Map對象
@Testpublic void test05() {/** 查詢多字段,且指定Map*/Session session = null;String sql = " select new Map(bookname,bookCode) from book ";try {session = HibernateUtil.getSessionFactory().openSession();Query query = session.createQuery(sql);query.setMaxResults(5);List<Map> list = (List<Map>) query.list();for (Map b : list) {System.out.println((String) b.get("0") + ","+ (String) b.get("1"));}} catch (HibernateException e) {e.printStackTrace();} finally {if (session != null)session.close();}}
6、序列化參數(shù)
? ?6.1、
@Testpublic void test06() {Session session = null;String sql = " select bookname,bookCode from book where book_id>:book_id and price>:price";try {session = HibernateUtil.getSessionFactory().openSession();Query query = session.createQuery(sql);query.setInteger("book_id", 5);query.setDouble("price", 5);// Hibernate: select book0_.bookname as col_0_0_, book0_.bookCode as// col_1_0_ from t_book book0_ where book0_.book_id>? and// book0_.price>?List<Object[]> list = (List<Object[]>) query.list();for (Object[] b : list) {System.out.println(b[0] + "," + b[1]);}} catch (HibernateException e) {e.printStackTrace();} finally {if (session != null)session.close();}}
? ?6.2、
@Testpublic void test07() {Session session = null;String sql = " select bookname,bookCode from book where book_id>:book_id and price>:price";try {session = HibernateUtil.getSessionFactory().openSession();Query query = session.createQuery(sql);query.setInteger(0, 5);query.setDouble(1, 5);// Hibernate: select book0_.bookname as col_0_0_, book0_.bookCode as// col_1_0_ from t_book book0_ where book0_.book_id>? and// book0_.price>?List<Object[]> list = (List<Object[]>) query.list();for (Object[] b : list) {System.out.println(b[0] + "," + b[1]);}} catch (HibernateException e) {e.printStackTrace();} finally {if (session != null)session.close();}}
7、執(zhí)行SQL
@Testpublic void test08_jdbc() {Session session = null; //Rhythmk String sql = " select bookCode,bookname from t_book where book_id>? and price>?";try {session = HibernateUtil.getSessionFactory().openSession();SQLQuery query = session.createSQLQuery(sql);query.setInteger(0, 5);query.setDouble(1, 5);List<Object[]> list = (List<Object[]>) query.list();for (Object[] b : list) {System.out.println(b[0] + "," + b[1]);}} catch (HibernateException e) {e.printStackTrace();} finally {if (session != null)session.close();}}}http://pan.baidu.com/s/1hqGDNq0
?
轉載于:https://www.cnblogs.com/rhythmK/p/3722043.html
總結
以上是生活随笔為你收集整理的Rhythmk 学习 Hibernate 09 - Hibernate HQL的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Mac OS—苹果搭建Android开发
- 下一篇: 小米电视怎么样啊?