浅析Java数据库连接:从Jdbc到Datasource

浅析Java数据库连接:从JdbcDatasource


  在Java项目中,基本都会和数据库打交道,那一个需要访问数据库的web项目,我们一般是怎么搭建的呢?在应用运行过程中,我们的Java应用是如何和数据库通讯的呢?
  那我们带着这些一点问题,来从搭建一个数据库的web项目开始,来看一看Java和数据库交互的主要流程吧。
  本文语雀链接:https://www.yuque.com/theskyzero/qdl2y7/qbqai8

基于springboot搭建访问数据库的web项目

  项目仓库访问地址:https://gitee.com/theskyone/new-bird.git ,分支feature/jdbc

  首先,介绍下这个demo背景,我们准备用springboot快速搭建一个web项目,在这个web项目中将用到数据库。

  那么我们Java程序要访问一个数据库,需要准备哪些东西呢?

  1. 数据库选型:oraclemysql等等…
  2. 数据库连接驱动
  3. 数据库连接池:druidhikaritomcat等等…
  4. 数据映射/ormspring-jdbcmybatisjpa等。

  我们这里为示例的需要,选型为:

  1. 数据库:h2数据库,支持内存、文件数据库类型,支持SQL语言。
  2. 数据库连接驱动:h2的数据库驱动
  3. 数据库连接池:druid连接池。springboot2默认使用性能更好的hikari,我们使用久经考验的druid
  4. orm:使用spring-jdbc。这里我们主要探讨Java和数据库的交互过程,不拘泥于如mybatis在数据映射上的抽象封装。

使用springboot搭建一个web项目

  示例开发环境:IDEA+Maven+Git。示例程序:feature/jdbc

  使用springboot搭建一个web项目超级简单,我们只要做两件事情:

  1. 依赖spring-boot-starter-web
  2. 编写注解@SpringBootApplication的启动类

  这里我们创建的是多module项目,一些关键的配置如下:

<!-- 父pom.xml, 继承spring-boot-starter-parent-->

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.6.4</version>
    </parent>

    <packaging>pom</packaging>

    <groupId>com.gitee.theskyone</groupId>
    <artifactId>new-bird</artifactId>
    <version>1.0-SNAPSHOT</version>

    <modules>
        <module>bird-web</module>
    </modules>
</project>
<!-- web子模块pom.xml 使用依赖 spring-boot-starter-web-->

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <parent>
        <artifactId>new-bird</artifactId>
        <groupId>com.gitee.theskyone</groupId>
        <version>1.0-SNAPSHOT</version>
    </parent>

    
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

theskyzero

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

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

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

打赏作者

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

抵扣说明:

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

余额充值