使用springboot实现一个访问数据库的查询操作
首先先使用idea链接数据库
在界面的右边有一个database
点击之后新建一个链接 然后选择最后一栏
将滚轮拉到最后
加上时区 serverTimezone Asia/Shanghai
添加完成之后回到 general填写信息
稍等就会发现已经连接上了 表已经成功显示
你可以在这里操作你的数据库
点击这个按钮填写一条信息
填写完之后不要忘记点击这个按钮提交到数据库
等待一会之后就会发现数据库成功插入了
开始查询
首先我们这一次使用比较传统的mvc的设计模式
也就是 controller - service - dao
创建包
创建之后的目录应该是这样子的
controller | 放置前端请求的基址地址/调用业务逻辑 |
---|---|
service | 放置核心业务的接口以及他们的实现类 |
dao | 放置具体业务的操作 |
mapper | 放置操作数据库的sql语句 |
pojo | 放置数据库的实体类 |
创建实体类
在dao下的pojo中创建一个实体类
注意:这里的实体必须类型和名字要和数据库的表一致
tips:
加上@Data注解自动生成对应的get set方法
在pom.xml中加上这个配置
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
然后就可以使用了
创建mapper以及对应的xml文件
在dao包下的mapper 中新建一个接口继承basemapper并且泛型是刚刚创建的实体类
tips: 创建接口
然后在对应的resource中新建刚刚接口对应的xml文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/schema/mybatis-mapper.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.example.dao.mapper.PlaneMapper">
</mapper>
tips: 这里的namespace需要和dao中的mapper接口对应不然会报错
创建对应的查询方法
在service中创建对应的接口和实现类
实现类继承接口
在接口中加上方法并且然继承类实现这个方法
使用@Resource注入mapper容器并且在mapper中新建一个方法searchAllFromTable
返回查询的结果
回到mapper中新建这个方法
到刚刚创建的xml文件填写sql语句
tips: 这里的id是对应mapper中的函数名
resultType对应返回的类型
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/schema/mybatis-mapper.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.example.dao.mapper.PlaneMapper">
<select id="searchAllFromTable" resultType="org.example.dao.pojo.Plane">
select * from plane
</select>
</mapper>
最后注入到ioc容器中
创建controller让用户能够访问到
在controller中创建一个plane并且加入到ioc容器中
该包绑定的基址路径是plane
注入service并且使用其中的业务
tips: 这里注入的应该是接口而不是实现类
在配置类中添加上包扫描的路径
编写配置文件
tips: 这里的连接就填写自己的数据库就可以了
spring:
datasource:
url: jdbc:mysql://ip地址:3306/数据库名?useUnicode=true&characterEncoding=UTF-8&serverTimeZone=UTC
username: 用户名
password: 密码
driver-class-name: com.mysql.jdbc.Driver
启动测试
显示这个就说明启动成功了
打开浏览器测试结果