发表于: 2017-11-14 23:04:54

1 818


今天完成的事
完成了spring的demo
相比java rmi 
接口不用继承remote了
实现类不需要继承UnicastRemoteObject
spring会帮你注册端口
不用自己动手注册了
Spring 封装RMI实现
Spring RMI中,主要有两个类:org.springframework.remoting.rmi.RmiServiceExporterorg.springframework.remoting.rmi.RmiProxyFactoryBean
服务端使用RmiServiceExporter暴露RMI远程方法,客户端用RmiProxyFactoryBean间接调用远程方法。
接下来进行实际应用
相比如java rmi
使用spring基本没有对原有代码做太多改动
就是简单在config里面进行配置
首先我们需要对entity进行序列化
这样数据才能在网络中流通
客户端的文件有controller层,entity类,service接口和实现类,spring的配置文件bean和mvc,jsp页面
服务端的文件有entity类,dao层,mapper配置文件,service接口和实现类,spring配置文件只包含了关于数据库和驱动的bean,暴漏端口的main方法
安装maven-shade插件
这个插件可以让我们在打包的时候把依赖也打包进去,还可以指定mainclass
配置完成后,执行mvn package即可打包。在target目录下会生成两个jar包,注意不是original-xxx.jar文件,而是另外一个。和maven-assembly-plugin一样,生成的jar文件包含了所有依赖,所以可以直接运行。
如果项目中用到了Spring Framework,将依赖打到一个jar包中,运行时会出现读取XML schema文件出错。原因是Spring Framework的多个jar包中包含相同的文件spring.handlers和spring.schemas,如果生成一个jar包会互相覆盖。为了避免互相影响,可以使用AppendingTransformer来对文件内容追加合并
打包到服务器上运行
遇到的问题
如上,端口已经打开了
但是客户端连接不上
明天计划的事
完成任务8
收获
对spring rmi的使用更多了一些



返回列表 返回列表
评论

    分享到