zoukankan      html  css  js  c++  java
  • sping data jpa 如何注入的entitymanager

    public class JpaRepositoryFactoryBean<T extends JpaRepository<S, ID>, S, ID extends Serializable> extends
    		TransactionalRepositoryFactoryBeanSupport<T, S, ID> {
    
    	private EntityManager entityManager;
    
    	/**
    	 * The {@link EntityManager} to be used.
    	 * 
    	 * @param entityManager the entityManager to set
    	 */
    	@PersistenceContext
    	public void setEntityManager(EntityManager entityManager) {
    
    		this.entityManager = entityManager;
    	}
    


    可以看到entityManager是通过PersistenceContext注解获取的。

    2.如果要是希望在spring环境中使用@PersistenceContext和@PersistenceUnit,则在application.xml中配置

    <bean class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor"/>
    

    特别注意的是 :如果你在application.xml中配置过context:annotation-config" 或者 "context:component-scan tag,则会默认register一个默认的PersistenceAnnotationBeanPostProcessor。所以如果你要是希望自定义PersistenceAnnotationBeanPostProcessor。则Remove or turn off the default annotation configuration,具体怎么操作,正在研究,不好意思

    可以通过这个类指定多个"persistenceUnits"

     <bean class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor">
       <property name="persistenceUnits">
         <map/gt;
           <entry key="unit1" value="persistence/unit1"/>
           <entry key="unit2" value="persistence/unit2"/>
         </map/gt;
       </property>
     </bean>
    

     也可以指定多个persistenceContexts

     <bean class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor">
       <property name="persistenceContexts">
         <map/gt;
           <entry key="unit1" value="persistence/context1"/>
           <entry key="unit2" value="persistence/context2"/>
         </map/gt;
       </property>
     </bean>
    
  • 相关阅读:
    MySQLFront导入SQL文件报#1113错误解决
    LNMP1.3一键安装Linux环境,配置Nginx运行ThinkPHP3.2
    币胜网虚拟货币交易平台安装说明
    windows服务器详细安全设置
    WINDOWS SERVER 2008远程桌面端口修改方法
    mac终端ssh连接服务器 空闲的时候 连接断开
    FTP软件发送"AUTH TLS"提示 无法连接到服务器
    LNMP状态管理命令
    lnmp1.4环境FTP服务器的安装和使用
    springCloud
  • 原文地址:https://www.cnblogs.com/beiyeren/p/2870856.html
Copyright © 2011-2022 走看看