我看到代码在使用“Simple Load Timer Weaver”时会在spring xml文件中声明entityManager bean,如下所示:
<bean id="entityManager" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
<property name="persistenceXmlLocation" value="classpath:./META-INF/persistence.xml" />
<property name="persistenceUnitName" value="testDB" />
<property name="dataSource" ref="dataSource" />
<property name="loadTimeWeaver">
<bean class="org.springframework.instrument.classloading.SimpleLoadTimeWeaver" />
</property>
</bean>
我无法在此确定SimpleLoadTimeWeaver类的用途?任何身体能让我知道职业选手和职业选手吗?在这里使用课程的缺点。
答案 0 :(得分:2)
澄清 weaver 是什么:
使用AOP,您可以定义在代码中定义的点调用的逻辑,例如每当调用一个setter时。由于该逻辑是在您希望以这种方式装饰的类之外开发的(您不希望自己将该逻辑放入所有 setter),因此运行时需要一种方法来知道应该执行此操作。 / p>
因此,在某个时间点(编译时或加载时),AOP逻辑被添加到它应用的代码中的所有点,并生成(和编译)类代理。这个过程称为编织,因为您的原始代码和您定义的AOP逻辑是编织在一起的。
有关Spring AOP的更多信息,请查看此处:http://static.springsource.org/spring/docs/2.5.x/reference/aop.html
答案 1 :(得分:0)