1、前言

springboot自己集成JDBC和JPA,使用的时候只需要配置相关的文件就好了。JDBC模板使用起来比较麻烦不是很常用,JPA用起来相对容易一点。

2、开发准备


我们两种方式开发,一种就是使用原来的maven直接引入依赖去开发,以另一种就是使用STS插件建立springboot项目,勾选JPA和mysql,项目建立的时候就会自动导入依赖。
<!-- 数据库驱动 --> <dependency> <groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId> </dependency> <!-- springdata jpa
--> <dependency> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId> </dependency>
3、建立实体类
import java.util.Date; import javax.persistence.Entity; import
javax.persistence.GeneratedValue; import javax.persistence.Id; @Entity //注意包名
@Table(name="user_info") //自动建表,与数据库对应 public class UserInfo { @Id
@GeneratedValue private Integer id; private String name; private Integer age;
private String sex; private String job; private Date birthday; private Date
createdTime; private Date updateTime;              // ... 省去setter和getter方法 }
4、yml配置
# server server: port: 8081 servlet: context-path: /boot # database spring:
datasource: url: jdbc:mysql://127.0.0.1:3306/test driver-class-name:
com.mysql.jdbc.Driver username: root password: root # jpa jpa: hibernate:
ddl-auto: update # 建表策略 show-sql: true #显示SQL语句
5、持久层开发
import org.springframework.data.jpa.repository.JpaRepository; import
ws.simonking.springboot.bean.UserInfo; /*     必须继承JpaRepository    
1、不使用注解写SQL,接口方法命名必须按照JPA规则     2、自定义接口,使用@Query注解。具体可参考官方文档 */ public
interface UserInfoRepository extends JpaRepository<UserInfo, Integer> {
UserInfo findUserInfoById(Integer id); }
6、表现层的开发
@RequestMapping("/getUserInfo") public UserInfo getUserInfo() {         /*
            这里有一个大坑:使用getOne()的方法,可以查到数据。但是无法默认转化成JSON数据,返回接口直接报错         */
        //UserInfo userInfo = userInfoRepository.getOne(1); UserInfo userInfo =
userInfoRepository.findUserInfoById(1); return userInfo; }
7、效果



8、参考文献

spring data jpa
官网:https://docs.spring.io/spring-data/jpa/docs/current/reference/html/






友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:ixiaoyang8@qq.com
QQ群:637538335
关注微信