import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.util.HashMap; import java.util.Map; import java.util.Properties; import org.apache.log4j.Logger; public class SystemParameter { private static Logger logger = Logger.getLogger(SystemParameter.class); private static String msgTemplate1; private static String msgTemplate2; private static String msgTemplate3; private static final Properties properties; public static Map<String, String> proMap=new HashMap<String, String>(); private SystemParameter() { } static { properties = new Properties(); FileInputStream fis = null; try { fis = new FileInputStream(Thread.currentThread() .getContextClassLoader().getResource( "systemParamter.properties").toString() .substring(6)); properties.load(fis); msgTemplate1 = properties.getProperty("msgTemplate1"); proMap.put("msgTemplate1", msgTemplate1); msgTemplate2 = properties.getProperty("msgTemplate2"); proMap.put("msgTemplate2", msgTemplate2); msgTemplate3 = properties.getProperty("msgTemplate3"); proMap.put("msgTemplate3", msgTemplate3); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { try { fis.close(); } catch (IOException e) { e.printStackTrace(); } } } public static String getMsgTemplate1() { return proMap.get("msgTemplate1"); } public static String getMsgTemplate2() { return proMap.get("msgTemplate2"); } public static String getMsgTemplate3() { return proMap.get("msgTemplate3"); } // 修改通知模板 public static void modifyMsgTemplate(String key,String template) { logger.debug("################" + template); properties.setProperty(key, template); FileOutputStream fos = null; try { fos = new FileOutputStream(Thread.currentThread() .getContextClassLoader().getResource( "systemParamter.properties").toString() .substring(6)); properties.store(fos, ""); proMap.put(key, template); fos.close(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
另一个例子
public class Test { private static Properties properties = new Properties(); public static void main(String[] args) { try { InputStream is = Test. class .getClassLoader().getResourceAsStream( "cache.properties" ); properties.load(is); String size = properties.getProperty( "cache.size" ); writeLog( "配置成功!" + size); } catch (FileNotFoundException e) { writeLog( "配置文件不存在!" + e.getMessage()); } catch (IOException e) { writeLog( "读取配置文件IO错误!" + e.getMessage()); } } public static void writeLog(String strLog) { System.out.println(strLog); } } 1.使用java.util.ResourceBundle类的getBundle()方法 示例: ResourceBundle rb = ResourceBundle.getBundle(name, Locale.getDefault()); return rb.getString("key"); 注:该方法可以读jar包里的文件 2.使用java.util.PropertyResourceBundle类的构造函数 示例: InputStream in = new BufferedInputStream(new FileInputStream(name)); ResourceBundle rb = new PropertyResourceBundle(in); return rb.getString("key"); 3.使用java.util.Properties类的load()方法 示例: InputStream in = new BufferedInputStream(new FileInputStream(name)); Properties p = new Properties(); p.load(in); return p.getProperties("key"); or return p.getProperties("key", "defaultValue"); 4.使用class变量的getResourceAsStream()方法 示例: InputStream in = ClassName.class.getResourceAsStream(name); Properties p = new Properties(); p.load(in); return p.getProperties("key"); or return p.getProperties("key", "defaultValue"); 5.使用class.getClassLoader()所得到的java.lang.ClassLoader的getResourceAsStream()方法 示例: InputStream in = ClassName.class.getClassLoader().getResourceAsStream(name); Properties p = new Properties(); p.load(in); return p.getProperties("key"); or return p.getProperties("key", "defaultValue"); 6.使用java.lang.ClassLoader类的getSystemResourceAsStream()静态方法 示例: InputStream in = ClassLoader.getSystemResourceAsStream(name); Properties p = new Properties(); p.load(in); return p.getProperties("key"); or return p.getProperties("key", "defaultValue"); 补充 Servlet中可以使用javax.servlet.ServletContext的getResourceAsStream()方法 示例:InputStream in = context.getResourceAsStream(path); Properties p = new Properties(); p.load(in); return p.getProperties("key"); or return p.getProperties("key", "defaultValue"); 7.读jar外面的文件 FileInputStream fis; Properties p = new Properties(); fis = new FileInputStream(initfileName); prop.load(fis); 注:jar文件执行时,注意cmd路径必须与jar路径相同
您还没有登录,请您登录后再发表评论
以下是如何从类路径加载`config.properties`的例子: ```java Properties props = new Properties(); InputStream input = getClass().getResourceAsStream("/config.properties"); try { props.load(input); ...
根据给定文件的信息,我们可以总结出...总结以上内容,我们了解了如何在 Java 中使用 `Properties` 类进行配置文件的读写操作,以及如何使用 DOM 解析器来处理 XML 文件。这些技术是开发过程中经常用到的基本技能之一。
在这个例子中,我们指定了资源文件的名字('i18n'),路径('i18n/'),加载模式('map',表示将所有属性映射到全局对象$.i18n.map上),以及当前语言('en')。回调函数会在资源加载完成后执行,我们可以在这里获取...
这个类提供了一种存储和加载属性列表的方法,它能够处理`.properties`文件的读写操作。 1. 加载`properties`文件: 要读取`properties`文件,我们首先需要创建一个`Properties`对象,然后使用`load()`方法从输入流...
本示例"解析properties文件demo"将深入讲解如何在Java程序中读取和操作这些文件。 1. **properties文件格式** `properties`文件以键值对的形式存储数据,每行一个键值对,键和值之间用等号(`=`)或冒号(`:`)...
在Java编程中,Properties类通常与`java.io.InputStream`和`java.io.OutputStream`一起使用,以实现对配置文件的读写操作。下面将详细介绍如何使用Properties类进行配置文件的操作。 1. **加载Properties文件** 要...
标准三层结构。...通过读取外部.properties配置文件获取数据库连接字符串连接数据库并进行数据库操作。 附有详细的说明,我的日食项目直接导入。 赠送3752条中英文对照句子,这些句子相信会成为很多人座右铭。
在Java编程中,`...总结来说,Java通过`java.util.Properties`类提供了方便的API来读取和操作`properties`文件。在实际开发中,我们应确保正确加载和关闭资源,以及处理可能出现的异常,从而实现“完美”读取。
Java操作Properties属性文件是Java开发中的常见任务,主要用于配置应用的参数或存储系统设置。`jp.gr.java_conf.ussiy.app.propedit_5.3.3.jar` 是一个专门用于编辑和管理Properties文件的工具,这使得开发者可以...
在Java编程中,Properties类是用于处理属性列表的,这些属性列表通常存储在`.properties`文件中,用于配置应用程序或存储键值对数据。本文将详细介绍多种读取Properties文件的方法,并提供相关的代码示例。 1. **...
总之,Java中的`properties`文件是管理配置信息的有效方式,而`java.util.Properties`类提供了方便的API来读取和操作这些文件。通过`SysPropertiesUtil.java`这样的工具类,我们可以封装加载和获取配置的逻辑,使...
在Java中,我们可以使用`java.util.Properties`类来加载和操作这类文件。以下是一个简单的示例,展示如何读取`.properties`文件: ```java import java.io.FileInputStream; import java.io.IOException; import ...
总结,Java中读取properties文件的方法包括使用Properties类加载文件、通过ClassLoader获取类路径下的文件以及利用try-with-resources语句进行资源管理。根据具体的应用场景,选择合适的方法可以更高效地处理配置...
在"spring boot 常用数据库操作例子"这个示例中,我们可以看到几个关键点: 1. **多数据库实例**:Spring Boot支持配置多个数据源,这在需要连接不同数据库或者有分库分表需求的场景下非常有用。通过不同的配置文件...
下面是如何从类路径加载的例子: ```java Properties props = new Properties(); ClassLoader classLoader = Thread.currentThread().getContextClassLoader(); InputStream inputStream = classLoader....
一个知名的例子是"Properties File Editor"插件,它为`.properties`文件提供了以下功能: 1. **语法高亮**:突出显示关键字和字符串,提高代码可读性。 2. **编码支持**:支持不同的字符编码,如UTF-8,确保国际化...
文件解压后当成文件夹导入到src里面就行了 database.properties文件用来设置数据库连接的参数 主要的操作类是BaseDAO 包含了基本数据库操作(增,删,改,查)方法有注释。不过没有给例子。这问题纠结了几天,还是...
Spring Boot 是一个由 Pivotal 团队开发的框架,旨在简化 Spring 应用程序的...通过学习这个例子,开发者可以更好地理解如何在实际项目中利用 Spring Boot 的强大功能来操作非关系型数据库,实现高效的数据存储和检索。
在这个例子中,`getClass().getResourceAsStream()`方法会在类路径下查找"config.properties",并返回一个输入流。然后,我们可以通过Properties类加载这个属性文件,将其内容加载到一个Properties对象中。 将静态...
描述中提到的“类似VS的属性栏控件实现,可编辑,可折叠,展开”意味着这个控件不仅模仿了Visual Studio中的属性编辑器布局,还具备了动态操作功能。用户可以展开或折叠属性类别,以查看或隐藏不同层次的属性信息。...
相关推荐
以下是如何从类路径加载`config.properties`的例子: ```java Properties props = new Properties(); InputStream input = getClass().getResourceAsStream("/config.properties"); try { props.load(input); ...
根据给定文件的信息,我们可以总结出...总结以上内容,我们了解了如何在 Java 中使用 `Properties` 类进行配置文件的读写操作,以及如何使用 DOM 解析器来处理 XML 文件。这些技术是开发过程中经常用到的基本技能之一。
在这个例子中,我们指定了资源文件的名字('i18n'),路径('i18n/'),加载模式('map',表示将所有属性映射到全局对象$.i18n.map上),以及当前语言('en')。回调函数会在资源加载完成后执行,我们可以在这里获取...
这个类提供了一种存储和加载属性列表的方法,它能够处理`.properties`文件的读写操作。 1. 加载`properties`文件: 要读取`properties`文件,我们首先需要创建一个`Properties`对象,然后使用`load()`方法从输入流...
本示例"解析properties文件demo"将深入讲解如何在Java程序中读取和操作这些文件。 1. **properties文件格式** `properties`文件以键值对的形式存储数据,每行一个键值对,键和值之间用等号(`=`)或冒号(`:`)...
在Java编程中,Properties类通常与`java.io.InputStream`和`java.io.OutputStream`一起使用,以实现对配置文件的读写操作。下面将详细介绍如何使用Properties类进行配置文件的操作。 1. **加载Properties文件** 要...
标准三层结构。...通过读取外部.properties配置文件获取数据库连接字符串连接数据库并进行数据库操作。 附有详细的说明,我的日食项目直接导入。 赠送3752条中英文对照句子,这些句子相信会成为很多人座右铭。
在Java编程中,`...总结来说,Java通过`java.util.Properties`类提供了方便的API来读取和操作`properties`文件。在实际开发中,我们应确保正确加载和关闭资源,以及处理可能出现的异常,从而实现“完美”读取。
Java操作Properties属性文件是Java开发中的常见任务,主要用于配置应用的参数或存储系统设置。`jp.gr.java_conf.ussiy.app.propedit_5.3.3.jar` 是一个专门用于编辑和管理Properties文件的工具,这使得开发者可以...
在Java编程中,Properties类是用于处理属性列表的,这些属性列表通常存储在`.properties`文件中,用于配置应用程序或存储键值对数据。本文将详细介绍多种读取Properties文件的方法,并提供相关的代码示例。 1. **...
总之,Java中的`properties`文件是管理配置信息的有效方式,而`java.util.Properties`类提供了方便的API来读取和操作这些文件。通过`SysPropertiesUtil.java`这样的工具类,我们可以封装加载和获取配置的逻辑,使...
在Java中,我们可以使用`java.util.Properties`类来加载和操作这类文件。以下是一个简单的示例,展示如何读取`.properties`文件: ```java import java.io.FileInputStream; import java.io.IOException; import ...
总结,Java中读取properties文件的方法包括使用Properties类加载文件、通过ClassLoader获取类路径下的文件以及利用try-with-resources语句进行资源管理。根据具体的应用场景,选择合适的方法可以更高效地处理配置...
在"spring boot 常用数据库操作例子"这个示例中,我们可以看到几个关键点: 1. **多数据库实例**:Spring Boot支持配置多个数据源,这在需要连接不同数据库或者有分库分表需求的场景下非常有用。通过不同的配置文件...
下面是如何从类路径加载的例子: ```java Properties props = new Properties(); ClassLoader classLoader = Thread.currentThread().getContextClassLoader(); InputStream inputStream = classLoader....
一个知名的例子是"Properties File Editor"插件,它为`.properties`文件提供了以下功能: 1. **语法高亮**:突出显示关键字和字符串,提高代码可读性。 2. **编码支持**:支持不同的字符编码,如UTF-8,确保国际化...
文件解压后当成文件夹导入到src里面就行了 database.properties文件用来设置数据库连接的参数 主要的操作类是BaseDAO 包含了基本数据库操作(增,删,改,查)方法有注释。不过没有给例子。这问题纠结了几天,还是...
Spring Boot 是一个由 Pivotal 团队开发的框架,旨在简化 Spring 应用程序的...通过学习这个例子,开发者可以更好地理解如何在实际项目中利用 Spring Boot 的强大功能来操作非关系型数据库,实现高效的数据存储和检索。
在这个例子中,`getClass().getResourceAsStream()`方法会在类路径下查找"config.properties",并返回一个输入流。然后,我们可以通过Properties类加载这个属性文件,将其内容加载到一个Properties对象中。 将静态...
描述中提到的“类似VS的属性栏控件实现,可编辑,可折叠,展开”意味着这个控件不仅模仿了Visual Studio中的属性编辑器布局,还具备了动态操作功能。用户可以展开或折叠属性类别,以查看或隐藏不同层次的属性信息。...