Eclipse, SpringBoot
通过Spring Initializr 创建一个基于 SpringBoot 的应用程序必须选择的依赖有 Lombok (简化代码开发),Spring Data JPA (JPA 核心依赖),H2 Database (一款内存数据库),将工程导出后,导入到 Eclipse 中。
修改数据库相关的配置,并创建实体类图1示:配置表的生成策略为自动创建和删除,并且在控制台打印出格式化后的SQL语句。图2示:创建实体类,并与一张数据库表进行关联
创建实体类对应的 Repository 接口 实体类的 Repository 接口即用于操作数据库的接口,其继承关系如下:1. 首先继承Spring Data JPA 提供的 PagingAndSortingRepository 接口,顾名思义,该接口提供了分页排序的支持 2. PagingAndSortingRepository 接口又继承了 CrudRepository ,从而提供基础的增删改查功能3. CrudRepository 最终继承了 Repository 接口,即标识这个类用于操作数据库Spring Data JPA 会自动为我们创建的实体类 Repository 接口创建实现类对象,并添加到Spring的 bean 容器中管理,我们可以直接使用。
测试基本的增加数据的功能1. 只需在启动类上使用注解 @EnableJpaRepositories,就可以使用刚刚定义的实体类接口了(Spring Data JPA 会自动为其创建实现类)!2. 启动类实现 CommandLineRunner 接口,并实现其 run 方法(该方法在Spring框架启动完成后,自动执行),在 run 方法中,调用实体类的Repository接口对象完成增加数据的功能。3. 运行启动类,从控制台输出的 SQL 中,可以看到执行了两条 insert 操作!
测试基本的查询数据的功能通过实体类Repository接口的 findAll(Sort) 可以实现全量查询并排序,该方法也是 Spring Data JPA 为我们默认提供的。默认提供的除了全量查询外,还有一个 findById 方法,即根据主键查询特定记录,具体使用方法可自行探索。
默认提供的其他方法我们的实体类Repository接口通过继承Spring Data JPA 框架提供的 PagingAndSortingRepository 接口,还同时拥有了 delete (删除)和 count (统计记录数量)等方法,并通过 save 方法保存已存在记录实现更新操作。