Java调用.NET的WebService
1. 基本库
cxf-2.2.4.jar
XmlSchema-1.4.5.jar
Wsdl4j-1.6.2.java
2. 在.NET中编写服务,默认参数即可,如:
namespace TestService2Java
{
[WebService(Namespace = "http://temp2java.org/")] //仅此处稍加修改,不改也可
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
public class Service1 : System.Web.Services.WebService
{
[WebMethod]
public string HelloWorld()
{
return "Hello World";
}
[WebMethod]
public int MathAdd(int a, int b) //定义一个新方法
{
return a + b;
}
}
}
3. 生成Java中使用的类,使用wsdl2java:
wsdl2java –p test.net.service –d d:\src http://localhost/svr2java/Service1.asmx?wsdl
将生成文件中的Service1Soap.java导入java项目。
备注://@XmlSeeAlso({ObjectFactory.class}),否则调用会出错。
4. 调用服务:
import javax.xml.namespace.QName;
import javax.xml.ws.Service;
import java.net.URL;
public class CallDotNetService {
public final static QName SERVICE = new QName("http://temp2java.org/", "Service1");
public final static QName Service1Soap = new QName("http://temp2java.org/", "Service1Soap");
private CallDotNetService() { }
public static void main(String args[]) throws Exception {
URL wsdlURL = new URL("http://localhost/svr2java/Service1.asmx?wsdl");
相关文档:
create PROCEDURE pagelist
@tablename nvarchar(50),
@fieldname nvarchar(50)='*',
@pagesize int output,--每页显示记录条数
@currentpage int output,--第几页
@orderid nvarchar(50),--主键排序
@sort int,--排序方式,1表示升序,0表示降序排列
......
java中时间戳和时间字符串之间的转换
获取当前的unix时间戳
new Date().getTime()
System.currentTimeMillis()
返回的是毫秒数,要转换long t = System.currentTimeMillis()/1000;
获取当前年月日以及时分秒
Calendar c = Calendar.getInstance();
c.get(Calendar.YEAR)) c.get(Calendar.YEAR)) c.get(C ......
抽象化和继承关系使概念和定义可以复用;多态性使实现和应用可以复用;
开闭原则(Open-Closed Principle OCP)一个软件实体应当对扩展开放,对修改封闭。
对可变性的封装原则(Principle of Encapsulation of Variation) (1)一种变化性不和另一种混合在一起 (2)一种可变性不应散落在代码的很多地方。
里氏代换 ......