项目中经常用到的配置文件,除了XML文件之外,还会用到Properties文件来存储一些信息,例如国际化的设置、jdbc连接信息的配置等。有时候也会把一些路径或者sql语句放到Properties中,这样就不用直接在Java代码中放置很多sql语句,看起来代码比较整齐。下面就分别用java和js介绍读取properties中的内容。

properties文件存储内容,可以简单的认为是key-value格式的,设置一个唯一的关键字,通过该关键字就可以读取它所代表的内容,在Java代码和js代码中读取的原理都是这样的。

在Java中,主要是采用的java.util.Properties类来承接的。主要过程是创建一个Properties对象,然后以流的形式读取properties文件,将该文件赋给Properties对象,就可以通过Properties对象来读取properties文件中的内容了。

Java代码:

package com.at21.landscaping.util;
import java.io.InputStream;
import java.util.Properties; public class SyscfgUtil{ private Properties props; public Properties getProperties(){
if(props == null){
props = new Properties();
InputStream in;
try{
in = getClass().getResourceAsStream("/syscfg.properties");
props.load(in);
} catch (Exception e){
LogUtils.error(e);
}
}
}
}

用JS来读取properties文件,需要引入一个jQuery的插件jQuery.i18n.properties。这个插件主要是做国际化处理的,国际化一般是放到Properties文件中配置的,所以jquery提供了这个插件来读取properties文件。先把jquery引入js,再引入jquery.i18n.properties,将properties放置到某个位置,加上下面的代码就可以读取到了。

js代码:

function loadProperties(){
JQuery.i18n.properties({//加载properties文件
name:'syscfg',//properties文件的名称
path:'config/',//properties文件的路径
mode:'map',//用map的方式使用资源文件中的值
callback:function(){
console.log($.i18n.prop("landUrl"));//根据key值取得需要的资源
}
});
}

默认加载的时候,其实需要加载三个properties文件,分别是syscfg.properties、syscfg_zh.properties和syscfg_zh_CN.properties,其实就是因为国际化的处理。

分别用Java和JS读取Properties文件内容的更多相关文章

  1. 五种方式让你在java中读取properties文件内容不再是难题

    一.背景 最近,在项目开发的过程中,遇到需要在properties文件中定义一些自定义的变量,以供java程序动态的读取,修改变量,不再需要修改代码的问题.就借此机会把Spring+SpringMVC ...

  2. Java项目中读取properties文件,以及六种获取路径的方法

    下面1-4的内容是网上收集的相关知识,总结来说,就是如下几个知识点: 最常用读取properties文件的方法 InputStream in = getClass().getResourceAsStr ...

  3. 手工创建tomcat应用,以及实现js读取本地文件内容

    手工创建tomcat应用: 1.在webapps下面新建应用目录文件夹 2.在文件夹下创建或是从其他应用中复制:META-INF,WEB-INF这两个文件夹, 其中META-INF清空里面,WEB-I ...

  4. java代码如何读取properties文件

    我们在开发工程中,有时候需要在Java代码中定义一些在部署生产环境时容易改变的变量,还需要我们单独放在一个外部属性文件中,方便我们将来修改.这里列出了两种比较方便的方式. 一.在Spring配置文件中 ...

  5. Spring 如何读取properties文件内容

    http://hi.baidu.com/alizv/blog/item/d8cb2af4094662dbf3d38539.html 在现实工作中,我们常常需要保存一些系统配置信息,大家一般都会选择配置 ...

  6. JS读取.properties文件的方法

    假设有JavaScript文件叫做:readproperties.js,这个文件需要读取config.properties这个配置文件,步骤如下: 1.  下载插件jquery.i18n.proper ...

  7. java web中读取properties文件时的路径问题

    在web开发时,难免会有一些固定的参数,我们一般把这些固定的参数存在properties文件中,然后用的时候要读出来.但经常出现一些错误,找不到相应的路径,所以,今天特地讲一些如何正确获得路径. 首先 ...

  8. java项目中读取properties文件

    这里的配置文件都放在src下面, System.properties的内容 exceptionMapping=exceptionMapping.properties config=config.pro ...

  9. 关于jquery js读取excel文件内容 xls xlsx格式 纯前端

    附带参考:http://blog.csdn.net/gongzhongnian/article/details/76438555 更详细导入导出:https://www.jianshu.com/p/7 ...

随机推荐

  1. 洛谷P2047 [NOI2007]社交网络 [图论,最短路计数]

    题目传送门 社交网络 题目描述 在社交网络(social network)的研究中,我们常常使用图论概念去解释一些社会现象.不妨看这样的一个问题.在一个社交圈子里有n个人,人与人之间有不同程度的关系. ...

  2. 洛谷P2680 运输计划 [LCA,树上差分,二分答案]

    题目传送门 运输计划 Description 公元 2044 年,人类进入了宇宙纪元.L 国有 n 个星球,还有 n?1 条双向航道,每条航道建立在两个星球之间, 这 n?1 条航道连通了 L 国的所 ...

  3. CentOS 7中以runfile形式安装CUDA 9.0

    GPU: NVIDIA Tesla K40C Enter the 'root' mode: $ su - 1. Pre-installation 1.1 Verify you have a CUDA- ...

  4. Scrapy实战篇(四)之周杰伦到底唱了啥

    从小到大,一直很喜欢听周杰伦唱的歌,可是相信很多人和我一样,并不能完全听明白歌词究竟是什么,今天我们就来研究一下周董最喜欢在歌词中用的词,这一小节的构思是这样的,我们爬取周杰伦的歌词信息,并且将其进行 ...

  5. 【51Nod 1363】最小公倍数之和

    http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1363 \[ \begin{aligned} &\sum_{i=1 ...

  6. [BZOJ4554][TJOI2016&&HEOI2016]游戏(匈牙利)

    4554: [Tjoi2016&Heoi2016]游戏 Time Limit: 20 Sec  Memory Limit: 128 MBSubmit: 857  Solved: 506[Sub ...

  7. HDU4405 Aeroplane chess 飞行棋 期望dp 简单

    http://acm.hdu.edu.cn/showproblem.php?pid=4405   题意:问从起点到终点需要步数的期望,1/6的概率走1.2.3.4.5.6步.有的点a有路可以直接到b, ...

  8. [HDU1290]献给杭电五十周年校庆的礼物

    [HDU1290]献给杭电五十周年校庆的礼物 题目大意: 问\(n(n\le1000)\)个平面能够将一个三维空间分成几部分. 思路: 公式\(\frac{n^3+5n+6}6\). 源代码: #in ...

  9. [转]Android中自定义checkbox样式

    android中自定义checkbox的图片和大小   其实很简单,分三步: 1.在drawable中创建文件checkbox_selector.xml: <?xml version=" ...

  10. python 3.x和2.x不同和改动

    参考于http://www.runoob.com/python/python-2x-3x.html 因为这几天换了电脑,之前电脑里装的是python2.x,因为那时候刚学的时候,很多教程都是用2.x. ...