美文网首页
使用JPA实现MySQL数据库基本CRUD操作

使用JPA实现MySQL数据库基本CRUD操作

作者: 李姗姗_8ef1 | 来源:发表于2019-01-02 17:12 被阅读0次

1. 新建项目

选择Web->Web,SQL->JPA&MySQL这三种组件

2. pom.xml

项目中自动添加了spring-data-jpa、mysql-connector-java的支持。

注意使用内部tomcat运行程序,要将spring-boot-starter-tomcat的scope标签注释掉。

3. 配置数据源以及JPA

新建application.yml文件,配置数据库连接信息以及JPA

需要注意yml配置文件的写法,下面提我遇到的几点:

1.标签与内容之间有空格。例如“url:”与后面的连接字符串之间是有空格的,“url:”显示蓝色即为正确

2.要注意每一项配置的引用关系。例如要输入username时,智能提示了很多选项,而我要用的是spring.datasource下的username,选择第一个符合的配置。

3.SpringBoot的版本不同,写法可能有变化,我用的是2.1.1

一开始按照网上的方法写了yml配置文件,后来程序运行时出现WARN,查找解决方案更改至上面图片中的写法

出现告警的有时间(serverTimezone=UTC),新版本写法改变(driver-class-name: com.mysql.jdbc.Driver),以及open-in-view的设置。

有些告警可能并不影响功能,但我觉得作为一个初学者,尽可能解决一些提示出来的告警,也是一种积累。

4. CRUD

1.我的本地数据库表结构

2.创建实体

get-set对可以鼠标右键->Generate->Getter and Setter,所有属性全选,就自动生成了。

这部分需要注意,上图中可以见到,我创建的表、字段都是包含大小写的形式,但在代码中,统一写成小写,不会出错。

之前Table&Column完全按照数据库的大小写来填写,报错找不到表或字段(例如报错java.sql.SQLSyntaxErrorException: Table 'workspace.group_info' doesn't exist),Hibernate将GroupInfo解析成了group_info,导致找不到该表,具体原因未明。

3.创建JPA

4.编写Controller,编写数据库查询、添加、更新、删除的方法

5.项目整体结构如图:

5.运行测试

首先,运行信息没有错误、没有告警

1.查询测试:127.0.0.1:8080/user/list

2.添加测试:127.0.0.1:8080/user/save?groupName=workspace

添加执行url并没有写groupID的值,原因是实体类中@GeneratedValue(strategy = GenerationType.IDENTITY),主键设置为自增长

3.更新测试:127.0.0.1:8080/user/save?groupID=2&groupName=utility

4.删除测试:127.0.0.1:8080/user/delete?id=1

相关文章

网友评论

      本文标题:使用JPA实现MySQL数据库基本CRUD操作

      本文链接:https://www.haomeiwen.com/subject/mynalqtx.html