java读取xml:
/**
* 通过xml文件读取专业服务模块的链接和部门
*/
@SuppressWarnings("unchecked")
public List<List<Map<String,Object>>> findProfessional() {
List<List<Map<String,Object>>> serviceList = CacheUtil.getInstance().getDataEhCache("professionalServicesCache","serviceList");
if(serviceList == null || serviceList.size() == 0){
serviceList = new ArrayList<List<Map<String,Object>>>();
try {
SAXBuilder builder = new SAXBuilder();
String classpath = this.getClass().getResource("/").getPath().replaceFirst("/", "");
String templetLocation =classpath+ "com/sinosoft/app/professionalservices/servicelist.xml";
Document doc = builder.build(new File(templetLocation));
Element foo = doc.getRootElement();
List allChildren = foo.getChildren();
Integer listSize = allChildren.size();
//页面一次最多可以放7个,所以总页数为
Integer pageNumber = listSize%6 == 0 ? listSize/6 : (listSize/6)+1;
List<Map<String,Object>> list =null;
Map<String,Object> services = null;
for(int j=0;j<pageNumber;j++){
list = new ArrayList<Map<String,Object>>();
for (int i = j*6; i <(j+1)*6&&i<listSize; i++) {
services = new HashMap<String, Object>();
services.put("no", ((Element) allChildren.get(i)).getChild("no").getText());
services.put("serviceUrl", ((Element) allChildren.get(i)).getChild("serviceUrl").getText());
services.put("serviceName", ((Element) allChildren.get(i)).getChild("serviceName").getText());
services.put("serviceDepartment", ((Element) allChildren.get(i)).getChild("serviceDepartment").getText());
services.put("deptNo", ((Element) allChildren.get(i)).getChild("deptNo").getText());
list.add(services);
}
serviceList.add(list);
}
/* for (int i = 0; i < listSize; i++) {
Map<String,Object> services = new HashMap<String, Object>();
services.put("no", ((Element) allChildren.get(i)).getChild("no").getText());
services.put("serviceUrl", ((Element) allChildren.get(i)).getChild("serviceUrl").getText());
services.put("serviceName", ((Element) allChildren.get(i)).getChild("serviceName").getText());
services.put("serviceDepartment", ((Element) allChildren.get(i)).getChild("serviceDepartment").getText());
services.put("deptNo", ((Element) allChildren.get(i)).getChild("deptNo").getText());
serviceList.add(services);
} */
CacheUtil.getInstance().setDataEhCache("professionalServicesCache","serviceList",serviceList);
} catch (Exception e) {
e.printStackTrace();
}
}
return serviceList;
}