问题标签 [hibernate-4.x]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
join - 将许多表加入到地图中
我有 3 个表:用户、角色、项目。此外,我创建了一个将它们链接在一起的表,其结构如下:id、id_user、id_role、id_project。我想在用户类中使用注释创建一个地图:Map <Project, Role>
。
这可能吗?
java - 文件配置 Hibernate 4 和 spring 3
我从 spring 3 hibernate 4 开始使用新技术,并尝试从教程中执行以下示例。每次我得到同样的错误。我使用 Spring 3.1.1 Hibernate 4.1.0。
这是消息,我不明白:
处理 XML 'org/springframework/transaction/interceptor/TransactionInterceptor' 时发生错误。有关详细信息,请参阅错误日志
处理“/Hibernate_spring/src/application_configuration.xml”时发生错误
java - 如何在 Java 6 上将 Hibernate bean 属性标记为 @Transient?
我有一个应用程序被迫托管在仅运行 JRE 6 的提供程序上。
我的 Hibernate bean 上出现编译错误,这些 bean 的属性已用@Transient
. java.beans.Transient
编译错误是由于Java 7 中引入的事实造成的。
有没有办法在没有此注释的情况下将 Hibernate 属性标记为瞬态?最好不必完全迁移到*.hbm.xml
并完全放弃注释?是否有可能以某种方式将此注释接口添加到 JRE 6 的类路径中?
如果您想指出这在 Java 6 上是不可能的,并且我应该切换托管服务提供商,那么请将此作为评论发布,说明这将被否决的答案。
java - 调用 SQL 创建函数时我的条件查询出现问题
在我的Postgres 9.1 数据库中,我有一个由ORM ( Hibernate ) 在以下类li
中映射的表: package ab; @Entity @Table(name = "li", schema = "public") @TypeDef(name="inet", typeClass=InetType.class) public class Li {Li
现在,为了能够为Li
实体类创建条件查询,我创建了它的元模型:
因为我需要在li
从字段中提取的小时后搜索表requestDate
,所以我创建了以下postgres
函数:
到目前为止,一切都经过测试并且效果很好。所以我开始创建我的标准:
当我运行上面的代码时,出现以下错误:
当然,该错误来自该行:
有人可以帮我解决这个问题吗?
java - Hibernate Validation 和 Spring 控制器的一项事务
我正在尝试为 Rest API 实现注册控制器。我已经阅读了很多关于在哪里放置@Transactional 的信息。(不是在 DAO 级别,而是在服务上可能是精心编排的)。在我的用例中,我不仅想要服务,还想要使用相同事务的休眠验证。
这是控制器的代码:
我编写了一个自定义约束注释,它验证参数 registerIO 的属性。这个验证器和 userService.register(registerIO); 访问数据库(检查电子邮件地址是否已被使用)。
因此,我希望这两种方法都使用相同的 Hibernate 会话和事务。
这种方法会导致以下异常:
问题是@Transactional 注释。当我将此注释放在调用数据库的方法中时,一切正常,但有两个事务是启动的。我怀疑当我将它放在 register Method 中时,会在 @Transactional 启动此方法的事务之前执行休眠验证。
我开发了以下功能性解决方法,但我对此并不满意。此代码不使用 @Valid 注释,而是自行调用验证器:
我试着总结一下我的问题:使用 Spring MVC 和 Hibernate-Validation 以及 @Valid 和 @Transactional,如何将整个请求封装到一个事务中?
谢谢 :)
nullpointerexception - Hibernates-4.2 -Initial SessionFactory 创建失败.java.lang.ExceptionInInitializerError cCSCDDDBConnector.sendQuery.173
下面是我的 Java 文件中的代码片段,但是在打印 label:1 之后,它给了我异常。
在标签之后在 Hibernates 中创建配置对象之前出现以下错误:1 Initial SessionFactory creation failed.java.lang.ExceptionInInitializerError cCSCDDDBConnector.sendQuery.173
java.lang.NullPointerException 在 org.hibernate.cfg.Environment.(Environment.java:221) 在 org.hibernate.cfg.Configuration.reset 在 org.hibernate.internal.util.ConfigHelper.getResourceAsStream(ConfigHelper.java:170) (Configuration.java:300) 在 org.hibernate.cfg.Configuration.(Configuration.java:266) 在 org.hibernate.cfg.Configuration.(Configuration.java:270) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method ) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 在 java.lang.reflect.Method.invoke(Method.java:597) 在 sun .rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305) 在 sun.rmi.transport.Transport$1.run(Transport.java:159) 在 sun.rmi.transport.Transport.serviceCall(Transport.java:155) 在 sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535) 的 java.security.AccessController.doPrivileged(Native Method)在 sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790) 在 sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649) 在 java.util.concurrent.ThreadPoolExecutor $Worker.runTask(ThreadPoolExecutor.java:886) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 在 java.lang.Thread.run(Thread.java:619)handleMessages(TCPTransport.java:535) 在 sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790) 在 sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)在 java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 在 java.lang.Thread.run(Thread.java :619)handleMessages(TCPTransport.java:535) 在 sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790) 在 sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)在 java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 在 java.lang.Thread.run(Thread.java :619)线程运行(线程.java:619)线程运行(线程.java:619)
任何人都可以帮我解决这个问题吗?
hibernate - ServiceRegistryBuilder 不能转换为 org.hibernate.service.ServiceRegistry
我正在创建一个简单的 struts2 hibernate4 集成应用程序一些类转换问题。我在互联网上搜索,甚至在这个网站上也搜索过,但我找不到我的问题的确切解决方案。请让我知道如何解决这个问题我是休眠的新手
堆栈跟踪是
我的实体类是 包模型;
连接工厂类是
Empdao 类是
java - 使用 Struts 2 和 Hibernate 在数据库中插入空值
我正在使用 Struts 2 和 Hibernate 集成应用程序在数据库中插入值。但是在从表单字段中插入值之后,只有null
值会保存在数据库中。
这是我的表单 JSP 文件:
employee.jsp
:
实体类Empmodel.java
:
Connectionfactory.java
:
Empdao
是:
Action
类是:
maven - 在 dropwizard-hibernate 中生成模式
我按照dropwizard和hibernate的教程没有问题。现在我的实体中有重要的注释,我希望 hibernate 为我生成表,以及类似的东西。那么,我怎样才能改变hibernate的配置呢?我可以给它一个hibernate.cfg.xml吗?如果可以,我是否必须重新建立连接?
我找到了这个PR,但它似乎还没有公开发布(我的罐子里没有 hibernateBundle.configure )
但也许我正在寻找错误的东西。到目前为止,我只是想设置 hibernate.hbm2dll.auto。毕竟,可能还有其他方法可以在 Dropwizard 中启用休眠表生成……那么,有什么帮助吗?
谢谢你。
编辑:我从另一个角度解决了这个问题,明确地创建模式而不是使用 hbm2ddl.auto。请参阅建议的答案。
spring-mvc - Spring 3,带有通用 DAO 的 Hibernate 4 AutoWired sessionFactory
使用 Spring MVC 3 & Hibernate 4 我得到:
这是相关的弹簧配置:
通用 DAO:
账户DAO:
MVC 控制器:
我已经通过 StackOverflow 和 Google 进行了搜索,但找不到任何有帮助的东西。我试过在 DAOImpl.save(T t) 上使用事务,但它仍然存在同样的问题。