zoukankan      html  css  js  c++  java
  • hibernate如何解除关系———只删除多方保留一方

    现在有sub和fee两个对象,关系为一对多,在删除时,有时,只会删除一方数据,现在要求只删除多方;
    首先看两者的关系为也可以参照文件
     
       在sub文件中有:
        
        private List<AgreementFee> agreFee = new ArrayList<AgreementFee>();
        @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY,mappedBy = "agreementSub")
        public List<AgreementFee> getAgreFee() {
            return agreFee;
        }
        public void setAgreFee(List<AgreementFee> agreFee) {
            this.agreFee = agreFee;
        }
       在fee文件中有:
    如何解除关系,删除多方呢
            /**
         * 删除子列表下面的费用
         * @author chensy
         * @date 2013-11-13
         * @param subId
         */

        public void delSubMes(String subId){
            //获得子列表
            AgreementSub agreementSub = agreementSubDao.queryBySubId(subId);
            //获得费用
            List<AgreementFee> list = agreementSub.getAgreFee();
            List<String> ids = new ArrayList<String>();
            for (AgreementFee agreementFee : list) {
                    ids.add(agreementFee.getId());
            }
            if(ids!=null && ids.size() > 0){
                agreementFeeDao.delFeeMes(ids);
            }
        }
        fee
        /**
         * 删除费用
         * @author chensy
         * @date 2013-11-14
         * @param ids
         */

        public void delFeeMes(List<String> ids){
            session = getSession();
            AgreementFee agreementFee = null;
            for (String string : ids) {
                agreementFee = this.queryAgreementFee(string);
                agreementFee.getAgreementSub().getAgreFee().remove(agreementFee);
                agreementFee.setAgreementSub(null);
            }
            session.delete(agreementFee);
        }




  • 相关阅读:
    es5核心技术
    es6 迭代器 和 生成器 学习笔记
    nodejs 基础学习笔记
    node 基本原理
    mac php7 连接数据库遇到的问题
    express ,koa1, koa2学习笔记
    mac mysql的安装
    webpack 给css添加前缀
    利用git将本地的代码同步到github上
    vuex 学习总结及demo
  • 原文地址:https://www.cnblogs.com/babyhhcsy/p/3434652.html
Copyright © 2011-2022 走看看