Spring Data JPA
首先,让IPersonDAO接口继承Repository<T, ID extends Serializable>接口
public interface IPersonDao extends Repository<Person,Long> {
void save(Person person);
//按照SpringDataJPA的查询方法命名规范定义查询方法
Person findById(Long id);
}
其次,在applicationContext.xml中做如下配置
<jpa:repositories base-package="cn.wolfcode._02_spring_data_jpa" entity-manager-factory-ref="entityManagerFactory"
transaction-manager-ref="transactionManager"/>
最后,执行对findById方法的测试,结果如下
Hibernate: select person0_.id as id1_0_, person0_.age as age2_0_, person0_.name as name3_0_
from Person person0_ where person0_.id=?
Person(id=1, name=Neld, age=10)
我们发现,在并没有编写dao的实现类的情况下,仍然完成了数据的查询操作,那么Spring Data JPA是如何完成的呢?接下来分析分析
- applicationContext.xml中配置jps:repositor