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

          Posted on 2009-06-20 19:04 胡娟 閱讀(1577) 評論(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 © 胡娟

          主站蜘蛛池模板: 罗田县| 建始县| 清水县| 绥阳县| 扎赉特旗| 潞城市| 息烽县| 西和县| 射阳县| 康马县| 湾仔区| 宣化县| 新晃| 化德县| 灌南县| 鄂尔多斯市| 沙河市| 龙江县| 海林市| 峨山| 图们市| 双辽市| 林西县| 武功县| 靖安县| 呼伦贝尔市| 新余市| 怀柔区| 兰考县| 和平区| 武宁县| 尼玛县| 大名县| 嘉兴市| 兴仁县| 思茅市| 华蓥市| 若羌县| 孟连| 体育| 行唐县|