springboot--数据访问 SQL redis CURD JDBC druid mybatis

                                                                数据访问

一SQL

  1数据源的自动配置-HikariDataSource

        1导入JDBC场景(依赖)

  1.      <dependency>
  2.             <groupId>org.springframework.boot</groupId>
  3.             <artifactId>spring-boot-starter-data-jdbc</artifactId>
  4.         </dependency>
  5.        
  6. 需要自己导入数据库驱动(根据自己需求数据库版本与驱动版本适配)方法:直接引入 修改properties中的版本

        2分析自动配置

           自动配置的类

 @DataSourceAutoConfiguration  数据源的自动配置

        

@DataSourceTransactionManagerAutoConfiguration  事务管理器的自动配置

@JdbcTemplateAutoConfiguration  JdbcTemplate的自动配置,可以来对数据库进行crud

@JindiDataSourceAutoConfiguration  jindi的自动配置

@XADataSourceAutoConfiguration 分布式事务相关的

        3修改配置项

        4测试

  2使用druid数据源(阿里数据库连接池,有日志监控功能,可以监控数据库连接池和SQL的执行情况。其在springboot作用为添加依赖,配置数据源,创建配置类,使用数据源)

  1. druid官方github地址

https://github.com/alibaba/druid

        2、自定义方式

           1、创建数据源 statviewservlet statfilter

        3、使用官方starter方式

  1. 引入druid-start(pom)
  2. 分析自动配置 扩展项spring.Datasource.druid DruidSpringAopConfiguration.class监控springbean的配置项  spring.datasource.druid.aop-patterns

Duridstatviewservletconfiguration.class监控页配置

Spring.datasource.druid.stat-view-servlet

Druidwebstatfilterconfiguration.class  web监控配置

Spring.database.druid.stat-view-filter

Druidfilterconfiguration,class. 所有Druid自己的filter配置

  1. 配置事例

SpringBoot配置示例
https://github.com/alibaba/druid/tree/master/druid-spring-boot-starter

配置项列表
https://github.com/alibaba/druid/wiki/DruidDataSource%E9%85%8D%E7%BD%AE%E5%B1%9E%E6%80%A7%E5%88%97%E8%A1%A8

  1. spring:
  2.     datasource:
  3.         url:jabc:mysql:/localhost:3306/ab_account
  4.         username:root
  5.         password:123456
  6.         driver-class-name:com.mysql.jdbc.Driver

  3整合mybatis操作https://github.com/mybatis

  1. 配置模式2注释模式3混合模式

  4整合mybatis-plus完成CRUD

      什么是mybatis-plus

mybatis-plus是一个可以使mybatis的基础上简化开发,提高效率

      整合mybatis-plus(依赖)和自动配置

      CRUD功能 (create read update delete)

            加入相应的依赖(data-jpa mysql)

            定义实类

创建repository接口

使用service处理业务逻辑

处理器层处理HTTP请求

二noSQL

      Redis自动配置

          依赖pom

     特点:将数据存储在内存中,可以快速进行读写 2key-value存储的键值对的形式 3丰富的数据类型(字符串,list,set,zset,hash)

(redis环境搭配 阿里云按量付费  2申请redis的公网链接地址 3修改白名单 允许0.0.0.0/0访问)

      Redis Template 与lettuce

      切换至jedis
redis 依赖 redis-clients

  • 9
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Boot整合MyBatis-Plus和Redis可以通过以下步骤实现: 1. 添加依赖:在pom.xml文件中添加Spring BootMyBatis-Plus和Redis的依赖。 ```xml <!-- Spring Boot --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- MyBatis-Plus --> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>${mybatis-plus.version}</version> </dependency> <!-- Redis --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> ``` 2. 配置数据源:在application.properties或application.yml中配置数据库连接信息。 ```properties spring.datasource.url=jdbc:mysql://localhost:3306/mydatabase spring.datasource.username=root spring.datasource.password=123456 ``` 3. 配置MyBatis-Plus:创建一个配置类,使用@MapperScan注解指定Mapper接口的扫描路径。 ```java @Configuration @MapperScan("com.example.mapper") public class MybatisPlusConfig { @Bean public PaginationInterceptor paginationInterceptor() { return new PaginationInterceptor(); } } ``` 4. 创建实体类和Mapper接口:创建实体类和对应的Mapper接口,使用注解进行映射。 ```java @Data @TableName("user") public class User { @TableId(type = IdType.AUTO) private Long id; private String name; } ``` ```java @Mapper public interface UserMapper extends BaseMapper<User> { } ``` 5. 添加Redis配置:在application.properties或application.yml中配置Redis连接信息。 ```properties spring.redis.host=localhost spring.redis.port=6379 ``` 6. 编写业务逻辑:创建Service类,注入Mapper和RedisTemplate,并编写业务逻辑。 ```java @Service public class UserServiceImpl implements UserService { @Autowired private UserMapper userMapper; @Autowired private RedisTemplate<String, Object> redisTemplate; @Override public User getUserById(Long id) { // 先从缓存中获取数据 String key = "user:" + id; User user = (User) redisTemplate.opsForValue().get(key); // 如果缓存中不存在,则从数据库中获取数据 if (user == null) { user = userMapper.selectById(id); // 将数据存入缓存 redisTemplate.opsForValue().set(key, user); } return user; } } ``` 这样,你就成功地将Spring BootMyBatis-Plus和Redis进行了整合。通过MyBatis-Plus进行数据库操作,并通过Redis进行缓存,提高系统性能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值