zoukankan      html  css  js  c++  java
  • Spring Date Jpa 增删改查

     @Autowired
     private EntityManagerFactory entityManagerFactory;
    
     @PersistenceContext
     private EntityManager em;
    
     public Session getSession() {
        return entityManagerFactory.unwrap(SessionFactory.class).openSession();
     }    
    /**
    * 多条件查询
    *
    * @param t
    */
    @Override
    public List<Article> ListArticle(String account,String homePage) {
    CriteriaBuilder criteriaBuilder = getSession().getCriteriaBuilder();
    CriteriaQuery<Article> criteriaQuery = criteriaBuilder.createQuery(Article.class);
    Root<Article> rt = criteriaQuery.from(Article.class);
      
      //条件集合
    List<Predicate> predicates = new ArrayList<Predicate>();
      //添加条件
    predicates.add(criteriaBuilder.equal(rt.get("account"),account));
    if (Util.isNotEmpty(homePage)){
    predicates.add(criteriaBuilder.equal(rt.get("homePage"),homePage));
    }
      //
    criteriaQuery.where(predicates.toArray(new Predicate[predicates.size()]));

    List<Article> list = getSession().createQuery(criteriaQuery).getResultList();
    return list;
    }
    /**
    * 创建信息
    *
    * @param t
    */
    @Override
    public void createObject(T t) {
    EntityManager entityManager = entityManagerFactory.createEntityManager();
    //4.开启事务
    EntityTransaction transaction = entityManager.getTransaction();
    transaction.begin();
      
      //新建
    entityManager.persist(t);

    //6.提交事务
    transaction.commit();

    //7.关闭 EntityManager
    entityManager.close();
    }

    /**
    * 修改信息
    *
    * @param t
    */
    @Override
    public void updateObject(T t) {
    EntityManager entityManager = entityManagerFactory.createEntityManager();
    //4.开启事务
    EntityTransaction transaction = entityManager.getTransaction();
    transaction.begin();

      //更新
    entityManager.merge(t);

    //6.提交事务
    transaction.commit();

    //7.关闭 EntityManager
    entityManager.close();
    }

    /**
    * 删除信息
    *
    * @param t
    */
    @Override
    public void deleteObject(T t) {
    EntityManager entityManager = entityManagerFactory.createEntityManager();
    //4.开启事务
    EntityTransaction transaction = entityManager.getTransaction();
    transaction.begin();

      //删除
    entityManager.remove(t);

    //6.提交事务
    transaction.commit();

    //7.关闭 EntityManager
    entityManager.close();
    }
     
  • 相关阅读:
    【北邮人论坛帖子备份】【心得】20年公考经验分享
    如何写一封国际会议的交流信?
    花呗广告趣图
    《第九个寡妇》读后感
    沟通的五个层次
    部署多功能模块依赖项目中解决的问题
    maven: can't resolve plugin xxxmaven-xxxx-plugin:x.x
    C++编译报错:need 'typename' before 'std::map<T, S>::iterator' because 'std::map<T, S>' is a dependent scope
    详细js中(function(window,document,undefined))的作用
    201509020-js
  • 原文地址:https://www.cnblogs.com/CompetitiveHeart/p/11635164.html
Copyright © 2011-2022 走看看