亚洲人成网站在线播放2019 _日韩国产欧美精品_久久夜色精品国产欧美乱_在线视频福利一区

當前位置:首頁 > 網站舊欄目 > 學習園地 > 設計軟件教程 > EMF的存儲設置

EMF的存儲設置
2010-01-14 22:49:41  作者:  來源:
一般我們在對EMF模型內容進行輸出,這里需要進行一些定制,下面是我在項目中做的一些定制,第一個是要將EMF Model輸出的xml中去掉一些名稱空間的信息,第二個就是希望把某些信息由Attribute類型轉換成Content類型,在得到的content類型的內容默認情況下會對<, >, &等字符進行轉換,這個也可以進行控制。借鑒EMF開發指南的做法,其實很簡單,這里要注意save和load使用的控制選項設置必須一致。
具體做法如下,
因為保存和加載xml是在XMLResourceImpl里面進行的,所以我們需要從該類繼承,overriding 相應的load和save方法,然后在使用到XMLResourceImpl的地方改成使用我們的派生之類,在定制的子類中,我們做了如下實現:
java 代碼
 
  1. public void load(Map options) throws IOException {   
  2.     super.load(addOptions(options));   
  3. }   
  4.   
  5. public void save(Map options) throws IOException {   
  6.     super.save(addOptions(options));   
  7. }   
  8.   
  9. /**  
  10.  * 設置序列化/反序列化選項  
  11.  *   
  12.  * @param options  
  13.  */  
  14. private Map addOptions(Map options) {   
  15.     // 這里的map只應創建一次   
  16.     XMLResource.XMLMap xmlMap = new XMLMapImpl();   
  17.   
  18.     EPackage ePackage = Configuration.INSTANCE.getViewEPackage();   
  19.     XMLResource.XMLInfo info = new XMLInfoImpl();   
  20.     info.setXMLRepresentation(XMLResource.XMLInfo.CONTENT);   
  21.   
  22.     // 將event的內容在attribute和content之間轉換   
  23.     EClass eClass = (EClass) ePackage   
  24.             .getEClassifier(Configuration.EVENT_NAME);   
  25.     xmlMap.add(eClass   
  26.             .getEStructuralFeature(Configuration.EVENT_ATTRIBUTE_CONTENT),   
  27.             info);   
  28.   
  29.     // 在生成的ddxml中去掉namespace聲明   
  30.     xmlMap.setNoNamespacePackage(ePackage);   
  31.   
  32.     if (options == Collections.EMPTY_MAP) {   
  33.         options = new HashMap();   
  34.     }   
  35.        
  36.     options.put(XMLResource.OPTION_XML_MAP, xmlMap);   
  37.        
  38.     // 避免對<,>,&等字符進行轉換   
  39.     options.put(XMLResource.OPTION_SKIP_ESCAPE, Boolean.TRUE);   
  40.   
  41.     return options;   
  42. }  

 

因為我們這里沒有對特殊字符進行轉換,所以我們需要在生成的content類型的內容加上<![CDATA, ]]>, 這個我們需要生成自己的XMLSaveImpl,然后overriding getContent(EObject o, EStructuralFeature[] features)這個方法:

java 代碼
 
  1. protected String getContent(EObject o, EStructuralFeature[] features) {   
  2.     if (map == null)   
  3.     {   
  4.       return null;   
  5.     }   
  6.   
  7.     for (int i = 0; i < features.length; i++)   
  8.     {   
  9.       EStructuralFeature feature = features[i];   
  10.       XMLResource.XMLInfo info = map.getInfo(feature);   
  11.       if (info != null && info.getXMLRepresentation() == XMLResource.XMLInfo.CONTENT)   
  12.       {   
  13.         Object value = helper.getValue(o, feature);   
  14.         String svalue = getDatatypeValue(value, feature, false);   
  15.         if (toDOM)   
  16.         {               
  17.           Node text = document.createTextNode(svalue);   
  18.           currentNode.appendChild(text);   
  19.           handler.recordValues(text, o, feature, value);   
  20.         }else {   
  21.             // 將內容前后加上<![CDATA and ]]>   
  22.             svalue = "<![CDATA[\n" +svalue + "\n]]>";   
  23.         }   
  24.         return svalue;   
  25.       }   
  26.     }   
  27.     return null;   
  28. }   

 當然了還必須在前面自己的XMLResourceImpl類里面重載createXMLSave()方法:

 

 

java 代碼
 
  1. protected XMLSave createXMLSave() {   
  2.     return new DoradoXMLSaveImpl(createXMLHelper());   
  3. }  

安徽新華電腦學校專業職業規劃師為你提供更多幫助【在線咨詢
相關熱詞搜索:存儲
亚洲人成网站在线播放2019 _日韩国产欧美精品_久久夜色精品国产欧美乱_在线视频福利一区
日韩av观看网址| 欧美激情综合色| 中文精品无码中文字幕无码专区| 欧美日本韩国国产| 欧美激情专区| 日韩久久在线| 精品一卡二卡三卡四卡日本乱码| 麻豆成人小视频| av电影一区二区三区| 久久久神马电影| 国产精品香蕉视屏| 欧美另类一区| 日韩精品极品视频在线观看免费| 国产精品免费视频xxxx| 欧美不卡福利| 国产精品自拍小视频| 久久成人亚洲精品| 日本午夜精品一区二区三区| 不用播放器成人网| 欧美日韩国产123| 国产精品免费在线| 久久av资源网站| 欧美,日韩,国产在线| 国产在线视频欧美一区二区三区| 国产亚洲精品自在久久| 久久久久中文字幕2018| 日本精品国语自产拍在线观看| 一卡二卡三卡视频| 日韩国产一级片| 国产精品国产自产拍高清av水多 | 日韩av电影在线观看| 欧洲亚洲一区二区三区四区五区| 欧美一级视频免费在线观看| 奇米精品一区二区三区| 日韩av电影在线观看| 久久69精品久久久久久久电影好| 欧美极品少妇无套实战| 在线免费一区| 亚洲最大福利视频网站| 午夜精品一区二区三区在线观看| 日韩av不卡在线| 日韩在线视频播放| 色狠狠久久av五月综合| 国产乱码精品一区二区三区卡 | 欧美一区视久久| 久艹视频在线免费观看| 欧美激情综合色| www黄色在线| 国产天堂在线播放| 国产精品久久久久久久久免费看| 国产视频一区二区不卡| 精品国产一区二区三区久久久| 91av在线精品| 国产精品自产拍在线观看中文| 欧美日韩激情视频在线观看| 国产偷人视频免费| y97精品国产97久久久久久| 午夜精品一区二区三区四区| www日韩av| 日本在线播放不卡| 97久久精品人人澡人人爽缅北| 国产精品成人观看视频国产奇米 | 日本一区二区在线免费播放| 国产欧洲精品视频| 国产精品成人观看视频国产奇米| 91精品国产自产91精品| 日韩aⅴ视频一区二区三区| av天堂永久资源网| 久久777国产线看观看精品| 成人免费毛片网| 一区二区高清视频| 免费在线观看一区二区| 久热免费在线观看| 国产综合欧美在线看| 国产一区二区免费在线观看| 久久久久久久国产精品视频| 亚洲一区二区三区精品视频 | 国模私拍视频一区| 国产精品高潮呻吟久久av黑人| 国产精选在线观看91| 少妇免费毛片久久久久久久久| 日韩精品一区二区三区色偷偷| 久久人人爽亚洲精品天堂| 国产中文欧美精品| 日本精品久久久久影院| 久久久久免费看黄a片app| 国产xxx69麻豆国语对白| 欧美一区亚洲一区| 中文字幕无码不卡免费视频| 菠萝蜜影院一区二区免费| 国产欧美日韩中文| 欧美图片激情小说| 伊人久久av导航| 久久久av网站| 欧美极品一区| 青青草视频国产| 国产精品日韩一区| 在线观看欧美亚洲| 日韩免费av一区二区三区| 蜜桃传媒视频第一区入口在线看| 亚洲日本精品一区| 亚洲国产欧洲综合997久久| 青青草影院在线观看| 久久久久久久久久国产| 久久久久久久久久国产精品| 91精品国产高清自在线| 精品网站在线看| 91免费在线观看网站| 国产一区二区视频在线观看| 欧美在线视频网| 99三级在线| 亚洲一区三区在线观看| 国产日韩精品在线播放| 超碰97网站| 日韩精品在线中文字幕| 精品国产无码在线| 波多野结衣久草一区| 蜜桃网站成人| 国产最新精品视频| 国产精品区一区二区三含羞草 | 久久精品亚洲精品| 亚洲欧洲免费无码| 狠狠色综合欧美激情| 日韩精品成人一区二区在线观看| 亚洲综合日韩中文字幕v在线| 国产精品久久视频| 国产精品久久久久久久久久久不卡| 久久天堂电影网| 国产精品观看在线亚洲人成网| 国产在线高清精品| 久久九九国产视频| 亚洲精品tv久久久久久久久| 91久久精品国产91久久| 日本一区二区三区四区在线观看 | 婷婷五月综合缴情在线视频| 国内精品久久久久久影视8| 国产精品∨欧美精品v日韩精品| 久久国产成人精品国产成人亚洲| 欧美日韩福利在线观看| 97久久天天综合色天天综合色hd| 91久久中文字幕| 久久久久久久电影一区| 国产精品无av码在线观看| 欧美xxxx14xxxxx性爽| 欧美一区二区三区……| 欧美久久在线| 久久久精品国产| 欧美亚洲国产视频| 亚洲精品中字| 91久久国产综合久久91精品网站 | 一区二区三区精品国产| 久久国产精品影片| 日本一区免费在线观看| 国产日韩在线看片| 国产美女作爱全过程免费视频| 日韩av大全| 久久国产精品亚洲| 久无码久无码av无码| 九九精品在线视频| 国产中文字幕免费观看| 国产精品欧美亚洲777777| 欧美中日韩免费视频| 国产成人中文字幕| 国产精品免费一区二区三区都可以 | 国产成人av网| www欧美日韩| 插插插亚洲综合网| 宅男一区二区三区| 日韩精品一区二区三区不卡| 成人国产精品一区| 国产精品久久久久久久天堂| 成人国产亚洲精品a区天堂华泰| 欧美激情喷水视频| 国产伦精品一区二区三区视频免费 | 日韩av大片在线| 久久久久久久999精品视频| 国内精品在线观看视频| 欧美成人午夜剧场免费观看| yellow视频在线观看一区二区| 欧美做受777cos| 国产黄视频在线| 午夜精品在线观看| 国产精品久久久久久久久久小说| 国产精品18久久久久久首页狼| 免费av网址在线| 日韩女优在线播放| 国产综合视频在线观看| 欧美亚洲日本在线观看| 亚洲中文字幕无码不卡电影| 一级特黄录像免费播放全99| 久久综合网hezyo| 国产精品一区二区久久国产| 午夜视频在线瓜伦| 欧美激情视频给我| 日韩av黄色网址| 国产在线播放不卡| 九九热精品在线| 久久av一区二区三区亚洲| 一区二区三区在线观看www| 2019日韩中文字幕mv|