springboot hikari连接不释放_深入理解SpringBoot启动机制(starter机制)

点击上方“Java知音”,选择“置顶公众号”

技术文章第一时间送达!

作者:MyBug

juejin.im/post/5d25b7115188256cd02a00ad

(点击即可跳转阅读)

1. SpringBoot内容聚合

2. 面试题内容聚合

3. 设计模式内容聚合

4. Mybatis内容聚合

5. 多线程内容聚合

一、前言

使用过springboot的同学应该已经知道,springboot通过默认配置了很多框架的使用方式帮我们大大简化了项目初始搭建以及开发过程。

本文的目的就是一步步分析springboot的启动过程,这次主要是分析springboot特性自动装配。

那么首先带领大家回顾一下以往我们的web项目是如何搭建的,通常我们要搭建一个基于Spring的Web应用,我们需要做以下一些工作:

  1. pom文件中引入相关jar包,包括spring、springmvc、redis、mybaits、log4j、mysql-connector-java 等等相关jar …

  2. 配置web.xml,Listener配置、Filter配置、Servlet配置、log4j配置、error配置 …

  3. 配置数据库连接、配置spring事务

  4. 配置视图解析器

  5. 开启注解、自动扫描功能

  6. 配置完成后部署tomcat、启动调试……

花在搭建一个初始项目,可能一个小时就过去了或者半天救过了,但是用了SpringBoot之后一切都会变得非常便捷,下面我们首先来分析一下SpringBoot的起步依赖以及自动配置。

二、起步依赖

1.在我们的pom文件里面引入以下jar:

<modelVersion>4.0.0
  • spring-boot-starter-web包自动帮我们引入了web模块开发需要的相关jar包。

  • mybatis-spring-boot-starter帮我们引入了dao开发相关的jar包。

  • spring-boot-starter-xxx是官方提供的starter,xxx-spring-boot-starter是第三方提供的starter。

截图看一下我们的mybatis-spring-boot-starter

b03e70dc943d3d457bff3bcd5f5f0c8c.png

可以看出mybatis-spring-boot-starter并没有任何源码,只有一个pom文件,它的作用就是帮我们引入其它jar。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Spring Boot提供了Hikari作为默认的数据库连接池,使得操作MySQL数据库变得更加简单和高效。Hikari是目前最快的Java连接池,其性能优越。 我们可以通过在pom.xml文件添加相应的依赖来使用Spring BootHikari来操作MySQL数据库。在配置文件,我们需要提供MySQL数据库的连接信息,包括URL、用户名、密码等。以下是一个示例的配置文件: ``` spring.datasource.url=jdbc:mysql://localhost:3306/mydatabase spring.datasource.username=root spring.datasource.password=123456 spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5Dialect ``` 在编写Spring Boot应用程序时,我们可以使用注解来操作数据库。例如,我们可以使用@Repository注解来定义一个数据访问对象(DAO),使用@Query注解来定义一个查询方法。下面是一个简单的示例: ```java @Repository public interface UserRepository extends JpaRepository<User, Long> { @Query("SELECT u FROM User u WHERE u.age > ?1") List<User> findByAgeGreaterThan(int age); } ``` 在上述示例,我们定义了一个UserRepository接口,继承自JpaRepository泛型接口。我们也可以使用@Query注解来定义一个根据年龄查询用户的方法。 除了以上的例子,Spring BootHikari还提供了许多其他的特性和功能,例如连接池的自动配置事务管理等。总之,使用Spring BootHikari操作MySQL数据库能够简化开发过程并提高性能。 ### 回答2: Spring Boot是一个基于Spring框架的开发框架,提供了很多便捷的功能,让我们能够更加高效地开发Java应用程序。而HikariCP是一个高性能的、轻量级的连接池,被广泛应用于数据库连接管理。下面我将介绍如何使用Spring BootHikariCP来操作MySQL数据库。 首先,我们需要项目的pom.xml文件添加Spring Boot和MySQL的依赖。这样可以让我们轻松地集成Spring Boot和MySQL。 接下来,在我们的配置文件配置MySQL数据库的连接信息。可以在application.properties或者application.yml文件添加以下配置: ``` spring.datasource.url=jdbc:mysql://localhost:3306/db_name spring.datasource.username=db_username spring.datasource.password=db_password spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.jpa.database-platform=org.hibernate.dialect.MySQL5Dialect ``` 注意,这里的db_name、db_username和db_password需要替换成你自己的数据库名、数据库用户名和密码。 然后,我们需要项目创建相应的持久化实体类和Repository接口。通过使用Spring Data JPA,我们可以非常方便地进行数据库操作。 在我们的Service类,我们可以通过@Autowired注解来注入Repository接口,然后就可以调用相应的方法来操作数据库了。例如,我们可以使用repository.findAll()方法来获取数据库的所有记录,使用repository.save()方法来保存新的记录等等。 最后,在我们的Controller类,我们可以使用@RestController注解来标识该类是一个处理请求的控制器,使用@RequestMapping注解来指定相应的URL路径。然后,在我们的请求处理方法,我们可以调用Service类的方法来完成相应的数据库操作。 总结起来,使用Spring BootHikariCP操作MySQL数据库非常方便。我们只需要配置好相应的连接信息,创建实体类和Repository接口,然后就可以通过调用相应的方法来操作数据库了。 ### 回答3: 使用Spring Boot结合Hikari连接池操作MySQL可以实现高效的数据库访问。下面是具体的步骤: 1. 首先,在pom.xml文件引入相关依赖: ``` <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>com.zaxxer</groupId> <artifactId>HikariCP</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> ``` 2. 在application.properties(或application.yml)文件配置数据库连接信息: ``` spring.datasource.url=jdbc:mysql://localhost:3306/your_db_name spring.datasource.username=your_username spring.datasource.password=your_password spring.datasource.driver-class-name=com.mysql.jdbc.Driver # 配置Hikari连接池 spring.datasource.hikari.connection-timeout=20000 spring.datasource.hikari.maximum-pool-size=10 ``` 3. 创建实体类和Repository接口: ```java @Entity @Table(name = "your_table_name") public class YourEntity { // 定义实体类属性 // 定义实体类的getter和setter方法 } public interface YourRepository extends JpaRepository<YourEntity, Long> { // 定义数据库操作方法 } ``` 4. 在Service类注入YourRepository,并在方法实现相应的数据库操作: ```java @Service public class YourService { @Autowired private YourRepository repository; public List<YourEntity> getAllEntities() { return repository.findAll(); } public YourEntity getEntityById(Long id) { return repository.findById(id).orElse(null); } public void saveEntity(YourEntity entity) { repository.save(entity); } public void deleteEntity(Long id) { repository.deleteById(id); } } ``` 通过以上步骤,就可以使用Spring BootHikari连接池操作MySQL数据库了。需要注意的是,Hikari连接池Spring Boot默认使用的连接池,它具有高性能和低资源消耗的特点,能够提升系统的性能和稳定性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值