java jdbc使用配置文件连接数据库:
java jdbc使用配置文件连接数据库:
创建后缀名为:.properties的文件,文件内容包括,数据库驱动、连接的数据库地址、用户名、密码……
以Mysql为例创建config.properties配置文件其内容如下:
DRIVER_CLASS=com.mysql.jdbc.Driver
CONNECTION_URL=jdbc:mysql://localhost:3306/test
CONNECTION_USERNAME=root
CONNECTION_PASSWORD=root
创建连接数据库类:
例如:
public class ConnectionFactory {
private static Properties prop;
private static final String CONFIGNAME = "config.properties";
private static List<Connection> conns;
private Connection conn;
public JDBCFactory() throws Exception{
conns = new ArrayList<Connection>();
prop = new Properties();
//加载配置文件
prop.load(this.getClass().getResourceAsStream(CONFIGNAME));
//获取数据库驱动
Class.forName(prop.getProperty("DRIVER_CLASS"));
//创建十个数据库连接并放入List集合(conns),
//list集合(conns)相当于一个有十个数据库连接的数据库连接池
for (int i = 0; i < 10; i++) {
conn = DriverManager.getConnection(
prop.getProperty("CONNECTION_URL"),
prop.getProperty("CONNECTION_USERNAME"),
prop.getProperty("CONNECTION_PASSWORD"));
conns.add(conn);
}
}
//从List集合(conns)中获取数据库连接
public Connection getConnection(){
return conns.remove(0);
}
//已用完的数据库连接从新添加到List集合(conns)中
public void close(Connection conn){
if(conn!=null){
conns.add(conn);
}
}
}
定义测试类:
public class JDBCTest {
public static void main(String[] args) throws Exception {
//创建ConnectionFactory对象,同时创建数据库连接池
ConnectionFactory cf = new ConnectionFactory();
//获取数据库连接
Connection conn = cf.getConnection();
//select sql语句
PreparedStatement ps = conn.prepareStatement("select * from user");
//执行sql语句
ResultSet rs = ps.executeQuery();
//循环输入查询到的内容
while(rs.next()){
//id username password 为查询数据库的字段
System.out.println("id:"+rs.getInt("id")+
"Username:"+rs.getString("username")+
"Password:"+rs.getString("password"));
}
}
}
java jdbc使用配置文件连接数据库:的更多相关文章
- JAVA JDBC 读取配置文件链接数据库(oracle)
----db.properties-------- dbDriver = oracle.jdbc.driver.OracleDriverurl = jdbc:oracle:thin:@192.168. ...
- jdbc基础 (二) 通过properties配置文件连接数据库
csdn博文地址:jdbc基础 (二) 通过properties配置文件连接数据库 上一篇描述了对mysql数据库的简单操作,下面来看一下开发中应该如何灵活应用. 因为jdbc对数据库的驱动加载.连接 ...
- 纯Java JDBC连接数据库,且用JDBC实现增删改查的功能
Java JDBC连接数据库 package cn.cqvie.yjq; import java.sql.*; /** * 注册数据库的驱动程序,并得到数据库的连接对象 * @author yu * ...
- 【转】Java JDBC对应C# ADO连接数据库之区别
JDBC对应C#连接数据库之区别 之前一直在用java,最近因为找了.NET的工作,开始学习.NET. 今天也是查了好多资料,但是一直没有看到和JDBC之间的对比博文,开始也是一头雾水! 但是功夫不负 ...
- Java JDBC高级特性
1.JDBC批处理 实际开发中需要向数据库发送多条SQL语句,这时,如果逐条执行SQL语句,效率会很低,因此可以使用JDBC提供的批处理机制.Statement和PreparedStatemen都实现 ...
- Java JDBC下执行SQL的不同方式、参数化预编译防御
相关学习资料 http://zh.wikipedia.org/wiki/Java数据库连接 http://lavasoft.blog.51cto.com/62575/20588 http://blog ...
- java JDBC链接sqlserver/mysql/oracle
今天初学数据库的一些简单创建数据库和表,并进行简单的查询,插入. 接下学习的就是java工程中怎么链接数据库呢.主要的方法和用到的类如下. 切记,mysql需要的jar包 mysql-connecto ...
- Java - 使用hibernate配置文件 + JPA annotation注解操作数据库
本程序运行环境:IDEA. 实际上我对hiberbate与注解的关系还不是太清晰.据我所知注解都是Java JPA的,那么我的理解是:hibernate就应该只是通过这些JPA标识及hibernate ...
- java读取properties配置文件总结
java读取properties配置文件总结 在日常项目开发和学习中,我们不免会经常用到.propeties配置文件,例如数据库c3p0连接池的配置等.而我们经常读取配置文件的方法有以下两种: (1) ...
随机推荐
- SqlSugar框架T4模板的使用
一.T4模板说明 1.T4模板是用来生成Model层实体类的 2.文件后缀为.tt 3.需要修改配置主要有:引用的SqlSugar.dll的位置.生成实体类的位置及生成实体类的命名空间 4.T4模板生 ...
- UIKit Animation
UIKit Animation 1.属性动画 - (void)changeFrameAnimation { [UIView beginAnimations:@"frameAnimation& ...
- jQuery 事件 方法
jQuery 事件方法 事件方法触发器或添加一个函数到被选元素的事件处理程序. 下面的表格列出了所有用于处理事件的 jQuery 方法. 方法 描述 bind() 向元素添加事件处理程序 blur() ...
- Linq 构造复杂Json 多表group by
一个主表A(a1,a2),子表B(a1,b1,b2) ,想得到的结果是 [{a1,a2,Info [{b1,b2},{b1,b2},...}]] var list= from a in A join ...
- 【转载】介绍“Razor”— ASP.NET的一个新视图引擎
最近在做一个项目,用的MVC razor 视图,因为之前没用这个视图做过,于是查阅文档资料,共享一下. https://msdn.microsoft.com/zh-cn/ff849693 内容主要是讲 ...
- Google HTML/CSS/JS代码风格指南
JS版本参见:http://www.zhangxinxu.com/wordpress/2012/07/google-html-css-javascript-style-guides/ HTML/CSS ...
- C++ 类访问控制(public/protected/private)
第一:private, public, protected 访问标号的访问范围. private:只能由1.该类中的函数.2.其友元函数访问. 不能被任何其他访问,该类的对象也不能访问. protec ...
- php利用时间生成随机函数
date("YmdHis",time()); rand(); 生成随机数 当括号内无参数时 系统会以当前时间为种子进行随机数的生成 rand(1,10); 括号里面是生 ...
- C#程序中:如何启用进程、结束进程、查找进程
在启动某个程序之前,如果需要先检查改程序是否已经运行,可以查找进程里有没有这个进程,再根据查找进程后的结果进行相应的判断操作. 产找进程的范围是任务管理器中的进程列表.如果进程被隐藏了,结果……(我没 ...
- 网站商务通链接快速标识v1.0.js
js代码为: function getSwt(keys){ try{ if(openZoosUrl&&typeof(openZoosUrl)=="function" ...