您好,登錄后才能下訂單哦!
小編給大家分享一下java如何生成XML,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
java生成XML的方法
下拉框的生成,我是通過javascript讀取xml文件生成的。Xml文件是根據數據庫生成的。Xml文件只相當于頁面到數據庫的一道緩存。這樣利于性能。生成xml文件又是一件繁瑣的事情。只好交給機器去做了。真正的情景是程序定期自動或人為手動觸發程序生成xml。今天我單獨把xml文件生成的功能剝離出來寫了一個小程序。
具體的實現是,使用jxl.jar讀取(我承認我很喜歡使用Execel寫配置)的SQL語句。SQL要指明哪些是名稱、哪些是代碼、哪些是父級代碼。Mybatis查詢數據,拼裝報文寫入文件。這次寫了一個jar包程序。運行前請自備jre。
核心代碼:XmlCreateService.java
package com.fitweber.service; import java.io.IOException; import java.io.InputStream; import java.util.HashMap; import java.util.List; import java.util.Map; import org.apache.ibatis.io.Resources; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder; import com.fitweber.util.CommonUtils; import com.fitweber.util.ExecelUtils; /** * <pre> * XML文件生成器 * </pre> * @author wheatmark hajima11@163.com * @version 1.00.00 * <pre> * 修改記錄 * 修改后版本: 修改人: 修改日期: 修改內容: * </pre> */ public class XmlCreateService { @SuppressWarnings({ "rawtypes", "unused", "unchecked" }) public static void main(String[] argc){ String resource = "META-INF/conf/mybatis-config.xml"; String root = ""; InputStream inputStream; try { //拿到數據庫連接 inputStream = Resources.getResourceAsStream(resource); SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); SqlSession session = sqlSessionFactory.openSession(); //拿到查詢參數 List requestList = ExecelUtils.readExecelSimple("xmlmaker.xls"); //定義變量 int i,j,listSize; String filename,sqlstament,temp;; HashMap requestMap = new HashMap(); Map map; StringBuffer buf = new StringBuffer(); for(Object l:requestList){ List list = (List)l; listSize = list.size(); filename =(String)list.get(1); sqlstament =(String)list.get(2); requestMap.put("sql", sqlstament); List result = session.selectList("com.fitweber.dao.XmlCreateDao.xmlDataQuery",requestMap); for(Object r:result){ buf.append("<option>"); map=(Map)r; temp = (String) map.get("DM"); if(temp!=null){ buf.append("<dm>"+temp+"</dm>"); } temp = (String) map.get("MC"); if(temp!=null){ buf.append("<mc>"+temp+"</mc>"); } temp = (String) map.get("PC"); if(temp!=null){ buf.append("<pc>"+temp+"</pc>"); } temp = (String) map.get("ITEM"); if(temp!=null){ buf.append("<item>"+temp+"</item>"); } buf.append("</option>"); } CommonUtils.saveFile(null, (System.getProperty("user.dir")+"\\xml\\").replace("\\", "/")+filename, ("<?xml version=\"1.0\" encoding=\"utf-8\" ?><root><select>"+buf.toString()+"</select></root>"),false); buf.setLength(0); } session.close(); } catch (IOException e) { e.printStackTrace(); } } }
看完了這篇文章,相信你對“java如何生成XML”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。