﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-一步一个脚印-文章分类-xml,dom4j</title><link>http://www.blogjava.net/flysky19/category/18418.html</link><description>java之路</description><language>zh-cn</language><lastBuildDate>Wed, 28 Feb 2007 03:44:21 GMT</lastBuildDate><pubDate>Wed, 28 Feb 2007 03:44:21 GMT</pubDate><ttl>60</ttl><item><title>通过虚拟路径或相对路径读取一个xml文件，避免硬编码</title><link>http://www.blogjava.net/flysky19/articles/90394.html</link><dc:creator>不断前进的小乌龟</dc:creator><author>不断前进的小乌龟</author><pubDate>Wed, 27 Dec 2006 14:42:00 GMT</pubDate><guid>http://www.blogjava.net/flysky19/articles/90394.html</guid><wfw:comment>http://www.blogjava.net/flysky19/comments/90394.html</wfw:comment><comments>http://www.blogjava.net/flysky19/articles/90394.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/flysky19/comments/commentRss/90394.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/flysky19/services/trackbacks/90394.html</trackback:ping><description><![CDATA[
		<p>
				<font size="4">2006年12月29日<br />参考资料：<br />java中相对路径，绝对路径问题总结(verygood)<br /></font>
				<a href="/efine66/archive/2006/12/12/87097.html">
						<font size="4">http://www.blogjava.net/efine66/archive/2006/12/12/87097.html</font>
				</a>
				<br />
				<br /> 如何在java中使用相对路径？<br /></p>
		<p>
				<a href="http://dev.csdn.net/develop/article/39/39681.shtm">
						<font size="4">http://dev.csdn.net/develop/article/39/39681.shtm</font>
				</a>
				<br />通过虚拟路径或相对路径读取一个xml文件，避免硬编码</p>
		<p>
				<a href="http://www.128kj.com/article/article5/7D66983DD9DD98A7753422A3A527FB6D.htm?id=438">
						<font size="4">http://www.128kj.com/article/article5/7D66983DD9DD98A7753422A3A527FB6D.htm?id=438</font>
				</a>
				<font size="4">
						<br />
				</font>
		</p>
		<p>
				<font size="4">java使用相对路径读取xml文件：<br />一、xml文件一般的存放位置有三个：<br />1.放在WEB-INF下；<br />2.xml文件放在/WEB-INF/classes目录下或classpath的jar包中；<br />3.放在与解析它的java类同一个包中，不一定是classpath；</font>
		</p>
		<p>
				<font size="4">二、相对应的两种使用相对路径的读取方法：</font>
		</p>
		<p>
				<font size="4">方法一：（未验证）<br />将xml文件放在WEB-INF目录下，然后<br />程序代码： <br />InputStream is=getServletContext().getResourceAsStream( "/WEB-INF/xmlfile.xml" ); </font>
		</p>
		<p>
				<font size="4">方法二：将xml文件放在/WEB-INF/classes目录下或classpath的jar包中，则可以使用ClassLoader的静态方法getSystemResourceAsStream(String s)读取；<br />程序代码：<br />String s_xmlpath="com\xml\hotspot.xml";<br />InputStream in=ClassLoader.getSystemResourceAsStream(s_xmlpath);</font>
		</p>
		<p>
				<font size="4">方法三：xml在随意某个包路径下：<br />String s_xmlpath="com\xml\hotspot.xml";<br />ClassLoader classLoader=HotspotXmlParser.class.getClassLoader();<br />InputStream in=classLoader.getResourceAsStream(s_xmlpath);</font>
		</p>
		<p>
				<br />
				<br />
				<font size="4"> </font>
		</p>
<img src ="http://www.blogjava.net/flysky19/aggbug/90394.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/flysky19/" target="_blank">不断前进的小乌龟</a> 2006-12-27 22:42 <a href="http://www.blogjava.net/flysky19/articles/90394.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>问题：在J2EE工程中xml文件应该放在哪里？以及如何根据相对路径读到它？</title><link>http://www.blogjava.net/flysky19/articles/88101.html</link><dc:creator>不断前进的小乌龟</dc:creator><author>不断前进的小乌龟</author><pubDate>Sat, 16 Dec 2006 01:29:00 GMT</pubDate><guid>http://www.blogjava.net/flysky19/articles/88101.html</guid><wfw:comment>http://www.blogjava.net/flysky19/comments/88101.html</wfw:comment><comments>http://www.blogjava.net/flysky19/articles/88101.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/flysky19/comments/commentRss/88101.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/flysky19/services/trackbacks/88101.html</trackback:ping><description><![CDATA[
		<p>问题1：在J2EE工程中xml文件应该放在哪里，是和class文件放在一起,还是和jsp文件放在一起？或者哪一种方式更好？如果和jsp文件放在一起，那么岂不是客户端也能看到这个xml文件？会不会引起安全问题？</p>
		<p>问题2：解析xml文件时，如何用相对路径找到该自己定义的xml文件？<br />如果该xml文件和jsp文件放在一起，那么可以通过jsp的HttpServletRequest方式根据相对路径读取，但是若该xml文件和java文件在同一个包中又如何处理呢？另外，使用HttpServletRequest方式的java编码具体是如何实现的呢？</p>
		<p> </p>
<img src ="http://www.blogjava.net/flysky19/aggbug/88101.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/flysky19/" target="_blank">不断前进的小乌龟</a> 2006-12-16 09:29 <a href="http://www.blogjava.net/flysky19/articles/88101.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>dom4j解析xml和生成xml文件061103</title><link>http://www.blogjava.net/flysky19/articles/88099.html</link><dc:creator>不断前进的小乌龟</dc:creator><author>不断前进的小乌龟</author><pubDate>Sat, 16 Dec 2006 01:28:00 GMT</pubDate><guid>http://www.blogjava.net/flysky19/articles/88099.html</guid><wfw:comment>http://www.blogjava.net/flysky19/comments/88099.html</wfw:comment><comments>http://www.blogjava.net/flysky19/articles/88099.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/flysky19/comments/commentRss/88099.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/flysky19/services/trackbacks/88099.html</trackback:ping><description><![CDATA[
		<p>参考资料:<br />Dom4j 使用简介<br />作者：冰云 icecloud(AT)sina.com<br /><a href="http://blog.csdn.net/icecloud/archive/2003/12/17/7795.aspx">http://blog.csdn.net/icecloud/archive/2003/12/17/7795.aspx</a></p>
		<p>dom4j API和源码、例子下载网址:<br /><a href="http://sourceforge.net/project/showfiles.php?group_id=16035">http://sourceforge.net/project/showfiles.php?group_id=16035</a><br />下载dom4j-1.6.1.zip：带源码和例子。</p>
		<p>一.dom4j解析xml<br />这部分内容之前已经写过，作为完整性，仅仅在此列出上次的代码：<br />package com.ict.shrd;</p>
		<p>//import org.dom4j.Document;<br />import org.dom4j.Element;<br />import org.dom4j.Attribute;<br />import java.util.List;<br />import java.util.Iterator;</p>
		<p>import org.dom4j.dom.DOMDocument;<br />import org.dom4j.io.XMLWriter;<br />import java.io.*;<br />import org.dom4j.DocumentException;<br />import org.dom4j.io.SAXReader;</p>
		<p>import java.io.*;<br />import java.util.*;<br />import org.dom4j.*;<br />import org.dom4j.io.*;</p>
		<p>public class HjbhTableNameList{<br /> private String enName="";<br /> private String cnName="";<br /> private HashMap map=new HashMap();</p>
		<p> public String getEnName() {<br />  return enName;<br /> }<br /> public HashMap getTableListFromXml(File f){<br />  try{<br />   SAXReader reader = new SAXReader(); <br />   Document doc = reader.read(f); <br />   Element root = doc.getRootElement(); <br />   Element firstChild=root.element("hjbh");<br />   for (Iterator i = firstChild.elementIterator("tableName"); i.hasNext();) {<br />    Element foo = (Element) i.next(); <br />    this.enName=foo.attributeValue("enName"); <br />    this.cnName=foo.getText(); <br />    map.put(enName,cnName);<br />   } <br />  } catch (Exception e) { <br />   e.printStackTrace(); <br />      } <br />  return map;<br /> }</p>
		<p> public static void main(String arge[]) { <br />  File f = new File("E:\\jiangcm\\workspace-forict\\JavaBasis\\xml\\shrd.xml"); <br />  HashMap map=new HashMap();<br />  HjbhTableNameList tableList=new HjbhTableNameList();<br />  map=tableList.getTableListFromXml(f);<br />  Set enNameSet=map.keySet();<br />  String enName="";<br />  for (Iterator i = enNameSet.iterator(); i.hasNext();) {<br />   enName=(String)i.next();<br />   //System.out.println(enName);<br />   System.out.println(map.get(enName));<br />  }<br />  <br />   <br />  }<br />}</p>
		<p>二。dom4j生成xml树：<br />完整代码:<br />package xml;</p>
		<p>import org.dom4j.*;<br />import java.io.*;</p>
		<p>public class XmlCreator{<br />  public void createXML(String fileName) {</p>
		<p>         Document doc = org.dom4j.DocumentHelper.createDocument();</p>
		<p>         Element root = doc.addElement("book");</p>
		<p>         root.addAttribute("name", "我的图书");</p>
		<p>  </p>
		<p>         Element childTmp;</p>
		<p>         childTmp = root.addElement("price");</p>
		<p>         childTmp.setText("21.22");</p>
		<p>  </p>
		<p>         Element writer = root.addElement("author");</p>
		<p>         writer.setText("李四");</p>
		<p>         writer.addAttribute("ID", "001");</p>
		<p>  </p>
		<p>         try {<br />             //注意这里使用的是FileOutputStream，而不是FileWriter,因为涉及到编码问题<br />             //详细见“dom4j编码问题解决”篇。</p>
		<p>             org.dom4j.io.XMLWriter xmlWriter = new org.dom4j.io.XMLWriter(</p>
		<p>                     new FileOutputStream(fileName));</p>
		<p>             xmlWriter.write(doc);</p>
		<p>             xmlWriter.close();</p>
		<p>         }</p>
		<p>         catch (Exception e) {</p>
		<p>             System.out.println(e);</p>
		<p>         }</p>
		<p>     }<br />  public static void main(String[] args){<br />   XmlCreator xmlCreator=new XmlCreator();<br />   xmlCreator.createXML("E:\\jiangcm\\book.xml");<br />  }<br />}<br /></p>
<img src ="http://www.blogjava.net/flysky19/aggbug/88099.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/flysky19/" target="_blank">不断前进的小乌龟</a> 2006-12-16 09:28 <a href="http://www.blogjava.net/flysky19/articles/88099.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>xsd验证061107</title><link>http://www.blogjava.net/flysky19/articles/88100.html</link><dc:creator>不断前进的小乌龟</dc:creator><author>不断前进的小乌龟</author><pubDate>Sat, 16 Dec 2006 01:28:00 GMT</pubDate><guid>http://www.blogjava.net/flysky19/articles/88100.html</guid><wfw:comment>http://www.blogjava.net/flysky19/comments/88100.html</wfw:comment><comments>http://www.blogjava.net/flysky19/articles/88100.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/flysky19/comments/commentRss/88100.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/flysky19/services/trackbacks/88100.html</trackback:ping><description><![CDATA[
		<p>参考资料：<br />dom4j API DOC (到SourceForge.net 上下载dom4j-1.6.1.zip，下载后就会在里面找到doc了)</p>
		<p>dom4j 和 xerces-2.4.0 利用schema验证xml问题<br /><a href="http://www2.matrix.org.cn/thread.shtml;jsessionid=E282E65FCE68F3A4D25B0962DCE6F813?topicId=45719&amp;forumId=13">http://www2.matrix.org.cn/thread.shtml;jsessionid=E282E65FCE68F3A4D25B0962DCE6F813?topicId=45719&amp;forumId=13</a></p>
		<p>DOM4J 验证XML Schema （我要的成功 的blog）<br /><a href="http://kingofhawks.spaces.live.com/?_c11_BlogPart_blogpart=blogview&amp;_c=BlogPart&amp;partqs=cat%3d%25e8%25ae%25a1%25e7%25ae%2597%25e6%259c%25ba%25e4%25b8%258e%2bInternet">http://kingofhawks.spaces.live.com/?_c11_BlogPart_blogpart=blogview&amp;_c=BlogPart&amp;partqs=cat%3d%25e8%25ae%25a1%25e7%25ae%2597%25e6%259c%25ba%25e4%25b8%258e%2bInternet</a></p>
		<p>Xerces-Java 2 中的 XML Schema 验证 (登录：<a href="mailto:jchunmei19@126.com/05602050">jchunmei19@126.com/05602050</a>)<br /><a href="http://www-128.ibm.com/developerworks/cn/views/xml/tutorials.jsp?cv_doc_id=84985">http://www-128.ibm.com/developerworks/cn/views/xml/tutorials.jsp?cv_doc_id=84985</a></p>
		<p> </p>
		<p>xsd验证</p>
		<p>一．java中如何使用dom4j的SAXReader实现验证．</p>
		<p>1.xml验证用于验证符合xml语法格式的xml文件是否符合特定的xml Schema以及数据类型等，xml验证主要有两种方式，DTD和XSD，现采用的是XSD方式。xsd文件的语法格式和编写参考“xsd学习笔记”这篇，现在介绍准备好了xsd文件之后，java中如何使用dom4j的SAXReader实现验证。下面进入正文：</p>
		<p>2.任何技术的介绍，代码都是最直观的，下面就来直接看SAXReader实现验证的代码：<br /> public static boolean isXmlOK(String xsdFile, byte[] tagetXml) throws SAXException, IOException, DocumentException<br /> {<br />  boolean flag = true;<br />  SAXReader reader = new SAXReader();<br />  reader.setValidation(true); <br />  <br />  reader.setFeature("<a href="http://xml.org/sax/features/validation">http://xml.org/sax/features/validation</a>", true);<br />  reader.setFeature("<a href="http://apache.org/xml/features/validation/schema">http://apache.org/xml/features/validation/schema</a>", true);<br />  reader.setProperty("<a href="http://apache.org/xml/properties/schema/external-noNamespaceSchemaLocation">http://apache.org/xml/properties/schema/external-noNamespaceSchemaLocation</a>", xsdFile);<br />  //reader.setProperty("<a href="http://apache.org/xml/properties/schema/external-noNamespaceSchemaLocation">http://apache.org/xml/properties/schema/external-noNamespaceSchemaLocation</a>", "templateXMLSchema.xsd");</p>
		<p>  XMLErrorHandler errorHandler = new XMLErrorHandler();<br />  reader.setErrorHandler(errorHandler);<br />  InputStream in = new ByteArrayInputStream(tagetXml); <br />  InputStreamReader utf8In=new InputStreamReader(in,"utf-8");<br />  //Document document = reader.read(in);<br />  reader.read(utf8In);<br />  XMLWriter writer = new XMLWriter(OutputFormat.createPrettyPrint());<br />  if (errorHandler.getErrors().hasContent()) {<br />   flag = false;<br />      //writer.write(errorHandler.getErrors());<br />  } else {<br />      System.out.println("Xml is OK!.");<br />  }<br />  return flag;<br /> }</p>
		<p>3.对上述代码的注释：</p>
		<p>主要思路：设置SAXReader支持验证 -〉得到xsd文件的路径 -〉读入要验证的xml文件 -〉OK！；</p>
		<p>验证流程：</p>
		<p>-〉设置支持验证；<br />SAXReader reader = new SAXReader();<br />reader.setValidation(true); </p>
		<p>-〉设置支持验证的几个feature的值；<br />注明：SAXReader的各个函数的作用和用法详见dom4j api doc。</p>
		<p>-〉设置xsd文件路径的Property值，这样就可以依据xsd文件进行验证了；<br />语法格式：public void setProperty(java.lang.String name,java.lang.Object value)</p>
		<p>-〉读入要验证的.xml文件或xml格式的字符串；</p>
		<p>*若验证的是.xml文件，则reader.read(param)中的param为xml文件的路径，这个xml文件的路径应该设置为相对路径；（xml相对路径如何获取和表示这个问题有待解决）</p>
		<p>*若验证的是字符串，则要把字符串转换为InputStream类型，这是read方法的参数要求。（详见dom4j api doc） </p>
		<p>那么怎么把字符串转换为InputStream类型呢？</p>
		<p>法一：</p>
		<p>我们知道，ByteArrayInputStream(byte[] buf)方法可以使byte字节码转为InputStream流，那么我们先通过getBytes()方法把字符串转为byte[]类型，再通过ByteArrayInputStream(byte[] buf)方法转为InputStream流就ok了！</p>
		<p>String xmldescription = (String) obj;   <br />byte[] xmlMsgBytes =xmldescription.getBytes();<br />……<br />InputStream in = new ByteArrayInputStream(xmlMsgBytes); </p>
		<p>法二：<br />InputStream in=TAEncodeDecoderFactory.class.getResourceAsStream("encoder_decoder_mapping.xml");</p>
		<p>
				<br />-〉这样SAXReader就可以根据xsd文件对所读入的xml信息进行验证了！</p>
		<p>
				<br />-〉接下来，还可以使用XMLErrorHandler和XMLWriter这两个类在控制台输出错误提示信息；</p>
		<p>-〉xml validation is ok！</p>
		<p>二.内容补充：</p>
		<p>参考资料“DOM4J 验证XML Schema （我要的成功 的blog）<br /><a href="http://kingofhawks.spaces.live.com/?_c11_BlogPart_blogpart=blogview&amp;_c=BlogPart&amp;partqs=cat%3d%25e8%25ae%25a1%25e7%25ae%2597%25e6%259c%25ba%25e4%25b8%258e%2bInternet">http://kingofhawks.spaces.live.com/?_c11_BlogPart_blogpart=blogview&amp;_c=BlogPart&amp;partqs=cat%3d%25e8%25ae%25a1%25e7%25ae%2597%25e6%259c%25ba%25e4%25b8%258e%2bInternet</a>”中提到“如何读取Class path下的xsd文件:需要实现EntityResolver 接口,在resolveEntity()中读取当前类路径下的xsd文件,并返回InputSource instance.”的问题，下面谈谈对EntityResolver的理解：</p>
		<p>这段代码是关于实体解析器用来解析外部实体引用的，在这里并不需要。</p>
		<p>注释：<br />1.关于什么是实体，什么是外部实体，详见资料：<br />xml实用大全<br /><a href="http://phpso.com/data/htm/XML/408.htm">http://phpso.com/data/htm/XML/408.htm</a></p>
		<p>2.关于实体解析器如何使用，详见资料：<br />技巧：使用实体解析器<br /><a href="http://www-128.ibm.com/developerworks/cn/xml/tips/x-tipent/index.html">http://www-128.ibm.com/developerworks/cn/xml/tips/x-tipent/index.html</a></p>
		<p>
				<br />三.尚未解决的问题：<br />如何获取xml相对路径？<br /></p>
<img src ="http://www.blogjava.net/flysky19/aggbug/88100.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/flysky19/" target="_blank">不断前进的小乌龟</a> 2006-12-16 09:28 <a href="http://www.blogjava.net/flysky19/articles/88100.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>dom4j编码问题解决061103</title><link>http://www.blogjava.net/flysky19/articles/88098.html</link><dc:creator>不断前进的小乌龟</dc:creator><author>不断前进的小乌龟</author><pubDate>Sat, 16 Dec 2006 01:26:00 GMT</pubDate><guid>http://www.blogjava.net/flysky19/articles/88098.html</guid><wfw:comment>http://www.blogjava.net/flysky19/comments/88098.html</wfw:comment><comments>http://www.blogjava.net/flysky19/articles/88098.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/flysky19/comments/commentRss/88098.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/flysky19/services/trackbacks/88098.html</trackback:ping><description><![CDATA[
		<p>参考资料：（4个都是好资料）</p>
		<p>Dom4j 编码问题彻底解决 作者：lonsen <br /><a href="http://www.5inet.net/Develop/Java/036579,Dom4j_BianMaWenDiCheDeJieJue.aspx">http://www.5inet.net/Develop/Java/036579,Dom4j_BianMaWenDiCheDeJieJue.aspx</a></p>
		<p>“中文问题没商量”之Dom4j中的编码问题 <br />作者: 盛忠良  <br /><a href="http://blog.lupaworld.com/blog/htm/do_showone/tid_2261.html">http://blog.lupaworld.com/blog/htm/do_showone/tid_2261.html</a></p>
		<p>JAVA编码问题的一些理解<br /><a href="http://www.jspcn.net/htmlnews/11049393353751902.html">http://www.jspcn.net/htmlnews/11049393353751902.html</a></p>
		<p>用dom4j解析中文字符时，出现org.dom4j.DocumentException: Invalid byte 1 of 1-byte UTF-8 sequence.各位帮小弟看看<br /><a href="http://dev.9983.com/ku/5403/4683267.asp">http://dev.9983.com/ku/5403/4683267.asp</a></p>
		<p>自己的总结：<br />1、“org.dom4j.DocumentException: Invalid byte 1 of 1-byte UTF-8 sequence.”异常分析和解决：<br />分析：<br />该异常由下面的reader.read(file);语句抛出：<br />SAXReader reader = new SAXReader();<br />Document doc = reader.read(file);</p>
		<p>产生这个异常的原因是：<br />所读的xml文件实际是GBK或者其他编码的，而xml内容中却用&lt;?xml version="1.0" encoding="utf-8"?&gt;指定编码为utf-8，所以就报异常了！</p>
		<p>注释：参考网上的《Java/J2EE中文问题终极解决之道》一文，编码问题原因应该是：操作系统编码为GBK，而xml指定为utf-8，SAXReader使用系统的默认编码GBK，所以存在需要转换编码的问题，也就自然会出现乱码了！解决：让文件编码和java 操作该文件的接口的编码一致；</p>
		<p>解决：<br />情况一：该xml文件由dom4j生成；</p>
		<p>解决方法：用 org.dom4j.io.XMLWriter xmlWriter = new org.dom4j.io.XMLWriter(<br />                    new FileOutputStream(fileName));<br />代替<br /> xmlWriter = new XMLWriter(new FileWriter(fileName));<br />，指定编码为utf-8生成xml文件；</p>
		<p>详细参考资料1：<br />Dom4j 编码问题彻底解决 作者：lonsen <br /><a href="http://www.5inet.net/Develop/Java/036579,Dom4j_BianMaWenDiCheDeJieJue.aspx">http://www.5inet.net/Develop/Java/036579,Dom4j_BianMaWenDiCheDeJieJue.aspx</a></p>
		<p>情况二:解析从jsp页面中读取到的用户输入的xml描述内容时，reader.read()抛出异常；</p>
		<p>解决方法：<br />调用read前先把xml内容转为utf-8编码：（使用支持编码格式的函数）</p>
		<p>  public void validate(FacesContext context, UIComponent component,  Object obj)  <br />     throws ValidatorException {  <br />  <br />            String xmldescription = (String) obj;   <br />     byte[] bytes =xmldescription.getBytes(); <br />            RelationXmlParser.isXmlOK("E:\\jiangcm\\templateXMLSchema.xsd",bytes);  <br />     ……<br />    } </p>
		<p> public static boolean isXmlOK(String xsdFile, byte[] tagetXml) throws SAXException,                  IOException, DocumentException<br /> {<br />  SAXReader reader = new SAXReader();<br />                ……<br />  InputStream in = new ByteArrayInputStream(tagetXml); <br />  InputStreamReader utf8In=new InputStreamReader(in,"utf-8");<br />                ……<br />        }</p>
		<p>
				<br /> </p>
<img src ="http://www.blogjava.net/flysky19/aggbug/88098.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/flysky19/" target="_blank">不断前进的小乌龟</a> 2006-12-16 09:26 <a href="http://www.blogjava.net/flysky19/articles/88098.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>社会热点编码实现思路</title><link>http://www.blogjava.net/flysky19/articles/88097.html</link><dc:creator>不断前进的小乌龟</dc:creator><author>不断前进的小乌龟</author><pubDate>Sat, 16 Dec 2006 01:15:00 GMT</pubDate><guid>http://www.blogjava.net/flysky19/articles/88097.html</guid><wfw:comment>http://www.blogjava.net/flysky19/comments/88097.html</wfw:comment><comments>http://www.blogjava.net/flysky19/articles/88097.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/flysky19/comments/commentRss/88097.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/flysky19/services/trackbacks/88097.html</trackback:ping><description><![CDATA[
		<p>1.写一个类TableNameList，用dom4j解析xml，读取xml，把xml中的"enName"和"cnName"存入一个HashMap中；<br />2、jsp中显示表名：Object[] keys=Map.keySet().toArray(); &lt;%=keys[i]%&gt;</p>
		<p>疑问：<br />1.如何在文字上实现onClick事件？比如说，一点击“环境保护”，就出现所有的表名；一点击“表名”，就出现相应的表数据；因为它不像&lt;select&gt;等标签一样，可以根据id就能获取它们的value值；</p>
		<p> </p>
		<p>HashMap网址:<br />有关HashMap的使用问题<br /><a href="http://zhidao.baidu.com/question/3288995.html">http://zhidao.baidu.com/question/3288995.html</a></p>
		<p>HashMap使用一例<br /><a href="http://www.128kj.com/article/article1/62DE24F2E9419FA8D9386750E9F68451.htm?id=1342">http://www.128kj.com/article/article1/62DE24F2E9419FA8D9386750E9F68451.htm?id=1342</a></p>
		<p>
				<a href="http://leeboo.spaces.live.com/">http://leeboo.spaces.live.com/</a>
		</p>
<img src ="http://www.blogjava.net/flysky19/aggbug/88097.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/flysky19/" target="_blank">不断前进的小乌龟</a> 2006-12-16 09:15 <a href="http://www.blogjava.net/flysky19/articles/88097.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>