Springboot数据访问

目录

1、集成JDBC

1.1、导入依赖

        1.1.1、导入JDBC场景

        1.1.2、导入数据库驱动

1.2、数据库连接配置

1. 3、测试

1.4、使用Druid数据源

        1.4.1、添加依赖

        1.4.2、修改数据源类型为Druid

        1.4.3、在yaml配置文件中添加数据源配置

2、集成mybatis

2.1、导入mybatis官方starter

2.2、编写mapper接口

2.3、编写sql映射文件并绑定mapper接口

2.4、在pom.xml的中过滤资源路径 

2.5、创建Service层

2.6、在application.yaml中指定mapper配置文件的位置

2.7、创建Controller调用Service层


1、集成JDBC

1.1、导入依赖

        1.1.1、导入JDBC场景

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jdbc</artifactId>
        </dependency>

        该场景包含了:Hikari数据源、spring-jdbc、spring事务

        为什么场景中没有导入数据库驱动?

        因为官方不知道我们接下要操作什么数据库。

        1.1.2、导入数据库驱动

        数据库版本和驱动版本对应,否则会不兼容

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.47</version>
        </dependency>

        我这里使用mysq5的版本,所以导入了5.1.47的驱动

1.2、数据库连接配置

         在application.properties或者application.yaml中配置数据源

#数据库连接配置
spring:
  datasource:
    username: root
    password: luolin123
    url: jdbc:mysql://localhost:3306/ssm?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8
    driver-class-name: com.mysql.jdbc.Driver

1. 3、测试

    @Autowired
    JdbcTemplate jdbcTemplate;
    @Test
    void contextLoads() {
        Long count=jdbcTemplate.queryForObject("select  count(*) from user",Long.class);
        System.out.println("记录总数"+count);

    }

1.4、使用Druid数据源

        1.4.1、添加依赖

      <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.1.21</version>
        </dependency>

        1.4.2、修改数据源类型为Druid

        1.4.3、在yaml配置文件中添加数据源配置

2、集成mybatis

2.1、导入mybatis官方starter

        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.1.4</version>
        </dependency>

2.2、编写mapper接口

@Component
@Mapper
public interface StudentMapper {
    public List<Student> findAllStu();
}

2.3、编写sql映射文件并绑定mapper接口

<?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.rk.admin.mapper.StudentMapper">
    <select id="findAllStu" resultType="com.rk.admin.pojo.Student">
            select * from student
     </select>
</mapper>

2.4、在pom.xml的<build>中过滤资源路径 

        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.xml</include>
                </includes>
                <filtering>true</filtering>
            </resource>
        </resources>

        这样才能将Mapper.xm创建在mapper接口同目录下

2.5、创建Service层

Service接口:
public interface StudentService {
    public List<Student> findAllStu();
}


Service接口实现类:

@Service
public class StudentServiceImpl implements StudentService {
    @Autowired
    StudentMapper studentMapper;
    @Override
    public List<Student> findAllStu() {
        return studentMapper.findAllStu();
    }
}

2.6、在application.yaml中指定mapper配置文件的位置

#指定myBatis的核心配置文件与Mapper映射文件
mybatis.mapper-locations=classpath:mapper/*.xml

         所有的配置都可以在application.yaml中进行配置,所以我们可以不创建Mybatis-config.xml核心配置文件.如果创建,可以在application.yaml中指定核心配置文件的位置:

        config-location: classpath:路径

2.7、创建Controller调用Service层

    @Autowired
    StudentService studentService;
    @GetMapping("/finAllStu")
    @ResponseBody
    public List<Student> finAllStu(){
        return studentService.findAllStu();
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Rk..

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值