JAVA远程部署`

转载 2016年08月28日 22:31:46

JAR

把程序包进JAR,创建manifest.txt来描述哪个类含有mian()这个方法:    Main-Class: MyApp(换行)

com.headfirstjava.projects.Chart  

前面将domin名称反过来放在前面             类的名称第一个字母是大写的。


JWS (JAVA Web Start)

JWS是通过网络来发布的程序。

.jhlp(java network lancuh Protocol)

文件是个xml文件。用来描述要运行的程序.


RMI (Remote Method incovation)

五个步骤:

1.继承Remote接口来组织远程方法

public interface MyRemote extends Remote {
     public int dou(int num) throws RemoteException;
}

MyRemote定义了客户端可以在服务端远程调用的方法,远程方法传递的如参数返回值等应是可序列化的
(即客户端与服务端都要有)

2.实现MyRemote并注册

只需要在服务器端实现MyRemote里的远程组织方法。

public class MyRemoteImpl extends UnicastRemoteObject implements MyRemote{//要继承UnicastRemoteObject
	protected MyRemoteImpl() throws RemoteException {//要处理父类构造函数抛出的异常
		super();
	}
	public static void main(String[] args) {
		try{
			MyRemote service=new MyRemoteImpl();  
			System.out.println("dd");
			Naming.rebind("dou",service);      //以Rmi方式运行代码注册远程服务
也有其他方式创建远程对象,这里继承UnicastRemoteObject.
3客户端使用远程服务

MyRemote serice=(MyRemote)Naming.lookup("rmi://192.168.1.106/dou");

启动rmiregistry监听端口 java.rmi.registry.LocateRegistry.createRegistry(1099);//默认的意思是上面的ip地址后不用添加端口。

不使用默认端口:

Registry r = LocateRegistry.createRegistry(8988); 

r.bind("ClientMethod",service); 以8988端口注册

dou为远程服务名称。


生成stub类命令:rmic notsure.MyRemoteImpl(注意不要在nutsure的目录下rmic,再上一级目录)

执行后得到MyRemoteImpl_Stub.class,复制到客户端的bin(存放.class文件的文件夹)notsure文件夹(对应生成rmic的时候notsure.MyRemoteImpl的notsure)里。




在程序启动容易重复启动,重复启动提示端口被占用


Servlets

新建的项目是DWP(Dynamic Web Projects)时要配置Servlets-api.jar,如果是tomcat project的话则不用。

对于tomcat来说,当你只指定一个web的根名,没有指定具体页面,去访问时一个web时, 如果web.xml文件中配置了欢迎页,那么就返回指定的那个页面作为欢迎页,而在文中没有web.xml文件,或虽然有web.xml,但web.xml也没指定欢迎页的情况下,它默认先查找index.html文件,如果找到了,就把index.html作为欢迎页还回给浏览器。如果没找到index.html,tomcat就去找index.jsp。找到index.jsp就把它作为欢迎页面返回。而如果index.html和index.jsp都没找到,又没有用web.xml文件指定欢迎页面,那此时tomcat就不知道该返回哪个文件了,

tomcat project

(http://www.cnblogs.com/woud/archive/2013/04/08/3008637.html)


部署到服务器之前(即在eclipse作为一个项目存在时)

src:用于存放我们的java文件,servlet也是放在这里,(java文件对服务器没有意义,这个文件夹只是方便我们编写java文件h后得到class文件)

work:用于存放编译jsp过程中生成的文件

WEB_INF:web.xml放置在这里,另外这里会有java构建后生成的class文件

WEB _INF下:

lib目录: 包含web应用所需的.jar或者.zip文件,如数据库的驱动。

其他目录,主要是网站中的一些用户文件,包括HTML网页、CSS文件、图像文件、JSP 文件等

而我们要用到的jsp文件则从HelloWorld根目录开始放置

部署到服务器之后(即在服务器的文件目录下)


除了src文件夹,webroot下的东西都搬到了那里





<a href="servlets/MyServletA">This is the most amaing servlet.</a>

servlets/MyServletA前最好加/

servlets/MyServletA并不表示文件路径,访问servlet要在web.xml配置文件里配上路径,如:

<servlet>
 8         <servlet-name>HelloServlet</servlet-name>
 9         <servlet-class>HelloServlet</servlet-class>
10     </servlet>
11     <servlet-mapping>
12         <servlet-name>HelloServlet</servlet-name>
13         <url-pattern>/HelloServlet</url-pattern>
14     </servlet-mapping>

<url-pattern>路径</url-pattern>就是配上的路径


缺少<web-app></web-app>此根标签




访问根目录(工程名mycat)(如http://localhost:8080/mycat/)时,自动转到欢迎页(在web.xml上配置,不配置默认寻找index.jsp)

servlet是让你写出带有html输出的类,而JSP相反--让你写出带有java程序的网页

实际上最终web服务器会把jsp转换成serlvet,serlvet再输出HTML。

jsp的主要好处在于能更容易地编写HTML部分而不会像servlet一样出现一堆难以阅读的print命令。

但对很多应用程序来说是无需用到JSP的,因为servlet不需要处理动态 的响应,html内容其实很简单,或者是 因为一些web服务器不支持servlet。



相关文章推荐

JavaWeb项目一键远程部署

功能: 将svn或git服务器的项目一件发布到远端的linux服务器上 思路: 利用ganymed-ssh2连接linux服务器执行命令 利用wget命令下载shell脚本 利用git或svn命令拉取...
  • A__yes
  • A__yes
  • 2016年12月06日 13:43
  • 2280

远程服务器部署javaweb项目

一,空间商的选取:      选取的是阿里云 以上是基本的配置,采取的是阿里云的15天测试服务 阿里云的控制面板有服务器的一些基本停用,重启等操作,虽然也有连接远程服务器的shell,但是网页端的...

java项目部署到远程服务器上

转载自:http://blog.csdn.net/gulu_gulu_jp/article/details/50994003 一、前言 前面我们已经尝过了在云服务器上部署代码的甜头了,现在主菜...

Gradle构建并自动部署Java Web项目到远程服务器

思路介绍:1)停止对应项目的tomcat服务器 2)删除webapps其下的对应项目文件 3)构建war包并将war包传送到tomcat服务器webapps目录下 4)启动tomcat 一、环境配置 ...

部署java web到远程服务器

网站开发完毕之后,下一步的任务就是部署了。我们从最简单的入手,如何将本地开发的webapp部署到远程服务器上(这里我们用的是阿里的ECS)。部署是一件很有意思的事情,因为我们可以让本地开发的网站被外界...

java项目部署到远程服务器上(安装的tomcat)

公司买的服务器已经托管到了移动机房,域名和ip也都已经准备就绪,剩下的就是把项目发不到服务器 上。对于简单的静态页面发不到服务器上是非常简单的,只需把源文件拷贝到tomcat的webapps目录下就...

关于如何打包java程序(我的是一个聊天服务器),并将jar包部署到远程linux服务器上

这几天赶项目,老大让把本地的java聊天服务器部署到linux服务器上,之前没有这方面的经验,于是各种百度打包java程序种种,在这上面耗费了太多时间。在此记录一下。  1、首先,将所需的java程...

maven 部署一个Java web application到本地(或者远程)的tomcat

今天花费了我一个上午的宝贵时间,才解决了这个问题。其实就只是 疏忽了一个小小的步骤,就让自己浪费了自己一早上的时间,。接下来就记录一下,自己解决问题的整个过程,便于自己以后翻阅、参考,也希望能帮助到需...

Maven插件wagon-maven-plugin自动化部署Java项目到Linux远程服务器

通常情况下,程序开发完成后部署到线上Linux服务器,可能需要经历打包、将包文件传到服务器、SSH连上服务器、敲命令启动程序等一系列繁琐的步骤。实际上这些步骤都可以通过Maven的一个插件wagon-...

MAVEN插件部署JAVA项目到远程容器

通常情况下,程序开发完成后部署到线上Linux服务器,可能需要经历打包、将包文件传到服务器、SSH连上服务器、敲命令启动程序等一系列繁琐的步骤。实际上这些步骤都可以通过Maven的一个插件wagon-...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JAVA远程部署`
举报原因:
原因补充:

(最多只允许输入30个字)