java springboot整合Druid数据源配置

news2024/12/26 10:50:37

整合的最后一块 我们整合一个数据源
Druid
我们还是打开idea 创建一个项目
在这里插入图片描述
路径和版本调一下 路径选一个好的目录就可以了 至于版本 最好是 java 8 JDK 1.8 然后 Next 下一步
在这里插入图片描述
这里 spring boot 的版本记得选一下 不要搞太高 2.几即可
在这里插入图片描述
Druid 在这里 显然也是找不到的 所以 我们要后面手动去添加 那么 这里 我们要引入两个依赖
MyBatis和MySql的启动
在这里插入图片描述
然后点击 Finish 确认创建项目

然后 我们的项目就出来了
在这里插入图片描述
那么 我们创建好项目 首要要解决的问题肯定就是Druid啦 还没有引入今天的主角呢
我们访问
https://mvnrepository.com/artifact/commons-httpclient/commons-httpclient/3.1
顶部搜索 Druid
在这里插入图片描述
按回车 他就列出来了
在这里插入图片描述
我们点这个 Spring Boot Starter 的进去
在这里插入图片描述
版本的话 选个 1.2.6 点进去
在这里插入图片描述
进来自后 向下拉 我们就可以看到他的一个坐标了
在这里插入图片描述
将这个复制到 我们刚创建的项目的 pom.xml 的 dependencies标签下

那么 如果你和我一样 用的 2019 那就复制上来会报错找不到
在这里插入图片描述
我们右键操作一下 Maven
在这里插入图片描述
等待这边下载好
在这里插入图片描述
然后 就不会报错了
在这里插入图片描述
然后 我们还是将application.properties改为application.yml
参考代码如下

spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://localhost:3306/test
    username: root
    password: root

这里 我们设置 访问本机的 MySql数据库
url设置为 本机ip 3306 下的 test数据库
这里大家需要看一下 因为我的MySql下有一个 test数据库 大家还是要根据情况去写
在这里插入图片描述
然后 用户名和密码 因为我都没动过 所以就是 root

然后 这里我们要配一下数据源
第一种方式
你在后面加个 type: Druid 提示自然就出来了 选择第一个即可
在这里插入图片描述
这是第一种方式 这种方式 只能说能用 但不是整合型的配法

第二种配法
在下面输入 druid 也会出现提示
在这里插入图片描述
提示中有什么 用户名密码啊 其实直接这样就好了

spring:
  datasource:
    druid:
      driver-class-name: com.mysql.jdbc.Driver
      url: jdbc:mysql://localhost:3306/test
      username: root
      password: root

这就是 druid 整合之后专用配置了

然后 我们还是将环境搭起来
查看我今天要操作的 staff 数据库表
在这里插入图片描述
找到启动类所在目录 在同目录下创建文件夹 叫 domain
下面创建一个与数据库同名的java属性类 staff
参考代码如下

package com.example.druid.domain;

public class staff {
    private int id;
    private String name;
    private int age;
    private int status;
    private int departmentid;

    @Override
    public String toString(){
        return "staff{"+
                "id"+id+
                "namne"+name+
                "age"+age+
                "status"+status+
                "departmentid"+departmentid+
                "}";
    }

    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }

    public int getStatus() {
        return status;
    }
    public void setStatus(int status) {
        this.status = status;
    }

    public int getDepartmentid() {
        return departmentid;
    }
    public void setDepartmentid(int departmentid) {
        this.departmentid = departmentid;
    }
}

我们根据数据库表字段 声明了对应的属性
然后 在启动类同目录创建 包 dao
下面创建一个接口staffDao
参考代码如下

package com.example.druid.dao;

import com.example.druid.domain.staff;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

@Mapper
public interface staffDao {
    @Select("select * from staff where id = #{id}")
    staff getById(Integer id);
}

这里 我们还是一个很正常的MyBatis操作
然后 我们在测试类中编写

package com.example.druid;

import com.example.druid.dao.staffDao;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

@SpringBootTest
class DruidApplicationTests {

    @Autowired
    private staffDao staffDao;

    @Test
    void contextLoads() {
        System.out.println(staffDao.getById(1));
    }
}

然后 我们在测试类中调用我们刚刚写的 getById 查询id为1的数据
在这里插入图片描述

然后运行代码
在这里插入图片描述
运行结果如下
在这里插入图片描述
这里也是成功的讲数据查出来了
在这里插入图片描述

而我们查看日志输出内容
在这里插入图片描述
也是留下了druid的痕迹

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/650620.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

安卓端Google隐私沙盒归因报告聚焦

自2022年2月Google首次提出将推出隐私沙盒至今已一年有余。现在,安卓端的隐私沙盒Beta测试已针对特定Android13设备正式开始。作为早期测试者,Adjust很高兴与 Google一同迈出增强用户隐私的第一步,并在接下来的旅程中继续携手同行。为帮助移动…

framework编译应用代码

代码编译 APP或Service代码单编调试 1、在aosp文件目录下在将环境变量加载到内存中,在终端中输入下面命令 source build/envsetup.sh 2、选择平台编译选项 lunch 3、输入后会出现一个选择列表,然后输入你想要的项目的序号即可。如下所示我这里选择的7…

【OpenMMLab AI实战营二期笔记】第十天 底层视觉与MMEditing

1.图像超分辨率 1.1 什么是图像超分辨率? 根据从低分辨率图像重构高分辨率图像 1.2 目标: 提高图像的分辨率高分图像符合低分图像的内容恢复图像的细节、产生真实的内容 1.3 应用: 经典游戏高清重制动画高清重制照片修复节约传输高清图…

当你拥有什么样的高性能计算技术水平,你才能成为一名高性能计算工程师? ...

在当今科技快速发展的时代,高性能计算工程师成为了推动科学研究、工程仿真和大数据处理的关键人才。尤其是我国大力发展科研基建,打造科研技术底座,这就更加需要高性能计算工程师通过自身的技术来加速科研建设和研发的进度和速度。 我们调研了…

Spark大数据处理学习笔记(3.8.1) Spark RDD典型案例-利用RDD计算总分与平均分

该文章主要为完成实训任务,详细实现过程及结果见【http://t.csdn.cn/Twpwe】 文章目录 1. 任务目标2. 实现思路3. 准备工作3.1 启动HDFS服务3.2 启动Spark服务3.3 在本地创建成绩文件3.4 将成绩文件上传到HDFS 4. 完成任务4.1 在Spark Shell里完成任务4.1.1 读取成绩…

虚拟机使用

文章目录 VMWare安装Warning 系统安装MacOS解锁工具Unlocker Warning VMWare配置系统启动安装VMware tools联网 VMWare安装 Warning 安装完VMWare后要在BIOS中开启intel VT(虚拟化),否则安装过程中会出错,提示“Intel VT-x处于禁…

写在2023年,回看10年前,很幸运进了软件测试这行~

首先介绍一下我自己,从事软件测试行业到现在是10年时间,毕业之后一直从事的软件测试行业。很幸运在毕业时赶上互联网这波浪潮,然后就一直在互联网公司工作,虽然那时候的软件测试技术发展还相对比较混乱,但自己因为公司…

CAN 报文字节排列顺序(Intel、Motorola_LSB、Motorola_MSB)

学习自记: 在定义CAN通信矩阵或制作dbc时,我们需要知道报文的字节排列顺序。字节的排列顺序有2种,一种是Intel的排列顺序,另一种是Motorola的排列顺序,就跟大小端字节排序是一样的。下面笔者将简单介绍这2种字节排序的…

在conda环境中安装tensorflow和cuda

​ 不同版本的tensorflow官方提供的编译好的whl文件只对应一个cuda版本,这让需要tensorflow的不同版本时很麻烦。 我选择的方式是在conda中新建一个环境,在环境中安装需要的tensorflow和cudatoolkit。 这里假设已经安装好anaconda。 确定需要的tensorflo…

服了呀,现在的00后,真的是卷死了,辞职信已经写好准备提交了·····

都说00后躺平了,但是有一说一,该卷的还是卷。这不,四月份春招我们公司来了个00后,工作没两年,跳槽到我们公司起薪22K,都快接近我了。 后来才知道人家是个卷王,从早干到晚就差搬张床到工位睡觉了…

数智赋能与低代码:是医药行业的创新引擎还是心魔歧途

医药行业在当下科技水平的推动下实现了突破性的进展,提高了疾病的治疗效果、加速了新药的开发速度,并为病患提供了更便捷、个性化的医疗服务。当前科技水平下的医药行业正在经历快速的发展和创新。AI 在医药研发、诊断和治疗方面扮演着重要角色。机器学习…

软件测试中的可用性、可维护性、可靠性有什么区别?

我们生活在一个用户依赖于对服务的一致访问的可靠性时代。在相互竞争的服务之间进行选择时,对用户来说,没有比可靠性更重要的特性了。但是可靠性是什么意思呢? 为了回答这个问题,我们将根据可靠性工程中的其他度量来分解可靠性&a…

接口自动化测试的一种方案

前言 去年,我们进行了项目的拆分,拆分后的各个子系统也都逐步的改成了通过接口进行数据的交换,接口测试也被提上日程。经过一段时间的探索,接口自动化测试方案越来越完善,今天给大家做个详细的讲解。 方案 目前我们…

5分钟快速学会App自动化测试xpath定位【快点收藏吧】

今天我们先来和大家说一下appium,首先教大家如何定位xpath,五分钟即可学会: 例: 现在我想定位下面这个登录按钮:​ ​xpath该怎么写呢? 先不管三七二十几,先写//,然后找你要定位元…

中国信通院携手合合信息开启《文档图像篡改检测标准》制定工作

文档图像是信息的重要载体,却经常被不法分子利用软件、算法进行篡改。这些虚假材料往往被用于散播谣言、经济诈骗、编造虚假新闻,给个人、社会造成了恶劣的影响。AIGC全球爆火后,人们对“生成式造假”风险的攀升倍感忧虑,图像内容…

获得忠实铁粉?你也可以

获得忠实铁粉?你也可以 何为铁粉铁粉与普通粉丝区别铁粉规则如何获得铁粉 何为铁粉 在CSDN中,铁粉通常指对某个知名开发者、博主或组织非常支持、崇拜、追随的粉丝。他们可能会关注该开发者或博主的所有文章、博客、视频等,积极参与讨论并分…

如何在国产OpenEuler操作系统上安装ONLYOFFICE桌面编辑器V7.4版本

如何在国产OpenEuler操作系统上安装ONLYOFFICE桌面编辑器V7.4版本 书接上文: 手把手教你如何解开安装UKUI的黑屏故障 不吵嘴仗,华为的OpenEuler开放欧拉操作系统也是一款不可多得的非常好的Linux发行版,只是, 初装的桌面环境&a…

选对预测性维护工具,让设备运行更稳定

随着技术的不断进步,预测性维护(Predictive Maintenance,简称PdM)在现代工业中扮演着至关重要的角色。选择适合自身需求的预测性维护工具是企业在实施PM策略时的重要决策。本文将探讨在选择预测性维护工具时需要考虑的关键因素和决…

LeetCode36 有效的数独

请你判断一个 9 x 9 的数独是否有效。只需要 根据以下规则 ,验证已经填入的数字是否有效即可。 数字 1-9 在每一行只能出现一次。 数字 1-9 在每一列只能出现一次。 数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。(请参考示例图) …

不愧是字节出来的,太强了...

前段时间公司缺人,也面了许多测试,当然也没指望能来大牛,薪资提供在15K~20k左右,来面试的人有很多,但是平均水平真的让人很失望。 看了简历很多上面都是写有4/5年工作经验,但在面试中,我大为震…