原创

Ajax 实现读取 properties 格式资源文件数据

Ajax 的核心是 JavaScript 对象 XmlHttpRequest。该对象在 Internet Explorer 5 中首次引入,它是一种支持异步请求的技术。简而言之,XmlHttpRequest 使您可以使用 JavaScript 向服务器提出请求并处理响应,而不阻塞用户。下面讲述一下通过Ajax读取properties格式资源文件数据。

1、properties文件内容如下:

userId=yoodb
name=素文宅
email=xxxxxx@163.com
address=中国北京市

2、Jquery实现调用Ajax处理代码,具体如下:

$.ajax({
 type:'POST',
 dataType:'json',
 url:'/handleProperties.do',
 async:false,
 success:function(data){
  jsonData = data.jsi18n;//jsi18n是java返回时赋予的名称
  jsi18n = eval_r('(' +jsonData+ ')');//转化为json对象(eval_r()函数可计算某个字符串,并执行其中的的 JavaScript 代码)
  alert("property is " + jsi18n.name);
 },
 error:function(event, XMLHttpRequest, ajaxOptions, thrownError){
  alert("error");
 }
});

3、Java后台处理properties文件,具体代码如下:

publicString getResourceBundle(){
 ResourceBundle RESOURCE_BUNDLE;
  if(contextPvd.getSessionAttr("gLanguage")!=null&&contextPvd.getSessionAttr("gLanguage").equals("1")){ 
 RESOURCE_BUNDLE=ResourceBundle.getBundle("jsi18n",Locale.ENGLISH);
}else{
 RESOURCE_BUNDLE =ResourceBundle.getBundle("jsi18n",Locale.CHINA);
}
Set keySet=RESOURCE_BUNDLE.keySet();
//读取资源文件数据拼接成json格式字符串返回
String jsonString = newString();
jsonString+="{";
for(String key:keySet){
 jsonString+='"'+key+'"'+":"+'"'+RESOURCE_BUNDLE.getString(key)+'"'+",";
}
//把字符串赋给返回对象
jsonRoot.put("jsi18n",jsonString.substring(0,jsonString.length()-1)+"}");
return SUCCESS;
}

如果其他函数也需要调用返回的结果,需要通过Js把返回值赋给一个全局变量。

~阅读全文-人机检测~

微信公众号“Java精选”(w_z90110),专注Java技术干货分享!让你从此路人变大神!回复关键词领取资料:如Mysql、Hadoop、Dubbo、Spring Boot等,免费领取视频教程、资料文档和项目源码。微信搜索小程序“Java精选面试题”,内涵3000+道Java面试题!

涵盖:互联网那些事、算法与数据结构、SpringMVC、Spring boot、Spring Cloud、ElasticSearch、Linux、Mysql、Oracle等

评论

分享:

支付宝

微信