javaJDBC——连接mysql数据库

2023-11-11

java连接数据库的五种方法。最好的效率最高的是第五种

package com.webtest.connection;

import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Properties;

import org.junit.Test;

public class connectionTest {
	
  //方式一
	@Test
   public void testConnetcion1() throws SQLException {
	   Driver driver = new com.mysql.jdbc.Driver();
	   String url = "jdbc:mysql://127.0.0.1:3306/test";
	    /*
	     * jdbc:mysql 主协议
	     * 
	     * //127.0.0.1:3306   ip地址 :mysql端口号 
	     * /test   test 数据库名
	     */
	   Properties info=new Properties();
	   info.setProperty("user", "root");
	   info.setProperty("password", "root");
	Connection conn = driver.connect(url, info);
	System.out.println(conn);
   }
	
	//方式二,对方式一的迭代  (如下程序中没出现第三方的API,使得程序有更好的移植性)
	@Test
	public void  testConnetcion2() throws SQLException, ClassNotFoundException, InstantiationException, IllegalAccessException {
		//1.获取Driver实现类对象,使用反射
		Class cla = Class.forName("com.mysql.jdbc.Driver");
		Driver driver =(Driver) cla.newInstance(); 
		//2.提供要连接的数据库
		 String url = "jdbc:mysql://127.0.0.1:3306/test";
		//3.提供连接需要的用户名和密码
		   Properties info=new Properties();
		   info.setProperty("user", "root");
		   info.setProperty("password", "root");
		 //4.获取连接
		Connection conn = driver.connect(url, info);
		System.out.println(conn);
	}
	//方式三; 使用DriverManager替换Driver	
	  @Test
	public void testConnetciton3() throws SQLException, ClassNotFoundException, InstantiationException, IllegalAccessException{
		//1.获取Driver的实现类的对象
		Class cla = Class.forName("com.mysql.jdbc.Driver");
		Driver driver =(Driver) cla.newInstance(); 
		//2.提供另外三个连接的基本信息
		String url ="jdbc:mysql://127.0.0.1:3306/test";
		String user="root";
		String password = "root";
		//注册驱动
	   DriverManager.registerDriver(driver);
	   //获取连接
	   Connection conn = DriverManager.getConnection(url,user,password);
	   System.out.println(conn);
	}
	
	//方式四; 使用DriverManager替换Driver 优化	
	@Test
	public void testConnetciton4() throws Exception{
		//1.提供另外三个连接的基本信息
				String url ="jdbc:mysql://127.0.0.1:3306/test";
				String user="root";
				String password = "root";
		Class.forName("com.mysql.jdbc.Driver");
	   //获取连接
	   Connection conn = DriverManager.getConnection(url,user,password);
	   System.out.println(conn);
	}
	
	//方式五:将数据库需要的4个基本信息放到配置文件中,通过配置文件的方式获取连接
	//优点,所有的链接数据都在统一的文件内方便修改数据源。实现数据和代码的 解耦
	 // 2.如果需要修改配置文件信息,可避免程序重新打包 
	@Test
	public void getConnection5() throws Exception {
		InputStream is=Connection.class.getClassLoader().getSystemResourceAsStream("jdbc.properties");
		Properties pros = new Properties();
		pros.load(is);
		String user=pros.getProperty("user");
		String pssword=pros.getProperty("pssword");
		String url=pros.getProperty("url");
		String driverclass=pros.getProperty("driverclass");
		
		//2.加载驱动
		Class.forName(driverclass);
		
		//3.获取连接
		Connection conn = DriverManager.getConnection(url,user,pssword);
		System.out.println(conn);
	}
}

第五种需要加一个配置文件用来传入固定的user/password/url/driver,代码如下

user=root
pssword=root
url=jdbc:mysql://127.0.0.1:3306/test
driverclass=com.mysql.jdbc.Driver
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

javaJDBC——连接mysql数据库 的相关文章

随机推荐

  • TBDR下msaa 在metal vulkan和ogles的解决方案

    https developer arm com solutions graphics developer guides understanding render passes multi sample anti aliasing msaa在
  • 第十四届蓝桥杯大赛软件赛省赛(Java 大学B组)

    目录 试题 A 阶乘求和 1 题目描述 2 解题思路 3 模板代码 试题 B 幸运数字 1 题目描述 2 解题思路 3 模板代码 试题 C 数组分割 1 题目描述 2 解题思路 3 模板代码 试题 D 矩形总面积 1 问题描述 2 解题思路
  • (译)cocos2d-x跨android&ios平台开发入门教程

    免责申明 必读 本博客提供的所有教程的翻译原稿均来自于互联网 仅供学习交流之用 切勿进行商业传播 同时 转载时不要移除本申明 如产生任何纠纷 均与本博客所有人 发表该翻译稿之人无任何关系 谢谢合作 原文链接地址 http www raywe
  • Windows下小白安装Qt详细教程

    一 软件下载 官网下载地址 http download qt io 1 点击进入 2 archive 和 official releases 两个目录都有最新的 Qt 开发环境安装包 我们以 archive 目录里的内容为例来说明 点击进入
  • 太强大!发现一个数据分析老司机专用神器!

    去年秋招 字节跳动整体报录比降到了2 创造了150000人争3000岗位的盛况 今年909万毕业生再创新高 激烈程度可想而知 除了技术岗 大部分毕业生也瞄准了高薪高前景的数据分析师岗位 教育部关于高校毕业生就业工作通知 人才缺口 巨大 未来
  • 用python进行数据分析(一:数据理解)

    python作为当前主流的语言之一 他的功能是非常强大的 不论是在游戏行业还是数据分析行业还是软件开发啥的好像都可以用python 但作为一个数据分析师 并不需要用到他的全部功能 只是想要达到 能够用python完成数据分析工作 的效果来帮
  • 同步FIFO的verilog实现(2)——高位扩展法

    一 前言 在之前的文章中 我们介绍了同步FIFO的verilog的一种实现方法 计数法 其核心在于 在同步FIFO中 我们可以很容易的使用计数来判断FIFO中还剩下多少可读的数据 从而可以判断空 满 关于计数法实现同步FIFO的详细内容 请
  • logback 配置文件 XML 案例

    logback配置文件案例 1 实现功能 1 控制台输出日志 2 info warn error 三个级别的日志分文件输出 3 日志文件 按天 按文件大小 滚动保存 4 日志文件保存于 项目根目录下的 logs 目录下 2 具体配置
  • STM 32如何实现程序自加密

    在嵌入式应用开发中 应用开发完成后往往需要对芯片中的程序进行加密处理 用以保护程序安全 不至被竞争对手从芯片把程序固件考走 本节将给大学介绍一个如何实现程序自动给芯片加密功能 下面给大家介绍一个STM32 用程序给MCU加密码的方法 标准库
  • 解决stata安装外部命令报错cannot write in directory C:\Users\�ƿ���\ado\plus\_

    参考网址 https bbs pinggu org thread 10685955 1 1 html ado文件下没有plus文件夹 在do文件或命令行中输入以下三个命令 sysdir set PLUS D stata17 MP ado p
  • Search and Replace -- 搜索与替换的高级利器

    对于从事电脑无纸化办公拟文写作的朋友 随着文档的增多 要查找一个遗忘的文件犹如大海捞针 虽然Windows系统已有很强的搜索功能 但依然不能满足我们的要求 如Windows不能搜索WPS格式的文件 不能搜索数据库 而在第三方软件的帮助下便可
  • 【YOLO系列】YOLOv6论文超详细解读(翻译 +学习笔记)

    前言 YOLOv6 是美团视觉智能部研发的一款目标检测框架 致力于工业应用 论文题目是 YOLOv6 A Single Stage Object Detection Framework for Industrial Applications
  • Xilinx FPGA 学习笔记——时钟资源

    在Xilinx的FPGA中 时钟网络资源分为两大类 全局时钟资源和区域时钟资源 全局时钟资源是一种专用互连网络 它可以降低时钟歪斜 占空比失真和功耗 提高抖动容限 Xilinx的全局时钟资源设计了专用时钟缓冲与驱动结构 从而使全局时钟到达C
  • vue cli4.5.13项目兼容IE问题记录

    用脚手架安装项目后 IE遇到问题如下 一 报错1002 点击错误发现在socketjs client 办法 降低socketjs client 版本 npm install sockjs client 1 5 1 二 安装后 仍然白屏 按照
  • 数据搜索之二分查询

    数据搜索中 如果给定数据集是乱序的情况下一般我们使用顺序搜索按位查询是最常用的方法 但是一旦数据是顺序的 二分法则能大大减少数据搜索的工作量 尤其在几十万甚至上亿的数据量情况下 它的效率就能大大的体现 二分法的思想是通过每次把数据集所在小区
  • html怎样去除超链接的样式_前端从入门到精通

    HTML 标题 标题 Heading 是通过 h1 h6 等标签进行定义的 h1 定义最大的标题 h6 定义最小的标题 注释 浏览器会自动地在标题的前后添加空行 注释 默认情况下 HTML 会自动地在块级元素前后添加一个额外的空行 比如段落
  • 基于卷积神经网络(cnn)的手写数字识别(PyTorch)

    目录 1 1 卷积神经网络简介 1 2 神经网络 1 2 1 神经元模型 1 2 2 神经网络模型 1 3 卷积神经网络 1 3 1卷积的概念 1 3 2 卷积的计算过程 1 3 3 感受野 1 3 4 步长 1 3 5 输出特征尺寸计算
  • mac塔防闯关游戏:气球塔防6 for Mac(BloonsTD6)v38.3中文原生版

    气球塔防6 是由Ninja Kiwi制作的一款塔防游戏 是该系列作品的第六代 游戏于2018年11月发布 在游戏中 玩家需要使用各种防御塔和特殊技能 防止气球带着猴子进入终点 并摧毁猴子们的城镇 游戏中有多种不同类型的气球和猴子 每个气球和
  • 系统重装系列(三)

    系统重装系列 三 接着上期的一系列操作完成后 接下来是我对于系统设置调整 使得系统更加简洁好用 上期回顾 系统重装系列 二 打酱油的杯具的博客 CSDN博客 任务栏 这是刚刚到手的任务栏 个人喜欢小图标 并且要去掉搜索框和右边更新的这个无卵
  • javaJDBC——连接mysql数据库

    java连接数据库的五种方法 最好的效率最高的是第五种 package com webtest connection import java io IOException import java io InputStream import