1. 依赖
1 | <dependency> |
2. 实体类
@Entity
:说明这个类是实体类,并且使用默认的ORM
规则,即类名对应数据库表中表名,类的字段名即表中的字段名。@Table
:替换默认的ORM
规则。表名为t_user
。@Id
:主键@GeneratedValue(strategy = GenerationType.IDENTITY)
:主键的自增策略。这里使用了GenerationType.IDENTITY
,表明主键由数据库自动生成(主要是自动增长型)。strategy 有四种:
- TABLE:使用一个特定的数据库表格来保存主键。
- SEQUENCE:根据底层数据库的序列来生成主键,条件是数据库支持序列。
- IDENTITY:主键由数据库自动生成(主要是自动增长型)
- AUTO:主键由程序控制。
@Column:将类的字段名与数据库表中的字段名相对应。
1 |
|
3. 配置文件
1 | 8089 = |
4. 运行程序
在控制台上输出了建表语句。
查看数据库,可以看到已经有了t_user表,并且表的字段名和实体类代码中@Column注解所标注的相同。
5. 创建操作数据库的 Repository 接口
1 |
|
继承了 JpaRepository<Person, Long>
接口。查看 JpaRepository<T, ID>
的源码,它已经提供好了增删改查、分页查询以及根据条件查询等方法,所以直接继承即可。
6. 使用JPA提供的方法
再需要操作数据库的地方直接使用UserDao
即可
1 |
|
7. 自定义方法
自定义的方法需要写到UserDao.java
中,
1 |
|
在controller中调用自定义的方法
1 |
|
参考: