Spring Data JPA,基础学习笔记.

转载 2013年02月18日 20:13:03
P.S. 最好先学习 JPA 方面的知识....在这里使用的是 Hibernate .
也已经使用了一段时间,看什么都不如看官方文档,我这里也只是写个笔记记录一下,如果能帮助到其他人,很开心 .算是个 demoshow 吧.这里也只写了一些我觉得比较有用的地方.其他一些使用知识,请参见官方文档:http://static.springsource.org/spring-data/data-jpa/docs/current/reference/html/

1. Spring 配置简述.

Java代码 复制代码 收藏代码
  1. <jpa:repositories base-package="org.e.test.**.dao" entity-manager-factory-ref="entityManagerFactory" transaction-manager-ref="transactionManager" />
  2. <tx:annotation-driven transaction-manager="transactionManager" />
  3. <bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
  4. <property name="dataSource" ref="dataSource" />
  5. <property name="jpaVendorAdapter" ref="hibernateJpaVendorAdapter" />
  6. <property name="packagesToScan">
  7. <list>
  8. <value>org.e.test.**.model</value>
  9. </list>
  10. </property>
  11. <property name="jpaProperties">
  12. <props>
  13. <prop key="hibernate.dialect">${hibernate.dialect}</prop>
  14. <prop key="hibernate.show_sql">${hibernate.show_sql}</prop>
  15. <prop key="hibernate.format_sql">true</prop>
  16. .....etc
  17. </props>
  18. </property>
  19. </bean>
  20. <bean id="hibernateJpaVendorAdapter" class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
  21. <property name="databasePlatform" value="${hibernate.dialect}" />
  22. </bean>
  23. <bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
  24. <property name="entityManagerFactory" ref="entityManagerFactory" />
  25. </bean>


2.DAO


@Transactional 方面基本不变,该怎么用怎么用..

假设已有 Entity 类 User
Java代码 复制代码 收藏代码
  1. @Entity
  2. @Table(name = "t_user")
  3. public class User
  4. {
  5. @Id
  6. @Column(name = "user_id")
  7. @GeneratedValue(strategy = GenerationType.AUTO)
  8. private long userId;
  9. private String username;
  10. private String password;


2.1. DAO 类.
可以继承的接口有:

CRUD 功能的接口:
CrudRepository : org.springframework.data.repository.CrudRepository<T, ID>
CRUD + 分页的接口:
PagingAndSortingRepository : org.springframework.data.repository.PagingAndSortingRepository<T, ID>

例如:
Java代码 复制代码 收藏代码
  1. public interface UserDao extends PagingAndSortingRepository<User, Long>



2.2 DAO 方法

已经定义了 UserDao 接口.不用实现里面的任何方法,spring 会帮你生成对应的代理类.也不用加 @Repository annotation,因为已经继承了 Repository 接口.

对于已有的方法就不做多的说明了,看了方法名就会用的.使用的时候在 Service 层注入对应的 UserDao 代理对象即可. 

Spring Data JPA 实战(一)-体系结构及基本配置

Spring Data JPA原理与应用(一) 一.Spring DataJPA介绍 使用Spring Data Repository将程序员从大量重复繁杂的数据库层操作中解放啊出来。 二.Repos...
  • sunhuiliang85
  • sunhuiliang85
  • 2017年03月05日 23:29
  • 441

SpringDataJPA学习记录(一)--环境配置

SpringDataJPA学习记录(一)–环境配置标签(空格分隔): springJPA1.maven配置首先需要spring相关架包,其实spring-data-jpa里面已经依赖了,如果你想用自己...
  • u012706811
  • u012706811
  • 2016年11月18日 16:09
  • 2175

Spring Data jpa搭建+配置详解

我们都知道Spring是一个非常优秀的JavaEE整合框架,它尽可能的减少我们开发的工作量和难度。   在持久层的业务逻辑方面,Spring开源组织又给我们带来了同样优秀的Spring Data...
  • u012841509
  • u012841509
  • 2014年04月16日 09:53
  • 3654

Spring data jpa 的事务与缓存优化

各配置文件如下: applicationContext.xml
  • wangyan199366
  • wangyan199366
  • 2015年11月18日 08:50
  • 3239

Spring Data JPA开发手册——1.介绍

《Spring Data JPA开发手册——1.介绍》作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs我发现网上几乎没有讲述Spring Data JPA原...
  • chszs
  • chszs
  • 2015年01月15日 10:15
  • 3899

手把手教你从最基本的Java工程搭建SpringMVC+SpringDataJPA+Hibernate(含源码下载)

转载请注明出处:http://blog.csdn.net/anxpp/article/details/51415366,谢谢!     本文会介绍从一个最基本的java工程,到Web工程,到集成Sp...
  • anxpp
  • anxpp
  • 2016年05月15日 02:54
  • 29557

Spring Data JPA 指南——整理自官方参考文档

基本使用方法 自定义Repository 定义查询方法 查询方法建立 特殊参数处理 限制查询结果数量 流式查询结果 异步查询结果 关键字 使用 Query 基本用法 使用 LIKE 表达式 使用原生S...
  • u014633852
  • u014633852
  • 2016年09月21日 14:10
  • 8655

SpringData Jpa、Hibernate、Jpa 三者之间的关系

JPA规范与ORM框架之间的关系是怎样的呢? JPA规范本质上就是一种ORM规范,注意不是ORM框架——因为JPA并未提供ORM实现,它只是制订了一些规范,提供了一些编程的API接口,但具体实现则...
  • u014421556
  • u014421556
  • 2016年09月23日 10:15
  • 12914

Spring Data JPA实战(二)-扩展开发

Spring Data JPA实战(二)-扩展开发 在编写 Spring Data JPA 的 DAO 时, 只需在接口中按规约提供方法的声明即可。 而有些业务实现无法通过声明方法或编写简单 SQL...
  • sunhuiliang85
  • sunhuiliang85
  • 2017年03月05日 23:47
  • 777

jpa Query查询,时间查询,in查询(Spring Data Jpa 3)

记录下原来用的jpa Query查询; 解决问题:使用Query从entry查询数据填充到DTO;先看entry:package com.test.entity;@Entity @Data publi...
  • WANTAWAY314
  • WANTAWAY314
  • 2016年10月20日 14:40
  • 45919
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Spring Data JPA,基础学习笔记.
举报原因:
原因补充:

(最多只允许输入30个字)