草庐IT

Hibernate

全部标签

java - 每个具有不同 ID 名称的类继承的 JPA 表

我有以下映射:@Entity@Inheritance(strategy=InheritanceType.TABLE_PER_CLASS)publicabstractclassVehicle{@Id@GeneratedValueLongid;}@Entity@Table(name="car")@AttributeOverride(name="id",column=@Column(name="car_id"))publicclassCarextendsVehicle{}@Entity@Table(name="bus")@AttributeOverride(name="id",column=

java - 我怎么知道准备好的语句是否被缓存?

我将Hikari与SQLServer2016和tomcatlib文件夹中的sqljdbc4-2.0.jar一起使用。我对数据库资源的配置如下:我的数据源配置如下:@Bean(name="dataSource")publicDataSourcegetDataSource()throwsNamingException{HikariConfigconfig=newHikariConfig();config.setMaximumPoolSize(20);config.setDataSourceJNDI("java:comp/env/jdbc/SQLServerDS");config.addDa

java - 如果不回滚 Hibernate 中的事务会发生什么?

我读到的关于Hibernate的所有内容都指出,当发生错误时,您必须回滚事务并关闭session,并且以下代码(取自Hibernate的文档)通常有一些变体作为示例:Sessionsess=factory.openSession();Transactiontx=null;try{tx=sess.beginTransaction();//dosomework...tx.commit();}catch(RuntimeExceptione){if(tx!=null)tx.rollback();throwe;//ordisplayerrormessage}finally{sess.close(

java - Hibernate 左外连接

我有这样一个Hibernate服务方法:"SELECTscFROMSecurityContactscWHEREsc.securityId=:securityId2"。securityId2由用户传入。每个SecurityContact都与一个Contact具有多对一的关系,因此Hibernate会在该查询运行时自动调用连接。但是,Hibernate始终运行的连接是一个内部连接,对于我的目的来说它不能正常工作。有什么办法可以强制Hibernate在内部生成左外连接吗?下面是SecurityContact类的代码:/***ThepersistentclassfortheSecurityCo

java - Hibernate 映射在离线模式下不工作

我们正在进行灾难恢复练习,一些Hibernate+Spring应用程序没有启动并出现以下错误Causedby:org.springframework.beans.factory.BeanCreationException:Errorcreatingbeanwithname'sessionFactory'definedinServletContextresource[/WEB-INF/applicationContext.xml]:Invocationofinitmethodfailed;nestedexceptionisorg.hibernate.InvalidMappingExcep

java - 对象从 Hibernate 获取错误的时间戳保存到数据库

我是Hibernate的新手,正在开发一个使用它的Web项目。我有一个名为area的对象,它有一个日期对象(java.sql.Timestamp)属性modifiedDate。当我创建一个新对象时,modifieDate为空,然后将其发送到getHibernateTemplate().saveOrUpdate(area);在我自己的类中扩展org.springframework.orm.hibernate3.support.HibernateDaoSupport它设置有当前时间戳并保存在数据库中。在数据库中它被保存为datetime.我的问题是大多数情况下,对象更新的日期与数据库中保存

java - 反序列化 hibernate 和 jackson 中的延迟加载

有没有办法使用id而不是POJO对象来保持LAZY加载和反序列化对象。我有2个通过多对多关系连接的类。像这样publicclassUser{@Id@JsonPropertypubliclongid;@ManyToMany(fetch=FetchType.EAGER,)@JoinTable(name="User_EntityType",joinColumns=@JoinColumn(name="user_id"),inverseJoinColumns=@JoinColumn(name="type_id"))@JsonPropertypublicSettypes;}publicclassT

java - 如何使用非空字段实现 "complete later"功能?

环境Spring/hibernate/MySQL网络应用问题我有一个多步骤表格,每一步都应该可以保存,以便以后完成。但不完整的步骤可能包含模型所需的字段,导致无法保存模型。我已经尝试或想尝试的事情使字段可为空。使用临时表保存不完整的表格但是..解决方案1破坏了数据库设计,而解决方案2将使我的代码膨胀,包含在临时模型和永久模型之间转换的片段,如果我添加在保存后编辑表单的功能,这将变得很难看。如何无缝且优雅地实现完整的后期功能? 最佳答案 另一种选择是在数据库表complete_edit中有一个boolean列。对于保存期间未首先输入的

java - 如何向所有登录用户发送通知

我有一个SpringMVC、SpringThymeleaf、SpringSecurity和HibernateonMySQL应用程序。我的任务是通知所有当前登录的用户是否为他们正在查看的页面保留了新数据,以便用户可以刷新并获取一组新数据。我猜我可以将所有登录的用户存储在一个ApplicationScopesession中,然后以某种方式通知他们。但我以前从未这样做过,也不确定它的安全性。任何人都可以就如何做到这一点提出任何想法吗? 最佳答案 您需要推/拉架构(以启动从服务器端发送消息)。您使用的任何Spring框架都无法做到这一点。查

java - 预配置的 netbeans 项目与 NoSuchMethodError hibernate 和 spring 冲突

所以我试图让我的Java应用程序通过MicrosoftJDBCDriver4.0forSQLServer连接到SQLServer2012,一切似乎都很顺利,但hibernate只是不断返回NullExceptions并且不会在try/catch中执行任何操作(因此NullException),我完全不知道为什么。这是pastebin从netbeans控制台(e.getMessage())运行hibernate(出于这个问题的目的,我使用了一个名为prime_table的示例表)。在pastebin日志中,您会注意到...Feb11,20135:21:04PMorg.hibernate.