草庐IT

hibernate-entitymanager

全部标签

java - JPA的cascade=REMOVE和Hibernate的@OnDelete一起用?

我继承了一个代码库,几乎所有关系都有以下注释:@OneToMany(fetch=FetchType.LAZY,cascade={CascadeType.REMOVE},mappedBy="someThing")@OnDelete(action=OnDeleteAction.CASCADE)现在我很难理解@OnDelete首先做了什么。Hibernate:OnDeletevscascade=CascadeType.REMOVE很有趣,但遗憾的是没有任何答案,@OnDelete的JavaDoc特别毫无值(value)。从其他问题来看,OnDelete注释似乎让DB以某种方式进行级联,而@O

java - 处理 hibernate 事务

目前我在每个我的Controller方法之一中复制了这段代码:Transactiontransaction=HibernateUtil.getSessionFactory().getCurrentSession().getTransaction();if(!HibernateUtil.getSessionFactory().getCurrentSession().getTransaction().isActive()){transaction.begin();}这是正确的方法还是有更好的方法,也许在我可以引用的单独类(class)中?如果是这样,如何?每次我试图将它放在一个单独的类中并

java - 使用过多内存的 Hibernate 关联

我有一个表“class”,它链接到表“student”和“teachers”。一个“类(class)”通过外键关系链接到多个学生和老师。当我使用hibernate关联并获取大量实体(尝试了5000个)时,我发现它占用的内存比我仅使用外键占位符多4倍。hibernate关联有问题吗?我可以使用任何内存分析器来找出是什么使用了太多内存吗?架构是这样的:class(id,className)student(id,studentName,class_id)teacher(id,teacherName,class_id)class_idisforeignkey..案例#1-Hibernate关联

java - hibernate Eclipse 插件

谁能给我推荐一个适合Hibernate的eclipse插件。插件应该负责POJO类、hbm映射文件的生成。还提供了一个很好的接口(interface)来执行HQL查询。任何帮助将不胜感激。问候,镍锡器皿 最佳答案 Hibernate人员为HibernateTools的Eclipse部分提供了这样一个插件.它支持从现有数据库进行逆向工程以生成实体和映射文件,并提供HQL编辑器和条件编辑器。来自官网:Console:TheHibernateConsoleperspectiveallowsyoutoconfiguredatabasecon

java - JPA2/Hibernate - 停止延迟加载?

我遇到了一个问题,JPA在我不想要的时候试图延迟加载我的数据。本质上发生的事情是我正在使用一个服务来检索一些数据,当我将该数据解析为JSON时,JSON库触发hibernate以尝试延迟加载数据。有什么办法可以阻止这种情况吗?我在下面给出了一个例子。//WebControllermethodpublicStringgetEmployeesByQuery(Stringquery){Gsongson=newGson();Listemployees=employeeService.findEmployeesByQuery(query);//Hereiswheretheproblemisocc

java - 调用 EntityManager.merge() 时未设置 ID

我在2个对象父子对象之间有一个简单的OneToMany关联,如下所示。父实体@EntitypublicclassParent{@Id@GeneratedValue(strategy=GenerationType.AUTO)privateLongid;privateStringname;@VersionprivateLongversion;@OneToMany(cascade=CascadeType.ALL,orphanRemoval=true,fetch=FetchType.EAGER)Listchildren=newArrayList();....}子实体@Entitypublicc

java - Hibernate:集合条件

我对hibernate和标准有疑问。我有两个类(class):publicclassPlace{longid;Stringname;Setstreets;}publicclassStreet{longid;Stringname;Placeplace;}我现在想编写一个方法,该方法返回一个名称与参数中给定的名称和街道名称与参数中给定的名称相似的地点列表。publicListfindPlaces(Stringname,Stringstreetname){//getSession()givesmeahibernatesessionCriteriacrit=getSession().creat

java - 具有嵌入式对象的实体的 Hibernate 标准

我有一个实体“UserDetails”,它具有以下变量:字符串用户名字符串用户名UserContactuserContact(其中UserContact是一个可嵌入类)UserContact有以下变量:字符串电话号码字符串电子邮件弦城获取以下列表的Hibernate标准是什么:userName='sam'和city='NewYork'的用户我尝试了以下操作并得到了运行时异常,它无法识别变量“city”:Listlist=session.createCriteria(UserLogin.class).add(Restrictions.eq("userName","sam")).add(R

java - Spring 或 hibernate 连接泄漏

我在web应用程序(hibernate-core-4.3.8.Final和spring3.2.11.RELEASE)上使用spring和hibernate。我正在使用hikaricp(v2.2.5)作为连接池实现,它检测连接泄漏并在下面打印堆栈跟踪。我正在使用spring的声明式事务划分,所以我假设资源的管理和清理是由spring/hibernate完成的。因此,我认为spring或hibernate是检测到的连接泄漏的原因。基本上,有一个计时器,当它被触发时,调用一个标有@Transactional注释的springbean。@TransactionalpublicclassInvo

java - Hibernate 的 setFirstResult() 问题与 Oracle jdbc 驱动程序

我正在尝试使用setFirstResult()和setMaxResults()对Hibernate进行分页,但是当将第一个结果设置为0时我没有得到预期的结果.执行以下操作时:Queryquery=session.createQuery(queryString);query.setFirstResult(0);query.setMaxResults(30);Listlist=query.list();//list.size()returns10但如果我将第一个结果设置为1(或任何不同于0的值):query.setFirstResult(1);query.setMaxResults(30)