gpt4 book ai didi

java - 如何找出hibernate创建的对象?

转载 作者:行者123 更新时间:2023-12-01 12:45:35 26 4
gpt4 key购买 nike

我们在项目中使用 hibernate3 和 spring 3。

领域对象的数量相当多,并且一些对象之间的关系是急切的。我正在尝试微调该应用程序。我创建了对象之间的急切获取图,但是,现在我需要找出 hibernate 正在创建哪些对象。

有没有办法找出hibernate创建的域对象?

最佳答案

最好的选择是开始查找为最常点击的页面或需要更多时间加载的页面生成的 SQL 查询。

启用功能,显示 SQL,效果相同。

另外,OneToOneManyToOne 默认情况下是 Eager,让它们变得懒惰。

此外,OneToOne 也存在一些问题,refer here

利用一级、二级和查询缓存。

正在创建索引

还可以尝试使用net.bull.javamelody.MonitoredWithSpring

Java 旋律更改

pom文件中添加以下依赖项

         <dependency>
<groupId>net.bull.javamelody</groupId>
<artifactId>javamelody-core</artifactId>
<version>1.50.0</version>
</dependency>

web.xml文件中添加以下内容

<filter>
<filter-name>monitoring</filter-name>
<filter-class>net.bull.javamelody.MonitoringFilter</filter-class>
<init-param>
<param-name>displayed-counters</param-name>
<param-value>spring,http,sql,error,log </param-value>
</init-param>
<init-param>
<param-name>disabled</param-name>
<param-value>false</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>monitoring</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<listener>
<listener-class>net.bull.javamelody.SessionListener</listener-class>
</listener>


<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
classpath:spring-config/mvc/monitoring-spring.xml
</param-value>
</context-param>

monitoring-spring.xml

<bean id="monitoringAdvisor" class="net.bull.javamelody.MonitoringSpringAdvisor">
<property name="pointcut">
<bean class="net.bull.javamelody.MonitoredWithAnnotationPointcut"/>
</property>
</bean>

Use annotations in controller or services like below
@MonitoredWithSpring(name = "XYZ")

将 url /monitoring 附加到您的上下文路径。然后你就可以看到图表了。

关于java - 如何找出hibernate创建的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24730888/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com