SpringBoot-数据库的查询
SpringBoot-数据库的CRUD创建Springboot项目添加一下链接数据库需要的的依赖配置Springboot核心配置文件测试数据库能否链接成功功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式
·
SpringBoot-数据库的CRUD
创建Springboot项目
我们要在web页面上展示,需要勾选web,或者不勾可以直接在pom文件里添加web依赖也是一样的,这个勾选就是帮我们直接添加依赖不需要在pom中导入
添加一下链接数据库需要的的依赖
<!--Mysql-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.25</version>
</dependency>
<!--mybatis和SpringBoot整合-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.4</version>
</dependency>
配置Springboot核心配置文件
添加一个application.yml
配上数据库链接
spring:
datasource:
username: root # 链接数据库的用户名
password: 123456 #密码
# url: jdbc:mysql://主机:端口号/数据库名?后面就是编码格式,mysql 8+需要时区,安全配置,一般情况不会变
url: jdbc:mysql://localhost:3306/ssmbuild?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2b8&allowPublicKeyRetrieval=true
server:
port: 8001 #服务端口号 如tomcat 8080 不配默认8080
测试数据库能否链接成功
在test里面测试
package com.example.demo19;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.SQLException;
@SpringBootTest
class Demo19ApplicationTests {
@Autowired
DataSource dataSource;
@Test
void contextLoads() throws SQLException {
//获得数据库连接
Connection connection = dataSource.getConnection();
System.out.println(connection +"===============================");
//关闭
connection.close();
}
}
运行一下 没有报错就成功了(报错了的话 看下数据库的url 和依赖有没有导入成功)
编写数据库的实体类Pojo层
在主程序文件里面建文件夹
这里为了偷懒 用 lombook 依赖 导入pom中
<!--lombok-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.20</version>
</dependency>
编写数据库实体类
package com.example.demo19.pojo;
import lombok.AllArgsConstructor;//有参
import lombok.Data;
import lombok.NoArgsConstructor;//无参
@AllArgsConstructor
@NoArgsConstructor
@Data
public class Pojo {
private int id;//这里数据库的字段要对应
private String name;
private String pwd;
}
编写我们的dao层
package com.example.demo19.dao;
import com.example.demo19.pojo.Pojo;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;
import java.util.List;
@Mapper
@Repository //让spring托管
public interface Dao {
public boolean addDao(Pojo dept);//这是我们数据库的实体类
List<Pojo> queryUserList();//写一个查询全部 返回值为list集合
}
配置mapper.xml文件
新建一个xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.demo19.dao.Dao"><!--这个是dao接口的路径-->
<!--id一定要和Dao 查询接口的命名一致 resultType是返回类型为实体类Pojo-->
<select id="queryUserList" resultType="Pojo">
select * from user <!--查询语句-->
</select>
</mapper>
配置service层
package com.example.demo19.service;
import com.example.demo19.dao.Dao;
import com.example.demo19.pojo.Pojo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class DepServiceImpl implements Dao {
@Autowired
private Dao dao;//拿到我们的 dao接口
@Override
public List<Pojo> queryUserList() {
return dao.queryUserList();//调用实现dao接口,返回我们写的唯一一条查询全部方法
}
}
controller层
package com.example.demo19.controller;
import com.example.demo19.pojo.Pojo;
import com.example.demo19.service.DepServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@RestController
public class DeptController {
@Autowired
private DepServiceImpl depService;//service层
//查询全部
@RequestMapping("/a")//链接路径 /a
public List a(){
List<Pojo> depts = depService.queryUserList();//拿到service的queryUserList方法
return depts;
}
}
最后把我们的mapper和实体类配置到Shpringboot核心配置文件中(application.yml)
spring:
datasource:
username: root
password: 123456
url: jdbc:mysql://localhost:3306/ssmbuild?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2b8&allowPublicKeyRetrieval=true
server:
port: 8001
#整合MyBatis
mybatis:
# mapper.xml的目录
mapper-locations: classpath:mybatis/mapper/*.xml
# 实体类的目录
type-aliases-package: com.example.demo19.pojo
运行测试
在主程序中运行
打开服务我们去浏览器中输入 http://localhost:8001/a (这里我端口号改查了8001 没改的的默认是8080
更多推荐
已为社区贡献1条内容
所有评论(0)