这篇教程主要参考的是https://www.petrikainulainen.net上的一篇文章,用自己的方式实现了一下。之所以特意将步骤帖出来,一方面温故而知新,另一方面也可以避免将来重复造轮子。
1、首先是新建一个最最普通的maven工程,quickstart版本的就可以。然后引入最基本的依赖:
2、由于我们是使用注解实现配置,所以就新建一个PersistenceContext.java来代替通常的application-context.xml:
@Configuration //声明配置类
@ComponentScan(basePackages ="com.em.repository") //将包下的类生成Bean
@PropertySource("application.properties") //扫描配置文件,配置文件主要是连接数据库的信息以及Hibernate的相关配置。不过要注意一点,IDEA中配置文件前是不要加“classpath:”的,而Eclipse中则是需要。
@EnableTransactionManagement //开启SpringData的事务控制
@EnableJpaRepositories(basePackages ="com.em.repository", entityManagerFactoryRef ="entityManagerFactoryBean") //将指定包下的类作为SpringData的实现类,注意entityManagerFactoryRef ="entityManagerFactoryBean"一定要类后面的Bean name一一对应
public classPersistenceContext {
......
}
在PersistenceContext中先把配置文件的值导入到private的字段中:
还是继续看PersistenceContext配置类,接下来我们要指定DataSource:
然后指定EntityManagerFactoryBean来配置DataSource和Hibernate:
最后配一下JPA的事务处理器就OK了:
3、PersistenceContext配置完后,创建一个Employee的实体类:
4、创建EmployeeRepository类,该类里声明了我们对数据库CRUD的实现:
不过这里有一个坑,不能用@RepositoryDefinition(domainClass = EmployeeRepository.class, idClass = Integer.class)来注解,会报Not an managed Type这个错。
正确的方式是这样的:
5、创建Main方法,只有三行:
6、我们的数据库和表是这样的:
7、接着运行Main函数,看看结果:
8、在Main函数中补充相应的insert和update方法:
至此SpringData一个最简单的查询、新增和修改的操作已经完成。最难的还是第一次,第一次成功后,后面无非就是相似的复制和黏贴了。自己动手实现一遍远胜于看十遍教程。今天就到这儿~