Java_jdbc 基础笔记之一 数据库连接
方式一:
1、创建一个Driver实现类的对象
2、准备连接数据库的基本信息:url,user,password
3、调用Driver接口的connect(url,info)获取数据库连接
* Driver 是一个接口:数据库厂商必须提供实现的接口,能从其中获取数据库的连接。 1.加入mysql驱动
* 1)解压mysql-connector-java-5.1.7.zip
* 2)在当前项目下新建lib目录
* 4)右键bulid-path,add to
* buildpath 加入到类路径下
@Test
public void testDriver() throws SQLException {
// 1 创建Driver实现类的对象
Driver driver = new Driver();
// 2、准备连接数据库的基本信息:url,user,password
String url = "jdbc:mysql://127.0.0.1:3306/test";
Properties properties = new Properties();
properties.put("user", "root");
properties.put("password", "admin");
// 3、调用Driver接口的connect(url,properties)获取数据库连接
Connection conn = driver.connect(url, properties);
System.out.println(conn);
}
方式二:
/**
* 编写一个通用的方法,在不修改源程序的情况下,可以获取任何数据库的连接
* 解决方案:把数据库驱动Driver实现类的全类名、url、user、pasword 放入一个配置文件中,
* 通过修改配置文件的方式实现和具体的数据库的解耦
*
* @throws IOException
* @throws ClassNotFoundException
* @throws IllegalAccessException
* @throws InstantiationException
*
*/ public Connection getConnection() throws Exception {
String driverClass = null;
String urljdbc = null;
String user = null;
String password = null;
// 读取类路径下的jdbc.properties文件
InputStream is = getClass().getClassLoader().getResourceAsStream(
"jdbc.properties");
Properties properties = new Properties();
properties.load(is);// .....加载进来
driverClass = properties.getProperty("driver");
urljdbc = properties.getProperty("urljdbc");
user = properties.getProperty("user");
password = properties.getProperty("password");
// 通过反射创建Driver对象
Driver driver = (Driver) Class.forName(driverClass).newInstance();// 反射!!
Properties info = new Properties();
info.put("user", user);
info.put("password", password);
// 通过Driver的connect方法获取数据库的连接
Connection connection = driver.connect(urljdbc, info);
return connection; } @Test
public void testConnection() throws Exception {
System.out.println(getConnection());
}
转: https://blog.csdn.net/YL1214012127/article/details/48210857
Java_jdbc 基础笔记之一 数据库连接的更多相关文章
- Java_jdbc 基础笔记之八 数据库连接(写一个查询Student对象的方法)
public Student getStudent(String sql, Object... args) { // 查询Student对象 Student stu = null; Connectio ...
- Java_jdbc 基础笔记之七 数据库连接(方法升级)
之前的更新方法 public static void update(String sql) { Connection conn = null; Statement statement = null; ...
- Java_jdbc 基础笔记之六 数据库连接 (PreparedStatement)
reparedStatement 是 Statement 的子接口 * ①需要预编译 SQL 语句:PreparedStatement ps = conn.preparedStatement(sql) ...
- Java_jdbc 基础笔记之五 数据库连接 (ResultSet)
/** * ResultSet: 结果集. 封装了使用 JDBC 进行查询的结果. * 1. 调用 Statement 对象的 executeQuery(sql)可以得到结果集. * 2. Resul ...
- Java_jdbc 基础笔记之四 数据库连接 (通用更新方法)
/** * 写一个通用的更新方法 包括 INSERT. DELETE.UPDATE * 使用工具类 * @param sql */ public void update(String sql){ Co ...
- Java_jdbc 基础笔记之三 数据库连接 (Statement)
/** * 通过JDBC向之指定的数据表中插入一条记录 1 Statement :用于执行SQL语句的对象 * ==>通过Connection的createStatement()方法来获取 == ...
- Java_jdbc 基础笔记之二 数据库连接
/** * DriverManager 类是驱动程序管理器类 * 1)可以通过重载的getConnection()方法获取数据库的连接,较为方便 * 2)可以同时管理多个驱动程序:若注册了多个数据库连 ...
- Java_jdbc 基础笔记之十五 数据库连接(取得数据库自动生成的主键)
public class testGetKeyValue { /** * 取得数据库自动生成的主键 */ @Test public void testGeneratedKeys() { Connect ...
- Java_jdbc 基础笔记之十四 数据库连接(元数据)数据库信息及连接信息
public class MetaDatatest { /** * DatabaseMetaData 是描述 数据库的元数据对象 可以由Connection得到 */ @Test public voi ...
随机推荐
- SpringMVC 八大注解
1.@Controller 在SpringMVC 中,控制器Controller 负责处理由DispatcherServlet 分发的请求,它把用户请求的数据经过业务处理层处理之后封装成一个Model ...
- dede 对 单个 字段 编辑
{dede:field.body runphp='yes'} $body = str_replace("src=\"/uploads","src=\" ...
- Bash基础——减号-
参考:Bash基础——pipe pipe命令在 bash 的连续的处理程序中相当重要.在pipe命令当中,常常会使用到前一个命令的 stdout 作为这次的 stdin , 某些命令需要用到文件名 ( ...
- linux ssh_config和sshd_config配置文件学习
在远程管理linux系统基本上都要使用到ssh,原因很简单:telnet.FTP等传输方式是以明文传送用户认证信息,本质上是不安全的,存在被网络窃听的危险.SSH(Secure Shell)目前较可 ...
- eclipse更改web项目访问路径(修改配置文件)
1.打开你的web项目,然后找到 .settings文件夹,如果你的项目中没有这个文件夹,请搜索如何显示web项目中的隐藏文件夹就能够看到了. 2.打开.settings文件夹找到这个文件. 3.在这 ...
- 安装 docker-compose 配置 lnmp
1.安装docker-compose 确保已经安装了docker sudo curl -L "https://github.com/docker/compose/releases/downl ...
- python---Numpy模块中线性代数运算,统计和数学函数
NUMPY告一段落,接下来,进入pandas. import numpy as np # Numpy 线性代数运算 # Numpy 统计和数学函数 print('==========计算矩阵与其转置矩 ...
- 手写热更新阐述tinker实现原理
关于热更新如今面试也是基本上都会提及到的,我上一家公司用的是tinker,而这里准备研究的也是它的原理,而关于tinker的原理网上也是一大堆文章进行介绍,为了对它有个更加进一步的认识,所以自己动手来 ...
- P1801 黑匣子[堆]
题目描述 Black Box是一种原始的数据库.它可以储存一个整数数组,还有一个特别的变量i.最开始的时候Black Box是空的.而i等于0.这个Black Box要处理一串命令. 命令只有两种: ...
- test20190731 夏令营NOIP训练16
0+90+0=90.我只挑了T2做. 连接格点 有一个M行N列的点阵,相邻两点可以相连.一条纵向的连线花费一个单位,一条横向的连线花费两个单位.某些点之间已经有连线了,试问至少还需要花费多少个单位才能 ...