Hibernate:具有数据的对象仍然不';不保存不';我不给任何例外
实际上我有两个数据库,我从一个数据库中获取数据,我试图将同一个对象(也包括子引用)保存到不同的数据库中,但在数据库中它没有保存,即使它没有给出任何异常。你能给我一些同样的解决办法吗 一项意见: 正在使用以下代码进行保存:Hibernate:具有数据的对象仍然不';不保存不';我不给任何例外,hibernate,model-associations,Hibernate,Model Associations,实际上我有两个数据库,我从一个数据库中获取数据,我试图将同一个对象(也包括子引用)保存到不同的数据库中,但在数据库中它没有保存,即使它没有给出任何异常。你能给我一些同样的解决办法吗 一项意见: 正在使用以下代码进行保存: try { session=getSession(); tx = session.beginTransaction(); List<Member> memberList
try {
session=getSession();
tx = session.beginTransaction();
List<Member> memberList = null;
List<Proposal> proposalList = null;
List<ReductionScheduleMatrix> ReductionScheduleMatrixList = null;
for(GroupClass groupClass : groupClasses){
GroupClass = new GroupClass();
GroupClass.setId(groupClass.getId());
GroupClass.setCensus_pk(groupClass.getCensus_pk());
GroupClass.setGroupClassNumber(groupClass.getGroupClassNumber());
proposalList = new ArrayList<SCProposal>();
for(Proposal proposal : groupClass.getProposals()){
Proposal sCProposal = new Proposal();
Proposal.setId(proposal.getId());
StandardLifeBenefit sCStandardLifeBenefit = new StandardLifeBenefit();
if(proposal.getStandardLifeBenefit()!=null){
sCStandardLifeBenefit.setId(proposal.getStandardLifeBenefit().getId());
sCStandardLifeBenefit.setMaximumBenefit(proposal.getStandardLifeBenefit().getMaximumBenefit());
sCStandardLifeBenefit.setMinimumBenefit(proposal.getStandardLifeBenefit().getMinimumBenefit());
sCStandardLifeBenefit.setFlatBenefitAmount(proposal.getStandardLifeBenefit().getFlatBenefitAmount());
sCStandardLifeBenefit.setSalaryMultiplier(proposal.getStandardLifeBenefit().getSalaryMultiplier());
sCStandardLifeBenefit.setEligibilityhours(proposal.getStandardLifeBenefit().getEligibilityhours());
sCStandardLifeBenefit.setAgeScheduleOPtion(proposal.getStandardLifeBenefit().getAgeScheduleOPtion());
sCStandardLifeBenefit.setGuaranteedIssue(proposal.getStandardLifeBenefit().getGuaranteedIssue());
if(proposal.getStandardLifeBenefit().getReductionScheduleMatrix()!=null){
ReductionScheduleMatrixList = new ArrayList<SCReductionScheduleMatrix>();
for(ReductionScheduleMatrix redSchMatric : proposal.getStandardLifeBenefit().getReductionScheduleMatrix()){
ReductionScheduleMatrix sCReductionScheduleMatrix = new ReductionScheduleMatrix();
sCReductionScheduleMatrix.setId(redSchMatric.getId());
sCReductionScheduleMatrix.setAge(redSchMatric.getAge());
sCReductionScheduleMatrix.setReductionPercentage(redSchMatric.getReductionPercentage());
ReductionScheduleMatrixList.add(sCReductionScheduleMatrix);
}
sCStandardLifeBenefit.setsCReductionScheduleMatrix(ReductionScheduleMatrixList);
}
sCProposal.setsCStandardLifeBenefit(sCStandardLifeBenefit);
}
SCADDBenefit scaddBenefit = new SCADDBenefit();
if(proposal.getAddBenefit()!=null){
scaddBenefit.setId(proposal.getAddBenefit().getId());
scaddBenefit.setFlatBenefitAmount(proposal.getAddBenefit().getFlatBenefitAmount());
sCProposal.setsCaddBenefit(scaddBenefit);
}
proposalList.add(sCProposal);
}
memberList = new ArrayList<SCMember>();
for(Member member : groupClass.getMembers()){
Member sCMember = new Member();
sCMember.setId(member.getId());
sCMember.setLifeNumber(member.getLifeNumber());
memberList.add(sCMember);
}
sCGroupClass.setsCMembers(memberList);
sCGroupClass.setsCProposals(proposalList);
session.saveOrUpdate(sCGroupClass);
}
tx.commit();
}
这些成员表未填充,我在保存实体时已验证,实体也有成员详细信息。请您提供帮助。问题不清楚。您是否尝试将对象保存到相同的数据库或不同的数据库?这段代码()可能是不同的数据库,但两个数据库的建模是相同的,这就是为什么我使用相同的实体,请查找上面的示例代码
memberList = groupClass.getMembers();
/* for(Member member : groupClass.getMembers()){
Member sCMember = new Member();
sCMember.setId(member.getId());
sCMember.setLifeNumber(member.getLifeNumber());
memberList.add(sCMember);
}*/