《2022年让JAVAweb程序也能自动安装 .pdf》由会员分享,可在线阅读,更多相关《2022年让JAVAweb程序也能自动安装 .pdf(4页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、让 web程序也能自动安装1、要求我们的 web程序使用 tomcat 作为应用服务器, 数据库为 mysql 。前端不会使用apache 或 iis 。而且程序是运行在 windows 里。java 的版本是 jdk1.5 ,同时,在系统安装的时候, 需要导入一些数据, 这些都是我们帮助客户录入的,因为客户觉得录入太麻烦了(跑题了)2、思路既然客户要求自动安装,那么无非就是自动安装 tomcat, mysql, jdk, 我们的web应用,以及导入客户的数据。但是我们的客户对电脑完全不懂,所以,如果安装过程中, 出现 tomcat 那种的“下一步”操作, 是绝对不行的。 最好是一气呵成,点完
2、安装,一切ok,打开浏览器,就能访问。图形的当然最好, 不过俺还是想省点事, 交流之后客户能够接受批处理文件。那么就用批处理编写安装程序。3、自动安装 jdk因为 jdk 是 tomcat 的必要环境,所以先考虑这个。其实这个最简单了,拷贝一份安装过的 jdk 就可以了,一般 c:programe filesjava 目录里有两个目录:jdk1.5.0_12 和jre1.5.0_12,我们只需要 jdk1.5.0_12 目录就行了。至于为什么不是jre1.5.0_12?稍后在安装 tomcat 的时候会提到。4、自动安装 tomcat这个部分非常简单,网上也有详细的资料。无非就是下载一个tom
3、cat 的免安装版本,然后运行 service.bat ,将 tomcat 安装为服务。不过因为我们之前并没有安装过 jdk (仅仅是拷贝),所以这样的tomcat 是一定运行不起来的。我们需要修改 catalina.bat, startup.bat, service.bat 这三个文件,在其中加入 JAVA_HOME 这个环境变量。例如,我们把 jdk 拷贝到了 d:myappjava 目录,那么就在那三个批处理里增加:set JAVA_HOME=d:myappjava (不过,如果你的jdk 目录与 tomcat 目录是有规则的放置的话,使用CATALINA_HOME 这个环境变量是更好的
4、方式,例如 set JAVA_HOME=%CATALINA_HOME%.java)如果你仔细看看 service.bat 文件,就会发现,里面还使用了 JAVA_HOMEjre 这样的路径,所以,就如上面所说,如果你使用 jre1.5.0_12 就无法启动service.bat 了, 即使提示你服务安装成功, 也无法启动。但是 startup.bat 是名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 4 页 - - - - - - - - - 可以启动的。所以,一句话,为
5、了简单,省事,直接使用 jdk1.5.0_12 这样的目录就行了!5、自动安装 mysql这部分的资料网上很多,无非是下载免安装版本的mysql。但是通常你花费点时间才发现,免安装版本的 mysql 里不带 my.ini 文件,没有这个文件是不能启动mysql 的。从你的安装过的版本里拷贝一个出来吧,修改一下其中的配置。另外,这个文件也不用放到什么 windows 目录下,看到有许多文章就是这么误导人。放在 mysql 目录里就行了。6、安装我们的 web应用以及导入数据安装 web应用太简单了,拷贝到tomcat 目录下就行了。导入数据也很简单。我们首先准备一个 init.sql。 这个文件
6、里写上创建数据库的语句,以及建立新用户的语句。然后使用:mysql -h localhost -u root init.sql (之所以可以这么做,是因为root 的口令在最初是空的)假设我们建立的用户是 tom, 密码是 123456,而且录入的数据已经使用mysqldump导出了,例如叫 mydb.sql ,接下来我们就导入数据:mysql -h localhost -u tom -p123456 mydb.sql 7、注意事项在 tomcat 安装为服务后, 它是不会自己启动的, 得使用 net start tomcat5 让它启动。而且,这个服务也不是开机自动启动的,得使用 sc co
7、nfig tomcat5 start= auto 让它成为自动启动的服务。(注意 start= auto “=”和“auto”之间有空格 )同样, mysql 也不会自己启动,必须 net start mysql。不过 mysql 的服务默认就是开机启动的。mysql 还有一个问题。 如果你启动 mysql 服务后,立刻去连接 mysql,有的时候会出现连接不上的错误, 当然,可以在 启动 mysql 服务和连接 mysql 之间加一个延迟,不过那太麻烦了, 所以,我们变通一下,先启动 mysql ,再启动 tomcat ,再连接 mysql 。名师资料总结 - - -精品资料欢迎下载 - -
8、 - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 4 页 - - - - - - - - - ok,最后别忘了给 mysql 的 root 用户设置一个密码!8、setup.bat 全部内容下面是一个例子,一些信息我删除掉了,不过不影响大局:Bat 代码echo off set targetDir=d:myapp xcopy .component*.* /s %targetDir% xcopy .appmyapp*.* /s %targetDir%apache-tomcat-5.5.27webappsmyapp xcop
9、y .appImportRun*.* /s %targetDir%ImportRun xcopy .db*.* /s %targetDir%db echo install tomcat as windows service cd /d %targetDir%apache-tomcat-5.5.27bin call service.bat install sc config tomcat5 start= auto echo install tomcat as windows service -end echo install mysql as windows service cd /d %tar
10、getDir%mysql-5.0.67-win32bin mysqld-nt -install net start mysqlcd /d %targetDir%apache-tomcat-5.5.27bin net start tomcat5 cd /d %targetDir%mysql-5.0.67-win32bin %targetDir%mysql-5.0.67-win32binmysql -h localhost -u root %targetDir%dbinit.sql rem change root password %targetDir%mysql-5.0.67-win32binm
11、ysqladmin -u root password 1234 %targetDir%mysql-5.0.67-win32binmysql -h localhost -u tom -p123456 %targetDir%dbmydb.sql rem install mysql as windows service -end rem delete dir rd /s /q %targetDir%db pause 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 4 页 - - - - - - - - - 9、其他客户运行上面的批处理, web程序就自动安装了。不过我们还可以改进,例如在桌面创建访问 web应用的快捷方式,这样客户连地址都不用记住了。不过因为我们的应用没有涉及到 apache 与 iis,这两者的自动安装没有研究,如果有搞过的希望也能分享一下呀!这个自动安装仅仅适用windows,linux下的情况我想也是大同小异, 没有搞过。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 4 页 - - - - - - - - -
限制150内