Spring Data JPA 如何使用EclipseLink
来源:互联网 发布:快速移动文件软件 编辑:程序博客网 时间:2024/05/21 08:00
不见得hibernate在任何场景都做的那么完美,@ManyToOne(fetch=FetchType.LAZY) 的时候就不是那个样子了。
如何挂入EclipseLink呢,spring data jpa都集成hibernate了,只需要做如下小小调整就OK了。
1.变更pom.xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
<exclusions>
<exclusion>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>eclipselink</artifactId>
<version>2.5.2</version>
</dependency>
这样就好了。
2.增加一个配置文件
import java.util.HashMap;
import java.util.Map;
import javax.sql.DataSource;
import org.springframework.beans.factory.ObjectProvider;
import org.springframework.boot.autoconfigure.orm.jpa.JpaBaseConfiguration;
import org.springframework.boot.autoconfigure.orm.jpa.JpaProperties;
import org.springframework.context.annotation.Configuration;
import org.springframework.orm.jpa.vendor.AbstractJpaVendorAdapter;
import org.springframework.orm.jpa.vendor.EclipseLinkJpaVendorAdapter;
import org.springframework.transaction.jta.JtaTransactionManager;
@Configuration
public class CustomJpaConfiguration extends JpaBaseConfiguration {
protected CustomJpaConfiguration(DataSource dataSource, JpaProperties properties,
ObjectProvider<JtaTransactionManager> jtaTransactionManagerProvider) {
super(dataSource, properties, jtaTransactionManagerProvider);
}
@Override
protected AbstractJpaVendorAdapter createJpaVendorAdapter() {
return new EclipseLinkJpaVendorAdapter();
}
@Override
protected Map<String, Object> getVendorProperties() {
final Map<String, Object> ret = new HashMap<String, Object>();
ret.put("eclipselink.weaving", "false");
ret.put("eclipselink.ddl-generation", "create-or-extend-tables");
return ret;
}
}
3.最后调整application.properties
#Spring DataSource
spring.datasource.url = jdbc:mysql://localhost:3306/test
spring.datasource.username = root
spring.datasource.password = 123456
spring.datasource.testWhileIdle = true
spring.datasource.validationQuery = SELECT 1
#JPA
spring.jpa.show-sql = true
需要增加database其他参数的,另行调整就好。
三步调整到eclipselink上来了。Everything is OK!
- Spring Data JPA 如何使用EclipseLink
- Eclipselink JPA 使用小结
- Spring data JPA 如何使用delete
- Spring Data JPA 使用
- spring-data-jpa 使用
- spring data jpa使用
- spring-data-jpa 使用
- Spring Data JPA使用
- spring-data-jpa 使用
- 关于Spring data JPA 如何使用条件查询。
- 使用 Spring Data JPA 简化 JPA 开发
- 使用 Spring Data JPA 简化 JPA 开发
- 使用 Spring Data JPA 简化 JPA 开发
- 使用 Spring Data JPA 简化 JPA 开发
- 使用 Spring Data JPA 简化 JPA 开发
- 使用 Spring Data JPA 简化 JPA 开发
- 使用 Spring Data JPA 简化 JPA 开发
- 使用 Spring Data JPA 简化 JPA 开发
- springmvc/mybatis/maven环境配置1
- 数据结构-06 图
- CentOS/Ubuntu一键安装IPSEC/IKEV2 VPN服务器
- False coin
- c++开篇——自引用指针this
- Spring Data JPA 如何使用EclipseLink
- iOS架构师之路:慎用继承
- TensorFlow 学习(二)—— tf.Session() 与 tf.Session().run()
- Javascript模块化编程(一):模块的写法
- 详谈内存管理技术(三)、线程模型
- 生成TXT文档到U盘中
- codevs1086 栈 catelan数
- 编程第四天
- Python NetworkX库实现复杂网络