标签:编程语言 分享 instance 一个 客户 script 通过 ddr ring
CDATA指不应由XML解析器进行解析的文本数据。
在XML元素中,<
和&
是非法的。解析器会把字符<
解释为新元素的开始,把字符&
解释为字符实体的开始。
某些文本,比如JavaScript代码,包含大量<
或&
字符。为了避免错误,可以将脚本代码定义为CDATA。
CDATA部分由<![CDATA[
开始,由]]>
结束。
DTD(文档类型定义)是一种XML的约束方式,它的目的就是约束XML标记的写法。
XML Schema(XML Schema Definition,XSD)比DTD的约束能力强,所以DTD正在被逐渐淘汰。
在开发中通过Eclipse导入DTD文件,便于开发提示。
在XML中导入DTD,可以通过两种方式:
<!DOCTYPE 根节点 [ ...... ]>
。<!DOCTYPE 根节点 SYSTEM "dtd的URL">
。<!DOCTYPE 根节点 PUBLIC "dtd的名称""dtd的URL">
。book.xsd
<?xml version="1.0" encoding="UTF-8" ?>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.atguigu.com/bookSchema"
elementFormDefault="qualified">
<element name="书架">
<complexType>
<sequence maxOccurs="unbounded">
<element name="书">
<complexType>
<sequence>
<element name="书名" type="string" />
<element name="作者" type="string" />
<element name="售价" type="string" />
</sequence>
</complexType>
</element>
</sequence>
</complexType>
</element>
</schema>
book.xsd文件通过xmlns="http://www.w3.org/2001/XMLSchema"
引入Schema约束。
targetNamespace="http://www.atguigu.com/bookSchema"
是book.xsd文件的ID。
book.xml
<?xml version="1.0" encoding="UTF-8"?>
<书架 xmlns="http://www.atguigu.com/bookSchema"
xmlns:dd="http://www.w3.org/2001/XMLSchema-instance"
dd:schemaLocation="http://www.atguigu.com/bookSchema book.xsd">
<书>
<书名>JavaScript开发</书名>
<作者>老佟</作者>
<售价>28.00元</售价>
</书>
</书架>
book.xml引入了约束xmlns="http://www.atguigu.com/bookSchema"
。
通过schemaLocation="http://www.atguigu.com/bookSchema book.xsd"
指定约束文件的位置。属性schemaLocation通过约束xmlns="http://www.w3.org/2001/XMLSchema-instance"
引入,所以这里引入了两个约束,需要给其中一个约束起别名(因为DTD无法解决“在引入多个约束时,有同名标签,导致命名冲突”的问题,所以出现了Schema,它是DTD的替代者)。下面代码中的dd就是别名。
xmlns:dd="http://www.w3.org/2001/XMLSchema-instance"
dd:schemaLocation="http://www.atguigu.com/bookSchema book.xsd"
Web Service
Web Service是应用程序组件,它使用使用开放协议进行通信,可通过使用UDDI来发现。
Web Service基于HTTP和XML。HTTP 协议是最常用的因特网协议。XML 提供了一种可用于不同的平台和编程语言之间的语言。
Web services 平台的元素:
SOAP
SOAP是指简易对象访问协议,它是一种用于应用程序之间的通信协议。
SOAP基于XML,独立于平台、独立于语言。
SOAP很简单并可扩展。
SOAP允许你绕过防火墙。
SOAP将被作为 W3C 标准来发展。
WSDL
WSDL 指网络服务描述语言 (Web Services Description Language)。
WSDL 是一种使用 XML 编写的文档。这种文档可描述某个 Web service。它可规定服务的位置,以及此服务提供的操作(或方法)。
发布Web Service
import javax.jws.WebMethod;
import javax.jws.WebService;
/*
* SEI:
*/
@WebService
public interface HelloWS {
@WebMethod
public String sayHello(String name);
}
import javax.jws.WebService;
/*
* SEI的实现
*/
@WebService
public class HelloWSImpl implements HelloWS {
@Override
public String sayHello(String name) {
System.out.println("server sayHello() "+name);
return "Hello " + name;
}
}
import javax.xml.ws.Endpoint;
import com.atguigu.day01_ws.ws.HelloWSImpl;
/*
* 发布Web Service
*/
public class ServerTest {
public static void main(String[] args) {
String address = "http://192.168.1.108:8989/day01_ws/hellows";
Endpoint.publish(address , new HelloWSImpl());
System.out.println("发布webservice成功!");
}
}
请求Web Service
根据WSDL文档生成客户端代码。
import com.atguigu.day01_ws.ws.HelloWSImpl;
import com.atguigu.day01_ws.ws.HelloWSImplService;
/*
* 调用webservice
*/
public class ClientTest {
public static void main(String[] args) {
HelloWSImplService factory = new HelloWSImplService();
HelloWSImpl helloWS = factory.getHelloWSImplPort();
System.out.println(helloWS.getClass());
String result = helloWS.sayHello("Jack");
System.out.println("client "+result);
}
}
标签:编程语言 分享 instance 一个 客户 script 通过 ddr ring
原文地址:https://www.cnblogs.com/gzhjj/p/9183718.html