Spring Boot入门系列九(SpringBoot 使用Spring Data JPA 连接Mysql数据库)

本文详细介绍了如何在SpringBoot项目中整合SpringDataJPA进行数据库操作,包括搭建环境、实体类定义、仓库接口创建及服务层实现,最后通过控制类进行测试,为读者提供了一个完整的实战案例。

SpringBoot 整合 Spring Data JPA 实现数据库操作的项目

最近在学习Spring Data JPA的相关知识,感觉还是很不错的,提供了很多方法,包括CRUD和分页排序,基本能够满足现实的功能需求.
它一共提供了四个接口:

  1. Repository: 仅仅是一个标识,表明任何继承它的均为仓库接口类,方便Spring自动扫描识别
  2. CrudRepository: 继承Repository,实现了一组CRUD相关的方法
  3. PagingAndSortingRepository: 继承CrudRepository,实现了一组分页排序相关的方法
  4. JpaRepository: 继承PagingAndSortingRepository,实现一组JPA规范相关的方法
  5. JpaSpecificationExecutor: 比较特殊,不属于Repository体系,实现一组JPA Criteria查询相关的方法

一、在mysql中的test库中建立user表,并插入两条数据,为后续做好准备

    

二、在pom.xml中添加依赖

<!-- spring data JPA -->
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>

  

三、建立与数据库表对应的实体OyUser

/**
 * @author oyc
 * @Description:用户实体类
 * @date 2018/7/8 22:51
 */
@Entity
@Table(name = "oy_user")
public class OyUser {
    //用户id
    @Id
    private String id;
    //用户名称
    private String name;
    //户年龄
    private String age;
    //用户性别
    private String sex;
   //省略了getter和setter方法  
}

  

四、创建OyUserRepository接口,继承pring Data JPA 的JpaRepository,用于实现对数据库的操作

/**
 * 用户JPA接口类,继承JPA的JpaRepository,利用Spring Data JPA 的JpaRepository实现数据的操作
 *
 */
public interface OyUserRepository extends JpaRepository<OyUser,String> {
}

  

五、创建OyUserServer和OyUserServerImpl

用户服务接口类OyUserService.java

/**
 * @author oyc
 * @Title:
 * @Description:用户服务接口类
 * @date 2018/7/1615:06
 */
public interface OyUserService {
    List<OyUser> getUserList();
}

用户服务实现类OyUserServiceImpl.java

/**
 * @author oyc
 * @Description: 用户服务实现类
 * @date 2018/7/1 615:07
 */
@Service
public class OyUserServerImpl implements OyUserService {
    /**
     * 依赖注入,注入用户JPA接口类
     */
    @Resource
    private OyUserRepository oyUserRepository;

    @Override
    public List<OyUser> getUserList() {
        List<OyUser> list = oyUserRepository.findAll();
        return list;
    }
}

  

  

六、用户控制类

/**
 * @author oyc
 * @Title:
 * @Description:用户控制类
 * @date 2018/7/1615:10
 */
@Controller
@RequestMapping("/user")
public class OyUserController {
    /**
     * 依赖注入,注入用户服务类
     */
    @Resource
    private OyUserService oyUserService;

    /**
     * 查询用户列表
     * @param model
     * @return
     */
    @RequestMapping("list")
    public String list(ModelMap model){
        List<OyUser> users = oyUserService.getUserList();
        model.addAttribute("users",users);
        return "user";
    }
}

  

七、测试

  

 源码:https://github.com/oycyqr/SpringBootJPA

转载于:https://www.cnblogs.com/oycyqr/p/9318120.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值