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

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

          主站蜘蛛池模板: 新干县| 咸阳市| 辽阳县| 清涧县| 德庆县| 宣武区| 伊宁市| 莱西市| 凉山| 阜平县| 漳浦县| 婺源县| 民丰县| 前郭尔| 阿克陶县| 闵行区| 西丰县| 崇礼县| 威远县| 千阳县| 曲靖市| 长兴县| 清苑县| 广东省| 吴江市| 康马县| 绍兴市| 天全县| 进贤县| 资阳市| 江城| 来安县| 府谷县| 文安县| 奉新县| 凤山县| 双峰县| 盐源县| 江川县| 临沧市| 南充市|