今天完成的事情:
今天继续学习Tuscany框架,按照志勇师兄发的Demo敲了一遍,
无意间找到了博客的地址 http://blog.csdn.net/ajun_studio/article/details/7770238
然后运行,然后一行一行的看,感觉跟SpringRMI没太大的差别,都是对外暴露接口,和接口所在的端口之前学过java的TGP传输,感觉都是一样,传输数据的前提就是Socket(插座),服务器提供一个插座(就是对外暴露端口),然后客户端往这个服务器的这个端口发请求,如果服务器存在那么就建立连接,然后服务器根据收到请求,返回客户端请求数据,因为曾经根据教程写过一个局域网聊天的小Demo,理解起来并不难,
然后看了仔细的研究了一下.composite文件的配置....
这是计算器的
<composite
xmlns="http://docs.oasis-open.org/ns/opencsa/sca/200912"
xmlns:tuscany="http://tuscany.apache.org/xmlns/sca/1.0"
targetNamespace="http://com.jnshu.service"
name="Calculator">
<!--暴露接口-->
<service name="Calculator" promote="Calculator">
<interface.java interface="com.jnshu.service.ICalculator"/>
<binding.ws uri="http://127.0.0.1:8099/Calculator"/>
</service>
<!--Service类-->
<component name="Calculator">
<implementation.java class="com.jnshu.service.Calculator" />
<reference name="add" target="AddComponent"/>
<reference name="subtract" target="SubtractComponent"/>
<reference name="multiply" target="MultiplyComponent"/>
<reference name="divide" target="DivideComponent"/>
</component>
<!--实现类的位置-->
<component name="AddComponent">
<implementation.java class="com.jnshu.service.Add" />
</component>
<component name="SubtractComponent">
<implementation.java class="com.jnshu.service.Subtract" />
</component>
<component name="MultiplyComponent">
<implementation.java class="com.jnshu.service.Multiply" />
</component>
<component name="DivideComponent">
<implementation.java class="com.jnshu.service.Divide" />
</component>
</composite>
这是另一个博客的
<?xml version="1.0" encoding="UTF-8"?>
<composite xmlns="http://docs.oasis-open.org/ns/opencsa/sca/200912"
xmlns:tuscany="http://tuscany.apache.org/xmlns/sca/1.1"
targetNamespace="http://sample"
xmlns:sample="http://sample"
xmlns:scallop="http://scallop/xmlns/sca/1.1"
name="Calculator" >
<component name="CalculatorServiceComponent">
<!--实现类的位置-->
<implementation.java class="com.ajun.tuscany.server.Calculator" />
<!--对外暴露的接口-->
<service name="Calculator">
<interface.java interface="com.ajun.tuscany.server.ICalculator"/>
<tuscany:binding.rmi uri="rmi://127.0.0.1:8099/CalculatorRMIService"/>
</service>
<!--IAdd实现类位置-->
<reference name="add" target="AddComponent"/>
</component>
<component name="AddComponent">
<implementation.java class="com.ajun.tuscany.server.Add" />
</component>
</composite>
用外部文本文件来配置java程序的都是利用的java的反射机制
其中的的共同点就是:
<reference name="add" target="AddComponent"/>
跟bean没太大区别
还有就是
<service name="Calculator" promote="Calculator">
service里配置暴露的接口和那些类
结束任务九准备复盘
遇到的困难:
,因为师兄日报里把遇到的坑都写了出来所以让我配置没遇到什么困难,感谢师兄们这么有奉献精神!
收获:
学会Tuscany的RMI,
明天的计划:
先问问师兄复盘的套路,
网友评论