Java Properties实例 - 极悦

JavaSE教程_进阶

全部教程

×

Java Properties实例

package com.wkcto.chapter08.demo03;
import java.io.IOException;
import java.io.InputStream;
/**
 * 定义一个业务逻辑类
 * 		需要使用Collection集合
 * @author 蛙课网
 *
 */
import java.util.Collection;
import java.util.Properties;

public class DataOP {
	static Collection collection;  		//定义Collection引用

	static{
		/*
		 * 静态代码块, 在类加载内存后,在类使用前执行,
		 * 	有时, 这个类需要依赖一些外部资源, 就可以在静态代码块中加载这些依赖资源
		 * 	在本例中, 可以在静态代码块中从配置文件中读取Collection集合的实现类名
		 */
		
		try {
			Properties properties = new Properties();
			InputStream inStream = DataOP.class.getResourceAsStream("/com/wkcto/chapter08/demo03/config.properties");
			properties.load(inStream);
			String className = properties.getProperty("classname");
			//通过反射技术 创建实例
			Class<?> class1 = Class.forName(className);
			collection = (Collection) class1.newInstance();
		} catch (ClassNotFoundException | InstantiationException | IllegalAccessException | IOException e) {
			e.printStackTrace();
		}
	}
	
	//把数据添加到集合中
	public void addData() {
		collection.add("data11");
	}
	//显示数据
	public void show() {
		System.out.println( collection );
		
	}
}

在当前包中添加config.properties配置文件,

classname=java.util.HashSet

技术文档推荐

更多>>

视频教程推荐

更多>>