在web和非web环境都可以使用的属性文件属性读取java代码

简介:

代码如下:

 

package com.test;

import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;


public class PropManager {
	
	private static final Log log = LogFactory.getLog(PropManager.class);
	
	public static Properties prop = null;
	static {
		prop = new Properties();

		InputStream in=new PropManager().getClass().getResourceAsStream("jdbc.properties");
		log.info("start load jdbc.properties config file ! in===== "+in);
		try {
			log.info("start load jdbc.properties config file ! ");
			prop.load(in);
			log.info("success load jdbc.properties config file done! ");
		} catch (IOException e1) {
			e1.printStackTrace();
			log.error(" load jdbc.properties config failure! ",e1);
		}
	}

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		
		
		String jdbcUrl=prop.getProperty("jdbc.test.url");
		String jdbcUsername = prop.getProperty("jdbc.test.username");
		String jdbcPassword = prop.getProperty("jdbc.test.password");
		System.out.println("jdbcUrl=="+jdbcUrl);
		System.out.println("jdbcUsername=="+jdbcUsername);
		System.out.println("jdbcPassword=="+jdbcPassword);
		
		System.out.println("jdbcPassword=="+getProp("jdbc.admin.password"));
		

	}
	
	public static String getProp(String key)
	{
		return prop.getProperty(key);
	}
	
	

}


属性文件:

 

jdbc.properties:

内容如下:

 

#
jdbc.test.url=jdbc:mysql://192.168.0.1:3316/test?characterEncoding=GBK
jdbc.test.username=root
jdbc.test.password=123456

 

执行:输出:

 

2012-12-25 18:06:02,711 INFO [main] - com.test.PropManager.<clinit>(20) | start load jdbc.properties config file ! in===== java.io.BufferedInputStream@14d3343
2012-12-25 18:06:02,711 INFO [main] - com.test.PropManager.<clinit>(22) | start load jdbc.properties config file !
2012-12-25 18:06:02,711 INFO [main] - com.test.PropManager.<clinit>(24) | success load jdbc.properties config file done!
jdbcUrl==jdbc:mysql://192.168.0.1:3316/test?characterEncoding=GBK
jdbcUsername==root
jdbcPassword==123456
jdbcPassword==123456

 

 

特别注意如下路径写法:

 

InputStream in=new PropManager().getClass().getResourceAsStream("jdbc.properties");

同时 保持 PropManager类和属性文件jdbc.properties:在一个目录下.

 

 

 

 

目录
相关文章
|
12天前
|
Java
Java“解析时到达文件末尾”解决
在Java编程中,“解析时到达文件末尾”通常指在读取或处理文件时提前遇到了文件结尾,导致程序无法继续读取所需数据。解决方法包括:确保文件路径正确,检查文件是否完整,使用正确的文件读取模式(如文本或二进制),以及确保读取位置正确。合理设置缓冲区大小和循环条件也能避免此类问题。
|
17天前
|
Java
利用GraalVM将java文件变成exe可执行文件
这篇文章简明地介绍了如何使用GraalVM将一个简单的Java程序编译成exe可执行文件,首先通过javac命令编译Java文件生成class文件,然后使用native-image命令将class文件转换成独立的exe文件,并展示了如何运行这个exe文件。
33 0
利用GraalVM将java文件变成exe可执行文件
|
10天前
|
计算机视觉 Python
Flask学习笔记(六):基于Flask的摄像头-web显示代码(可直接使用)
这篇文章是关于如何使用Flask框架结合OpenCV库,通过电脑摄像头实现视频流在网页上的实时显示,并提供了单摄像头和多摄像头的实现方法。
31 2
Flask学习笔记(六):基于Flask的摄像头-web显示代码(可直接使用)
|
4天前
|
Java
Java开发如何实现文件的移动,但是在移动结束后才进行读取?
【10月更文挑战第13天】Java开发如何实现文件的移动,但是在移动结束后才进行读取?
16 2
|
4天前
|
Java Apache Maven
Java将word文档转换成pdf文件的方法?
【10月更文挑战第13天】Java将word文档转换成pdf文件的方法?
16 1
|
4天前
|
监控 Java
Java定时扫码一个文件夹下的文件,如何保证文件写入完成后才进行处理?
【10月更文挑战第13天】Java定时扫码一个文件夹下的文件,如何保证文件写入完成后才进行处理?
18 1
|
8天前
|
小程序 Oracle Java
JVM知识体系学习一:JVM了解基础、java编译后class文件的类结构详解,class分析工具 javap 和 jclasslib 的使用
这篇文章是关于JVM基础知识的介绍,包括JVM的跨平台和跨语言特性、Class文件格式的详细解析,以及如何使用javap和jclasslib工具来分析Class文件。
22 0
JVM知识体系学习一:JVM了解基础、java编译后class文件的类结构详解,class分析工具 javap 和 jclasslib 的使用
|
14天前
|
消息中间件 Java 大数据
大数据-56 Kafka SpringBoot与Kafka 基础简单配置和使用 Java代码 POM文件
大数据-56 Kafka SpringBoot与Kafka 基础简单配置和使用 Java代码 POM文件
49 2
|
16天前
|
XML JavaScript Java
java与XML文件的读写
java与XML文件的读写
16 3
|
15天前
|
前端开发 Java API
JAVA Web 服务及底层框架原理
【10月更文挑战第1天】Java Web 服务是基于 Java 编程语言用于开发分布式网络应用程序的一种技术。它通常运行在 Web 服务器上,并通过 HTTP 协议与客户端进行通信。
14 1