解析XML时DTD的处理 解析时忽略,生成XML文件时加上
一、解析XML文件时,遇到DTD的定义要怎么办?
下面这段代码是ibatis配置文件,用w3c Dom(其实任意一种解析方式都是这样)都会从http://www.ibatis.com/dtd/sql-map-config-2.dtd
这
个地址找对应的DTD文件进行校验,如果因特网上这个地址不存在的话,就会报 java.net.ConnectException:
Connection timed out: connect 。
Xml代码
<?
xml
version
=
"1.0"
encoding
=
"UTF-8"
?>
<!DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN" "http://www.ibatis.com/dtd/sql-map-config-2.dtd">
<
sqlMapConfig
>
<
settings
useStatementNamespaces
=
"true"
/>
<!--防止空SqlMap报错 by zhangbo start -->
<
sqlMap
resource
=
"ibatis/project/project-blank.xml"
/>
<
sqlMap
resource
=
"ibatis/project/user-mapping.xml"
/>
</
sqlMapConfig
>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN" "http://www.ibatis.com/dtd/sql-map-config-2.dtd">
<sqlMapConfig>
<settings useStatementNamespaces="true"/>
<!--防止空SqlMap报错 by zhangbo start -->
<sqlMap resource="ibatis/project/project-blank.xml"/>
<sqlMap resource="ibatis/project/user-mapping.xml"/>
</sqlMapConfig>
遇到这种问题可以有两种解析方式,第一把DTD下载的本地,指定从本地加载DTD文件;另一种,干脆忽略DTD文件。
这两种方式都是以重新构建实体的解析器(EntityResolver)为基础解决方案的,重新构建实体解析器而不是使用默认的实体解析器,因为默
认的解析器会根据实际的url进行读取,下面是一段如何来解析上面提到的配置文件,两种方式都有标注
Java代码
public
&nbs
相关文档:
Eclipse IBM开发出的工具
step over 跳到当前程序的下一行(跳过)
step into 跳进去 (跳入)
step return 跳出来 (跳出)
XML
<a classname="cn.itcast.Person"></a>
<?xml version="1.0"?> 空格必须为英文
字符编码
<?xml version="1.0" encoding="UTF-8"?>
CDATA -->Character data &nb ......
1.在JSP中生成动态XML
可以使用JSP生成XML,使用CSS或者XSL转换和显示XML;
只要在静态的XML文档模板中加入Java代码和JSP标记,XML就可以有静变动,产生动态的内容,生成XML文档的方法很简单,只需要在文件中使用指令contenttype,如<%@ page contenttype="text/xml"%>;
在XML文档中同样可以使 ......
web.xml文件对于配置任何Java Web应用都必需的。
(1)配置Struts的ActionServlet
<servlet><!--元素来声明ActionServlet-->
<servlet-name><!--元素:用来定义Servlet的名称-->
<servlet-class><!--元素:用来指定Servlet的完整类名-->
<servlet>
<servlet-name& ......
XML 和 JSON 是当今常用的两种数据描述与传输的格式,特别是涉及到 JS 时使用 JSON 颇为频繁。自然,在 Java 的世界里少不了完成 JavaBean 与这两种格式相互转换的组件,那就是 XStream 和 JSON-lib。这里我简单记下 XStream 的用法。
其实相类似的工具早已有之。如果用过 DWR 的同志,一定有印像,DWR 进行远 ......
sql2005中一个xml聚合的例子 收藏
该问题来自论坛提问,演示SQL代码如下
--建立测试环境
set nocount on
create table test(ID varchar(20),NAME varchar(20))
insert into test select '1','aaa'
insert into test select '1','bbb'
insert into test select '1','ccc'
insert into test select '2','ddd'
inser ......