jpa基本操作及Mysql8的配置

决定向郑清大佬学习,把所学的记录下来,作为记忆力差的我此法甚好,感觉哈。

首先在说jpa前,之前公司一直使用的Mysql5.1版本(估计是在docker里已经配置好了的),我自己的机子因为年轻,安装的Mysql8,讲道理,一时间要改配置还真不习惯。


MySQL8配置注意

pom.xml

<!--Mysql8驱动-->
<dependency>
     <groupId>mysql</groupId>
     <artifactId>mysql-connector-java</artifactId>
     <version>8.0.13</version>
</dependency>

application.yml

spring:
  datasource:
    url: jdbc:mysql://127.0.0.1:3306/study?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=CONVERT_TO_NULL&serverTimezone=UTC&useSSL=true
    username: root
    password: 123456
    driver-class-name: com.mysql.cj.jdbc.Driver

在配置文件yml或者properties里Mysql8要注意以下几点:

  • zeroDateTimeBehavior=CONVERT_TO_NULLCONVERT_TO_NULL而不是convertToNull,否则要报错)
  • serverTimezone=UTC&useSSL=true也要添加
  • driver-class-name: com.mysql.cj.jdbc.Driver而不是com.mysql.jdbc.Driver

jpa基础操作使用

这里只展示对于一个User实体存入数据库和查询表的基本操作

application.yml

  ##jpa极简版
  jpa:
    properties:
      hibernate:
        hbm2ddl:
          auto: update
数据库结构

数据库结构

User
@Entity
@Data
@Table(name="user")
public class User {

    public  User(Integer id,String username, String password){
        this.username=username;
        this.password=password;
    }
    public  User(){ };

    @Id
    @Column(name = "id")
    private int id;

    @Column(name="username")
    private String username;

    @Column(name="password")
    private String password;
}

由于只是demo就没有使用service来操作mapper

UserMapper
@Repository
public interface UserMapper extends JpaRepository<User, Integer> {

}
SampleController
@RestController
public class SampleController {

    @Autowired
    UserMapper userMapper;

    @ResponseBody
    @RequestMapping("/")
    public String home(){
          /*添加数据*/
//        User user=new User(1,"jili","0001");
//        userMapper.saveAndFlush(user);

        /*查询数据 */
        List <User> list=userMapper.findAll();
        return  list.toString();
    }

}
结果展示

页面显示


每天向大佬学习,每天进步一点点,成为合格的守门人!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值