Java 中的 properties 文件是一种配置文件,主要用于表达配置信息,文件类型为*.properties,格式为文本文件。

文件的内容是格式是"键=值"(key-value)的格式。

在 properties 文件中,可以用"#"来作注释。

properties文件在Java编程中用到的地方很多,操作很方便。

例如,我们可以把数据库连接信息,如URL、账号、密码这些动态信息不写在class中,而放入一个可配置的属性文件,程序从属性文件中读取值以实现"运行时动态加载"。

在博文《JDBC之与数据库MySQL的连接》中,我们运用了如下方法建立了与数据库的连接:

	//返回一个与特定数据库的连接
public Connection getConnection() {
try {
connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "yongqiang");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return connection;
}

具体参见: http://blog.csdn.net/jueblog/article/details/9503691

下面,我们以此为例,通过把数据库连接信息,如URL、账号、密码这些动态信息写入properties,从而了解JDBC如何读取properties属性文件。

首先新建一个 db.properties ,新建目录为Java 项目下的  scr  文件夹下。
以记事本格式打开,并写入如下信息:
#【#】可以添加注释
url=jdbc\:mysql\://localhost\:3306/test
user=root
password=yongqiang

将上面的Java 方法改写为如下代码:
	/** 返回一个与特定数据库的连接 */
public Connection getConnection() {
try {
//加载属性文件,读取数据库连接配置信息
Properties pro = new Properties();
try {
pro.load(JDBC_BaseDAO.class.getResourceAsStream("/db.properties"));
} catch (IOException e) {
System.out.println("未找到配置文件!!!");
}
String url = pro.getProperty("url");
String user = pro.getProperty("user");
String password = pro.getProperty("password");
connection = DriverManager.getConnection(url, user, password);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return connection;
}

如此即可。


Java学习笔记——JDBC读取properties属性文件的更多相关文章

  1. java学习笔记16--I/O流和文件

    本文地址:http://www.cnblogs.com/archimedes/p/java-study-note16.html,转载请注明源地址. IO(Input  Output)流 IO流用来处理 ...

  2. Java-马士兵设计模式学习笔记-观察者模式-读取properties文件改成单例模式

    一.概述 1.目标:读取properties文件改成单例模式 二.代码 1.Test.java class WakenUpEvent{ private long time; private Strin ...

  3. JAVA学习笔记 -- JDBC及其应用

    一个.准备工作 1.开放SQL Server服务与支持TCP/IP  进一步确认TCPport watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMjk ...

  4. 读取properties属性文件

    1.通过类加载器加载 InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("Chap ...

  5. Java 学习笔记之读取jdbc.propertyes配置参数

    package test; import java.io.IOException; import java.io.InputStream; import java.util.Properties; p ...

  6. Java学习笔记--JDBC数据库的使用

    参考  hu_shengyang的专栏 : http://blog.csdn.net/hu_shengyang/article/details/6290029 一. JDBC API中提供的常用数据库 ...

  7. Spring4.0学习笔记(4) —— 使用外部属性文件

    1.配置xml文件 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="htt ...

  8. Java学习笔记——JDBC之与数据库MySQL的连接以及增删改查等操作

    必须的准备工作 一.MySQL的安装.可以参考博文: http://blog.csdn.net/jueblog/article/details/9499245 二.下载 jdbc 驱动.可以从在官网上 ...

  9. Java学习笔记41(Properties类)

    Properties可以做到集合的数据持久存储 它是map接口的一个实现类,可以使用map类的方法, 不过存在区别:它没有泛型,规定键类型为字符串 这个集合在以后的开发中会经常用到,比如连接数据库等 ...

随机推荐

  1. Memcached 搭建过程

    原文链接:http://www.open-open.com/lib/view/open1324368235733.html 安装 memcached 服务端 yum -y install libeve ...

  2. 如何分析apache日志[access_log(访问日志)和error_log(错误日志)]

    如何分析apache日志[access_log(访问日志)和error_log(错误日志)] 发布时间: 2013-12-17 浏览次数:205 分类: 服务器 默认Apache运行会access_l ...

  3. 武汉科技大学ACM :1002: 零起点学算法38——求阶乘和

    Problem Description 输入一个正整数n(n<=10),计算 S=1!+2!+3!+...+n! Input 输入一个正整数n(n<=10)(多组数据) Output 输出 ...

  4. STL删除vector或list的方法及注意的问题

    删除vector中的元素 1.删除指定的所有对象 STL中remove()只是将待删除元素之后的元素移动到vector的前端,而不是删除.若要真正移除,需要搭配使用erase().例子: vector ...

  5. CentOS+nginx+uwsgi+Python 多站点环境搭建

    转载:http://www.cnblogs.com/xiongpq/p/3381069.html 环境: CentOS X64 6.5 nginx 1.5.6 Python 2.7.5 正文: 一:安 ...

  6. Jquery获取背景图片src路径

    例如获取body的背景: Jquery代码如下: var back = $('body').css('backgroundImage'); back.substring(start,end); //截 ...

  7. python 操作 mysql基础补充

    前言 本篇的主要内容为整理mysql的基础内容,分享的同时方便日后查阅,同时结合python的学习整理python操作mysql的方法以及python的ORM. 一.数据库初探 在开始mysql之前先 ...

  8. string string.h=cstring=str

    <string.h> <string.h>是C版本的头文件,包含比如strcpy.strcat之类的字符串处理函数. <cstring> 在C++标准化(1998年 ...

  9. 用PYTHON实现将电脑里的所有文件按大小排序,便于清理

    嘿嘿,慢慢找到写代码的感觉了. 这个小程序涉及的东东还是很多的,数据结构的设计,错误的处理,快速字典排序,文件数值调整.... import os,os.path import glob SUFFIX ...

  10. linux教程之四

    相信不少想学习linux的新手们正愁不知道看什么linux学习教程好,下面小编给大家收集和整理了几点比较重要的教程,供大家学习,如需想学习更多的话,可到wdlinux学堂寻找更多教程.   linux ...