草庐IT

Spring-Hibernate

全部标签

java - 组织.hibernate.HibernateException : No TransactionManagerLookup specified on hibernate upgrade

我正在运行spring4.1.4、hibernate4.3.8、atomikos3.9.3、java8、tomcat8。当我启动我的服务器时,我在localhost.log中看到了上述异常,但我不确定除了我已经配置它的地方之外,在哪里配置TransactionManagerLookup。这在升级hibernate之前没有发生,因此很可能是版本控制问题。有谁能帮忙吗?仅供引用:catalina.out显示没有任何用处。只是:SEVERE[localhost-startStop-1]org.apache.catalina.core.StandardContext.startInternal

java - Hibernate引入二级缓存如何解决N+1问题?

在performancesection的Hibernate文档指出:AcompletelydifferentapproachtoproblemswithN+1selectsistousethesecond-levelcache.我不明白它如何解决问题。现实世界的例子和解释可能是什么? 最佳答案 很简单。假设您有以下域模型:@Entity(name="Post")publicclassPost{@Id@GeneratedValue(strategy=GenerationType.AUTO)privateLongid;privateSt

java - 编写客户端在 spring boot 中连接到 websocket

我正在尝试使用springboot制作基于websocketed的服务器/客户端应用程序。服务器接受套接字连接,然后当它收到来自客户端的文本消息时,它会处理它,然后返回一些数据。服务器有一个websocket处理程序,可以正确处理请求。publicclassDataWebSocketHandlerextendsTextWebSocketHandler{privatestaticLoggerlogger=LoggerFactory.getLogger(DataWebSocketHandler.class);privatefinalDataServicedataService;@Autow

java - 非必需的 1 到 1 映射的 Hibernate 投影/延迟加载

我有以下2个类(针对这篇文章进行了缩减)publicclassApplicationVOimplementsSerializable{/****/privatestaticfinallongserialVersionUID=-3314933694797958587L;@Id@GeneratedValue(strategy=GenerationType.IDENTITY)@Column(name="id",unique=true,nullable=false)privateIntegerid;@OneToOne(fetch=FetchType.LAZY,mappedBy="applica

java - Spring 与 JMS + ActiveMQ 集成 : Messages remain in JDBC Message Store after reconnect

我正在尝试使用SpringIntegration和ActiveMQ消息代理配置JMS。我的出站channel应该由JDBC消息存储支持,以防止数据丢失,例如经纪人或我的应用程序离线。到目前为止,我的配置似乎有效,但JDBC消息存储的行为并不像我预期的那样。如果我断开代理,发送到出站channel的消息将按预期保留,但在重新连接后它们保留在数据库中并且不会发送到队列。但是,我在重新连接后发送的更多消息到达队列,如果我重新启动我的应用程序,持久消息也会最终发送......application-context.xml-->context.xml我正在使用EcomxProducerGatew

java - hibernate 中的标准不区分大小写?

我正在使用标准api来检查用户名是否存在。之后我正在检查密码。但用户名不区分大小写。我想让它区分大小写。Criteriacriteria2=session.createCriteria(UserMaster.class);criteria2.add(Restrictions.eq("userName",userName));userDetails=(UserMaster)criteria2.uniqueResult();if(userDetails!=null){//logicgoeshere}我们将不胜感激。 最佳答案 如何比较字

java - 同一接口(interface)的Spring多重实现

我有一个接口(interface)和这个接口(interface)的多个实现类,大约有10个。我有一个像prefix+name+suffix这样的命名约定所以在运行时,我可以添加@AutowiredprivateMapmyImplementations;然后使用myImplementations.get()访问实现类方法。有没有更好的方法来访问这些实现?我只知道哪个暗示。我在运行时需要,更改取决于我收到的消息。 最佳答案 你可以实现BeanFactoryAware类中的接口(interface),然后使用注入(inject)的bea

java - 如何在 Java 中通过反射调用代理(Spring AOP)上的方法?

接口(interface):publicinterfaceManager{Objectread(Longid);}实现此接口(interface)的类:@TransactionalPublicclassManagerImplimplementsManager{@OverridepublicObjectread(Longid){//Implementationhere}}ManagerImpl的一个方面:@AspectpublicclassInterceptor{@Pointcut("execution(public*manager.impl.*.*(..))")publicvoidex

java - 如何删除 Spring 的 RestTemplate 添加的某些 HTTP header ?

我在使用远程服务时遇到问题,我无法控制对使用Spring的RestTemplate发送的请求的HTTP400响应进行响应。不过,使用curl发送的请求会被接受,因此我将它们与通过RestTemplate发送的请求进行了比较。特别是,Spring请求具有headerConnection、Content-Type和Content-Length,而curl请求没有吨。我如何配置Spring不添加这些? 最佳答案 很可能这实际上不是问题所在。我的猜测是您没有指定正确的消息转换器。但这里有一种删除header的技术,因此您可以确认:1。创建自

java - Hibernate @ManyToOne 引用类使用@NaturalId 而不是@Id

我有一些允许我创建关联类的Hibernate/JPA注释(老实说仍然不知道区别)。此类将两个相关的项目组合成一个对象。我最初使用的是@JoinTable,但意识到我需要更多具有关联的元数据,因此不得不将代码转换为另一种对象类型。现在我使用@Id为我的对象标记ID列,并使用@NaturalId(mutable=false)为一个Stringuuid。我的关联类正在使用@ManyToOne并很好地创建表,但是当我查看它时,该表正在使用@Id字段作为映射列。我希望这个关联类使用@NaturalIduuid以便于将关系/关联转移到其他系统。如何让关系使用正确的标识符?作为引用,我的数据库和Ja