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

          Posted on 2009-06-20 19:04 胡娟 閱讀(1581) 評論(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.     獲得全部數(shù)據(jù)

           

          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 © 胡娟

          主站蜘蛛池模板: 绥宁县| 赤壁市| 西充县| 夏津县| 苏尼特右旗| 兖州市| 扶余县| 五莲县| 竹北市| 西乌珠穆沁旗| 辽阳县| 丹东市| 集安市| 锡林浩特市| 南郑县| 江津市| 剑川县| 沅江市| 禹州市| 闸北区| 广灵县| 托克逊县| 临泽县| 大理市| 明溪县| 尚义县| 巴青县| 灵璧县| SHOW| 靖西县| 桓仁| 资溪县| 大方县| 丰城市| 台江县| 沙河市| 安泽县| 华安县| 广东省| 乐山市| 革吉县|