jdbc.properties文件的配置
使用配置文件访问数据库的优点是:
一次编写随时调用,数据库类型发生变化只需要修改配置文件。
配置文件的设置:
在配置文件中,key-value对应的方式编写。
不好意思我只用过这两个数据库 :)
----------Oracle
jdbc.driver_class=oracle.jdbc.driver.OracleDriver //数据库驱动
jdbc.connection.url=jdbc:oracle:thin:@localhost:1521:orcl //数据库地址
jdbc.connection.username=c##wuyong//数据库名称
jdbc.connection.password=//数据库密码
-----------mysql
jdbc.driver_class=com.mysql.jdbc.Driver
jdbc.connection.url=jdbc:mysql://127.0.0.1:3306/MySQL
jdbc.connection.username=root
jdbc.connection.password=Admin
读取配置文件:
使用Properties对象的load()方法来实现配置文件的读取,使用流来实现文件读写的操作。
为了避免重复编写读取配置文件的代码,可以创建一个工具类:
//工具类--单列模式
public class ConfigManager {
//读取配置文件(属性文件)的工具类
private static ConfigManager configManager;
private static Properties properties;
//这里必须为private,避免外部new一个ConfigManager对象
private ConfigManager(){
String configFil="database.propertise";
properties=new Properties();
//getClassLoader()返回类加载器
//getResourceAsStream(configFil)返回InputStream对象
InputStream inputStream=ConfigManager.class.getClassLoader().getResourceAsStream(configFil);
try {
properties.load(inputStream);
inputStream.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//通过单列模式设置实例化的个数
//对外开放的接口
public static ConfigManager getInstance(){
if (configManager==null) {
configManager=new ConfigManager();
return configManager;
}
return configManager;
}
//通过key获取对应的value值
public String getString(String key){
return properties.getProperty(key);
}
}
使用工具类的方法:
//获取数据库连接
public boolean getConnection(){
//读出配置信息
String driver=ConfigManager.getInstance().getString("jdbc.driver_class");
String url=ConfigManager.getInstance().getString("jdbc.connection.url");
String username=ConfigManager.getInstance().getString("jdbc.connection.username");
String password=ConfigManager.getInstance().getString("jdbc.connection.password");
try {
// 加载JDBC驱动
Class.forName(driver);
connection=DriverManager.getConnection(url, username, password);
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return false;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return false;
}
return true;
}
jdbc.properties文件的配置的更多相关文章
- jdbc.properties 文件的配置
jdbc.properties文件的配置 使用配置文件访问数据库的优点是: 一次编写随时调用,数据库类型发生变化只需要修改配置文件. 配置文件的设置: 在配置文件中,key-value对应的方式编 ...
- application.properties文件常用配置
项目一直在用properties文件写配置,因为配置不是自己来写所以也从来没有研究过各个配置的含义,所以对很多配置也是一知半解,只是知道可以这样用,但是不知道为什么能这样用.自己抽空找了一下资料做个记 ...
- java读取properties文件的配置信息
项目开发中,我们一般来向 application.properties 文件中放一些全局配置变量,以便程序中读取使用,本篇内容来演示从properties配置文件中读取键值. 当然,我们不一定写入 a ...
- 每日一蠢 .kettle 下的kettle.properties文件内配置的内容不能被识别
昨天装封装好的ETL 工具 窝将环境变量中的KETTLE_HOME删除了, 结果 .kettle 下的kettle.properties文件内配置的内容不能被识别 can't parse argum ...
- log4j.properties文件的配置
Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使用这三个组件可以轻松 ...
- Liferay SDK 6.2与7.0中build.[$username].properties 文件的配置
这篇文章是针对刚开始开发Liferay的新手写的,希望能够帮到刚入门的开发者减少一些配置上的麻烦. 前提: 1. 下载了Liferay IDE(Liferay的官方开发工具) 2.下载了Liferay ...
- 将properties文件的配置设置为整个Web应用的全局变量。
四种作用域: Web应用中的变量存放在不同的jsp对象中,会有不一样的作用域,四种不同的作用域排序是 pageContext < request < session < applic ...
- 【转】log4j.properties文件的配置
一.前言 log4j使用的还是比较多的,但是对于其配置又很难描述清楚要怎么配置,说明我自己对于log4j的配置并不是非常熟悉,所以在网上找了一篇详尽的 博文转载,在此非常感谢原文作者的辛苦付出,如有需 ...
- java工具类获取properties文件的配置
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.i ...
随机推荐
- Python __getattribute__ vs __getattr__
# 例子在原来的基础上简化了一下,排除依赖和干扰,详细参见原项目 class UrlGenerator(object): def __init__(self, root_url): self.url ...
- leetcode876
class Solution { public: ListNode* middleNode(ListNode* head) { if (head == NULL) { return nullptr; ...
- MySQL MVCC原理
1 MVCC基本原理 MVCC:多版本并发控制(MVCC,Multiversion Currency Control).一般情况下,事务性储存引擎不是只使用表锁,行加锁的处理数据,而是结合了MVCC机 ...
- 【原】Coursera—Andrew Ng斯坦福机器学习(0)——课程地址和软件下载
斯坦福大学机器学习 课程信息 机器学习是一门研究在非特定编程条件下让计算机采取行动的学科.最近二十年,机器学习为我们带来了自动驾驶汽车.实用的语音识别.高效的网络搜索,让我们对人类基因的解读能力大大提 ...
- 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 6_Logistic Regression 逻辑回归
Lecture6 Logistic Regression 逻辑回归 6.1 分类问题 Classification6.2 假设表示 Hypothesis Representation6.3 决策边界 ...
- java Web中页面跳转方式之请求转发
1.在一个请求中跨越多个Servlet 2.多个Servlet在一个请求中,他们共享request对象.就是在Servlet01中setAttribute()保存数据在Servlet02中由getAt ...
- 设置html页面不被浏览器缓存
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" ...
- 【bzoj2947】[Poi2000]促销
2947: [Poi2000]促销 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 181 Solved: 120[Submit][Status][D ...
- Composer安装(windows)
https://files.cnblogs.com/files/wlphp/Composer-Setup.zip 先下载这个安装包,一直下一步 然后设置composer全局中国景象 composer ...
- Java Http 请求
package zr.weixin.com.utils; import java.io.BufferedReader; import java.io.IOException; import java. ...