JPA+Hibernate 3.3 學習小結——使用JQL語句

          Posted on 2009-06-20 19:04 胡娟 閱讀(1584) 評論(0)  編輯  收藏 所屬分類: JAVA

          1.獲得對象

          public void getPersonJql(){
                  EntityManagerFactory factory 
          = Persistence.createEntityManagerFactory("jpa");
                  EntityManager em 
          = factory.createEntityManager();
                  Query query 
          = (Query)em.createQuery("select p from Person p where p.id = ?1");
                  query.setParameter(
          1,5);
                  Person person 
          = (Person)query.getSingleResult();
                  System.out.println(person.getUserName());
                  em.close();
                  factory.close();
              }

          2.     獲得全部數據

           

          public void findAll(){
                  EntityManagerFactory factory 
          = Persistence.createEntityManagerFactory("jpa");
                  EntityManager em 
          = factory.createEntityManager();
                  Query query 
          = (Query)em.createQuery("select p from Person p");
                  List
          <Person> list = query.getResultList();
                  
          for(Person p:list){
                      System.out.println(p.getUserName());
                  }
              }

          3.     更新

           

          public void updateJql(){
                  EntityManagerFactory factory 
          = Persistence.createEntityManagerFactory("jpa");
                  EntityManager em 
          = factory.createEntityManager();
                  em.getTransaction().begin();
                  Query query 
          = (Query)em.createQuery("update Person p set p.userName = ?1,p.gender = ?2 where p.id = ?3");
                  query.setParameter(
          1,"fankai");
                  query.setParameter(
          2,Gender.WoMEN);
                  query.setParameter(
          3,6);
                  query.executeUpdate();
                  em.getTransaction().commit();
                  em.close();
                  factory.close();
              }

          4.     刪除

          public void deleteJql(){
                  EntityManagerFactory factory 
          = Persistence.createEntityManagerFactory("jpa");
                  EntityManager em 
          = factory.createEntityManager();
                  em.getTransaction().begin();
                  Query query 
          = em.createQuery("delete from Person p where p.id = ?1");
                  query.setParameter(
          15);
                  query.executeUpdate();
                  em.getTransaction().commit();
                  em.close();
                  factory.close();
              }

          posts - 28, comments - 5, trackbacks - 0, articles - 1

          Copyright © 胡娟

          主站蜘蛛池模板: 昌邑市| 津市市| 五大连池市| 广宗县| 三河市| 乌什县| 台江县| 措美县| 宣城市| 淮北市| 恩施市| 南召县| 兴业县| 德江县| 郁南县| 龙里县| 凭祥市| 巢湖市| 德兴市| 梅河口市| 望奎县| 丰台区| 安龙县| 灌南县| 庄河市| 营山县| 兖州市| 依兰县| 剑阁县| 黎城县| 花垣县| 离岛区| 江门市| 班戈县| 郓城县| 河池市| 南部县| 越西县| 仁怀市| 永顺县| 临沂市|