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使用配置文件连接数据库:的更多相关文章

  1. JAVA JDBC 读取配置文件链接数据库(oracle)

    ----db.properties-------- dbDriver = oracle.jdbc.driver.OracleDriverurl = jdbc:oracle:thin:@192.168. ...

  2. jdbc基础 (二) 通过properties配置文件连接数据库

    csdn博文地址:jdbc基础 (二) 通过properties配置文件连接数据库 上一篇描述了对mysql数据库的简单操作,下面来看一下开发中应该如何灵活应用. 因为jdbc对数据库的驱动加载.连接 ...

  3. 纯Java JDBC连接数据库,且用JDBC实现增删改查的功能

    Java JDBC连接数据库 package cn.cqvie.yjq; import java.sql.*; /** * 注册数据库的驱动程序,并得到数据库的连接对象 * @author yu * ...

  4. 【转】Java JDBC对应C# ADO连接数据库之区别

    JDBC对应C#连接数据库之区别 之前一直在用java,最近因为找了.NET的工作,开始学习.NET. 今天也是查了好多资料,但是一直没有看到和JDBC之间的对比博文,开始也是一头雾水! 但是功夫不负 ...

  5. Java JDBC高级特性

    1.JDBC批处理 实际开发中需要向数据库发送多条SQL语句,这时,如果逐条执行SQL语句,效率会很低,因此可以使用JDBC提供的批处理机制.Statement和PreparedStatemen都实现 ...

  6. Java JDBC下执行SQL的不同方式、参数化预编译防御

    相关学习资料 http://zh.wikipedia.org/wiki/Java数据库连接 http://lavasoft.blog.51cto.com/62575/20588 http://blog ...

  7. java JDBC链接sqlserver/mysql/oracle

    今天初学数据库的一些简单创建数据库和表,并进行简单的查询,插入. 接下学习的就是java工程中怎么链接数据库呢.主要的方法和用到的类如下. 切记,mysql需要的jar包 mysql-connecto ...

  8. Java - 使用hibernate配置文件 + JPA annotation注解操作数据库

    本程序运行环境:IDEA. 实际上我对hiberbate与注解的关系还不是太清晰.据我所知注解都是Java JPA的,那么我的理解是:hibernate就应该只是通过这些JPA标识及hibernate ...

  9. java读取properties配置文件总结

    java读取properties配置文件总结 在日常项目开发和学习中,我们不免会经常用到.propeties配置文件,例如数据库c3p0连接池的配置等.而我们经常读取配置文件的方法有以下两种: (1) ...

随机推荐

  1. BUG Error:Execution failed for task ':app:dexDebug'.

    Error:Execution failed for task ':app:dexDebug'. > com.android.ide.common.process.ProcessExceptio ...

  2. android--HttpURLConnection(转载)

    android之HttpURLConnection 1.HttpURLConnection连接URL1)创建一个URL对象 URL url = new URL(http://www.baidu.com ...

  3. SGU 269. Rooks(DP)

    题意: 给n(<=250)条水平网格,然后在上面放k棋子,每行每列都只能放一个.求方法总数. Solution: 简单的DP, 只要对给出的水平长度排个序就很容易处理了. 需要用到高精度. 偷懒 ...

  4. [lua]原来这才是表驱动的正确表达方式

    曾经写了个很煞笔的脚本模拟switch..case语法形式.[lua]尝试一种Case语法糖 而今实际项目应用中突发,原来这才是正确的表驱动方式表达.如下所贴: function event_do( ...

  5. 读书笔记之 - javascript 设计模式 - 门面模式

    门面模式有俩个作用: 简化类的接口 消除类与使用它的客户代码之间的耦合 在javascript中,门面模式常常是开发人员最亲密的朋友.它是几乎所有javascript库的核心原则,门面模式可以使库提供 ...

  6. python 元组问题解决

    a = (1,2,{'k1':'b2'}) a[2]['k1'] = 5 print(a) (1, 2, {'k1': 5}) 为什么元素'b2' = 5 应该是元素'k1' = 5 求解 a[2][ ...

  7. Day22 JSONP、瀑布流

    一.JSONP JSONP a.Ajax $.ajax({ url:'/index/', dataType:'json', data:{}, type:'GET', success:function( ...

  8. 【C语言】测试系统各数据类型大小代码

    测试各系统不同数据类型大小代码 一.相关基础知识 不同环境下各数据类型大小可能不相等,(某些环境下,类型带下可以选择)故测了就知道! 二.具体内容 三.分析总结 四.实例测试 #include< ...

  9. HDU 5726 GCD (2016 Multi-University Training Contest 1)

      Time Limit: 5000MS   Memory Limit: 65536KB   64bit IO Format: %I64d & %I64u Description Give y ...

  10. Successfully installed matplotlib

    Installing /usr/local/lib/python2.7/dist-packages/matplotlib-1.4.0-py2.7-nspkg.pthSuccessfully insta ...