spring-data-jpa 多数据源
This commit is contained in:
@@ -22,12 +22,9 @@ import java.util.Map;
|
||||
@EnableJpaRepositories(
|
||||
entityManagerFactoryRef="entityManagerFactoryPrimary",
|
||||
transactionManagerRef="transactionManagerPrimary",
|
||||
basePackages= { "com.didispace.domain.one" })
|
||||
basePackages= { "com.didispace.domain.p" }) //设置Repository所在位置
|
||||
public class PrimaryConfig {
|
||||
|
||||
@Autowired
|
||||
private JpaProperties jpaProperties;
|
||||
|
||||
@Autowired @Qualifier("primaryDataSource")
|
||||
private DataSource primaryDataSource;
|
||||
|
||||
@@ -43,11 +40,14 @@ public class PrimaryConfig {
|
||||
return builder
|
||||
.dataSource(primaryDataSource)
|
||||
.properties(getVendorProperties(primaryDataSource))
|
||||
.packages("com.didispace.domain.one") //设置实体类所在位置
|
||||
.packages("com.didispace.domain.p") //设置实体类所在位置
|
||||
.persistenceUnit("primaryPersistenceUnit")
|
||||
.build();
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private JpaProperties jpaProperties;
|
||||
|
||||
private Map<String, String> getVendorProperties(DataSource dataSource) {
|
||||
return jpaProperties.getHibernateProperties(dataSource);
|
||||
}
|
||||
|
||||
@@ -21,12 +21,9 @@ import java.util.Map;
|
||||
@EnableJpaRepositories(
|
||||
entityManagerFactoryRef="entityManagerFactorySecondary",
|
||||
transactionManagerRef="transactionManagerSecondary",
|
||||
basePackages= { "com.didispace.domain.two" })
|
||||
basePackages= { "com.didispace.domain.s" }) //设置Repository所在位置
|
||||
public class SecondaryConfig {
|
||||
|
||||
@Autowired
|
||||
private JpaProperties jpaProperties;
|
||||
|
||||
@Autowired @Qualifier("secondaryDataSource")
|
||||
private DataSource secondaryDataSource;
|
||||
|
||||
@@ -40,11 +37,14 @@ public class SecondaryConfig {
|
||||
return builder
|
||||
.dataSource(secondaryDataSource)
|
||||
.properties(getVendorProperties(secondaryDataSource))
|
||||
.packages("com.didispace.domain.two")
|
||||
.packages("com.didispace.domain.s") //设置实体类所在位置
|
||||
.persistenceUnit("secondaryPersistenceUnit")
|
||||
.build();
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private JpaProperties jpaProperties;
|
||||
|
||||
private Map<String, String> getVendorProperties(DataSource dataSource) {
|
||||
return jpaProperties.getHibernateProperties(dataSource);
|
||||
}
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.didispace.domain;
|
||||
package com.didispace.domain.p;
|
||||
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.Entity;
|
||||
+1
-8
@@ -1,4 +1,4 @@
|
||||
package com.didispace.domain;
|
||||
package com.didispace.domain.p;
|
||||
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.data.jpa.repository.Query;
|
||||
@@ -13,12 +13,5 @@ import org.springframework.data.repository.query.Param;
|
||||
*/
|
||||
public interface UserRepository extends JpaRepository<User, Long> {
|
||||
|
||||
User findByName(String name);
|
||||
|
||||
User findByNameAndAge(String name, Integer age);
|
||||
|
||||
@Query("from User u where u.name=:name")
|
||||
User findUser(@Param("name") String name);
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
package com.didispace.domain.s;
|
||||
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.GeneratedValue;
|
||||
import javax.persistence.Id;
|
||||
|
||||
/**
|
||||
* @author 程序猿DD
|
||||
* @version 1.0.0
|
||||
* @date 16/3/21 下午3:35.
|
||||
* @blog http://blog.didispace.com
|
||||
*/
|
||||
@Entity
|
||||
public class Message {
|
||||
|
||||
@Id
|
||||
@GeneratedValue
|
||||
private Long id;
|
||||
|
||||
@Column(nullable = false)
|
||||
private String name;
|
||||
|
||||
@Column(nullable = false)
|
||||
private String content;
|
||||
|
||||
public Message(){}
|
||||
|
||||
public Message(String name, String content) {
|
||||
this.name = name;
|
||||
this.content = content;
|
||||
}
|
||||
|
||||
public Long getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(Long id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public String getContent() {
|
||||
return content;
|
||||
}
|
||||
|
||||
public void setContent(String content) {
|
||||
this.content = content;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
package com.didispace.domain.s;
|
||||
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
|
||||
|
||||
/**
|
||||
* @author 程序猿DD
|
||||
* @version 1.0.0
|
||||
* @date 16/3/23 下午2:34.
|
||||
* @blog http://blog.didispace.com
|
||||
*/
|
||||
public interface MessageRepository extends JpaRepository<Message, Long> {
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user