jFinal部署到Centos服务器
一.软件准备
1.MobaXterm
用于远程连接服务器和远程传输文件
下载地址:https://mobaxterm.mobatek.net/download-home-edition.html
2.服务器软件环境安装---Nginx
https://juejin.cn/post/7171465415833419813
https://blog.csdn.net/u013940812/article/details/78388518
config配置文件:https://www.cnblogs.com/knowledgesea/p/5175711.html
3.服务器软件环境安装---JDK
https://www.cnblogs.com/Studywith/p/17255339.html
4.服务器软件环境安装---MySQL
二.开始部署
1.打包项目
(1)打包jFinal后端项目
注意server.sh和start.bat的MAIN_CLASS的地址都要改成自己的App所在的地址
在侧边栏点击Maven,选择项目名-生命周期-package进行打包
(2)在文件夹中找到打包好的项目
打包好的项目在项目的target目录中,压缩包的形式便于直接上传服务器
后缀为.sh的是linux系统上的启动文件,后缀为.bat的是windows上的启动文件
启动命令都是文件名 start,windows上可以直接双击.bat文件
2.使用MobaXterm将压缩文件上传到服务器
(1)连接到远程服务器
按步骤点击,分别输入主机的公网ip和用户名进行测试连接,然后再MobaXterm中创建session进行连接
输入完毕点击OK,输入登录密码即可
(2)文件上传
选择之前打包好的压缩文件进行上传到自己想用的文件夹
(3)解压zip文件,unzip+文件名
3.开启安全组端口权限
如果没有开启端口权限,则是无法从远程访问该端口的,于是将常用端口添加进入阿里云的安全组,注意一定要将端口添加进安全组,不然后续的数据库连接操作和接口测试是完全无法实现的
4.在服务器上创建远程数据库
连接创建成功后将原来的本地数据库导出到文件,再从文件导入到远程数据库即可,注意远程数据库的用户要赋予权限(在安装时就把远程权限直接给root)
5.修改参数
(1)数据库连接
修改服务器上解压后的项目数据库连接文件,选择项目名-config-db_config.properties,将原来的本地数据库连接换成刚刚新的数据库连接信息(连接地址-用户-密码)
(2)注意undertown的host不需要修改
这里的host不需要修改成公网ip地址,改了反而启动会报错
6.启动
解压weather,进入解压后的weather文件夹,可以看到里面的server.sh和start.bat文件,服务器的系统是linux于是选择启动server.sh
./server.sh start启动后日志输出在output.log里面,和本地IDEA的控制台一样,点击查看启动情况
7.接口测试
测试连接成功,jFinal后端成功部署到服务器上,前端就可以直接使用公网ip来请求后端服务了
8.更新代码(常用)
需要通过查看output.log的报错或要新增功能对代码进行修改时,在本地完成代码修改,执行以下步骤:
1.复制db_config文本避免重新编辑(当然如果本地的连接和远程连接一致就省去了修改连接操作,也是一个不错的选择)
2.注意先测试代码修改后是否正常再打包修改后的代码(注意打包前删除target文件夹,否则不会生成新的-release文件)
3.上传到服务器进行解压
4.进入解压后的config文件夹,粘贴db_config文本
5.在项目文件夹下使用./server.sh start命令启动
6.查看output.log是否正常
7.调用接口查看是否成功
三.总结
最麻烦的其实是一个崭新的服务器上去安装软件环境,后面的具体部署,总结一下就是
1.打包
2.上传打包文件到服务器
3.端口权限配置(这个其实一般就那几个常用接口,用熟了的服务器也不用这一步)
3.将项目数据库复制到远程数据库上
4.修改项目数据库连接地址
5.启动,结果是远程成功连接