RT:
想问下:我通过java代码实现了一个socket服务端(可以启动socket服务,接收客户端请求,给客户端回复响应),在eclipse中调试启动服务,调测是OK的;
但是这个服务怎么才能集成或部署到一个类似于jetty或tomcat容器中呢?(而不是每次通过eclipse启动),知道的能告诉我一个具体方法吗?感激!
应该是c/s程序吧,直接在服务器上调用java命令运行main类就行,就像我们开始学习java时需要手动编译运行一样,先javac编译,再java运行
你把在你本地编译好的class文件,放到服务器,通过java main类路径 的方式后台运行就可以
你的socket服务的入口,不就是一个函数吗? 你写一个jetty的应用,调用这个函数,然后使用jetty启动就好了。tomcat也是一样的。
不需要jetty或者tomcat这样的servlet容器,就算用了也只不过用容器启动触发你自己的服务端启动。有JVM就可以,然后直接java 允许你自己的main类,最好写一个脚本,提供一些简单的命令,比如启动/关闭,免得只能kill -9去关闭。
如果你单纯是问如果在Web服务上启动,可以通过ServletContextListener来完成,在Web.xml中注册,这样服务启动时就会走ServletContextListener中的代码,你可以在代码里面写启动服务的操作。
其次,socket服务监听的地址,你最好写成0.0.0.0,这样你通过localhost还是本地IP,都可以访问,多个网卡也可以。
然后如果不是Web服务,打成Jar包时,会有一个入口方法,这个你可以网上查一下就行了。
直接在服务器上调用java命令运行main类就行,就像我们开始学习java时需要手动编译运行一样,先javac编译,再java运行