springboot3 数据访问

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


一、准备数据库表

`CREATE TABLE `t_user`
(
    `id`         BIGINT(20)   NOT NULL AUTO_INCREMENT COMMENT '编号',
    `login_name` VARCHAR(200) NULL DEFAULT NULL COMMENT '用户名称' COLLATE 'utf8_general_ci',
    `nick_name`  VARCHAR(200) NULL DEFAULT NULL COMMENT '用户昵称' COLLATE 'utf8_general_ci',
    `passwd`     VARCHAR(200) NULL DEFAULT NULL COMMENT '用户密码' COLLATE 'utf8_general_ci',
    PRIMARY KEY (`id`)
);
INSERT INTO t_user(login_name, nick_name, passwd) VALUES ('zhangsan','张三','123456');`t_user``t_user`

二、项目创建

2.1、使用spring initializer 创建

选择lomback,springweb,mybatis,mysql

编写bean

package com.cky.shujufangwen.bean;

import lombok.Data;

/**
 * @ClassName User
 * @Description TODO
 * @Author lukcy
 * @Date 2024/6/10 9:15
 * @Version 1.0
 */
@Data
public class User {
private Long id;
private String loginName;
private String nickName;
private String passwd;
}

2.2、添加数据库配置

spring.datasource.url=jdbc:mysql://127.0.0.1:3306/test
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.type=com.zaxxer.hikari.HikariDataSource

2.3 mapper

生成mqpper,并且用mybatis X插件来创建对应的.XML文件
在这里插入图片描述

#指定mapper映射文件位置
mybatis.mapper-locations=classpath:/mapper/*.xml
#参数项调整
mybatis.configuration.map-underscore-to-camel-case=true

开启驼峰式映射

2.4 编写controller

@RestController
public class UserController {
@Autowired
    private UserMapper userMapper;
@GetMapping(value = "user/{id}")
public User getUser(@PathVariable("id") long id){
    User user=userMapper.getUserById(id);
    return user;
}
}

在这里插入图片描述

2.5 总结

SSM整合总结:

  1. 导入 mybatis-spring-boot-starter
  2. 配置数据源信息
  3. 配置mybatis的mapper接口扫描与xml映射文件扫描
  4. 编写bean,mapper,生成xml,编写sql 进行crud。事务等操作依然和Spring中用法一样
  5. 效果:
    a. 所有sql写在xml中
    b. 所有mybatis配置写在application.properties下面

三、其他数据源

springboot3 整合 Druid 数据源
首先,在你的Spring Boot项目中添加Druid的依赖。在 pom.xml文件中添加以下依赖:

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

接下来,在 application.properties(或 application.yml)文件中配置Druid的数据源信息,例如:

spring.datasource.url=jdbc:mysql://localhost:3306/db_example
spring.datasource.username=your_username
spring.datasource.password=your_password
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

# Druid specific configuration
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.initialSize=5
spring.datasource.minIdle=5
spring.datasource.maxActive=20
spring.datasource.maxWait=60000
spring.datasource.timeBetweenEvictionRunsMillis=60000
spring.datasource.minEvictableIdleTimeMillis=300000
spring.datasource.validationQuery=SELECT 1
spring.datasource.testWhileIdle=true
spring.datasource.testOnBorrow=false
spring.datasource.testOnReturn=false
spring.datasource.poolPreparedStatements=true
spring.datasource.maxPoolPreparedStatementPerConnectionSize=20
spring.datasource.filters=stat,wall,log4j
spring.datasource.connectionProperties=druid.stat.mergeSql=true;
druid.stat.slowSqlMillis=5000

相关推荐

  1. SpringBoot数据访问

    2024-06-10 14:30:03       41 阅读
  2. Python访问mysql与sqlite3数据库

    2024-06-10 14:30:03       18 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-10 14:30:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-10 14:30:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-10 14:30:03       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-10 14:30:03       20 阅读

热门阅读

  1. 不要使用业务键作为数据库主键

    2024-06-10 14:30:03       10 阅读
  2. 爬山算法的详细介绍

    2024-06-10 14:30:03       8 阅读
  3. SSRF 漏洞实践:端口扫描与任意文件读取

    2024-06-10 14:30:03       9 阅读
  4. SpringBoot实现上传头像(查看头像)

    2024-06-10 14:30:03       7 阅读
  5. 模拟CAS算法案例

    2024-06-10 14:30:03       6 阅读
  6. DeepSpeed Autotuning

    2024-06-10 14:30:03       7 阅读
  7. 10-Eureka-服务注册

    2024-06-10 14:30:03       9 阅读
  8. 在docker容器中使用gdb调试python3.11的进程

    2024-06-10 14:30:03       6 阅读