1.pom.xml
<packaging>war</packaging>
<build>
<!--打包后的文件名-->
<finalName>hsf_layui</finalName>
2.启动类
// 如此配置打包成war包才可在tomcat下使用
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder.sources(Start.class);
}
3.WebSocket配置,在打包成war包时要注释,否则报错
@Bean
public ServerEndpointExporter serverEndpointExporter() {
return new ServerEndpointExporter();
}
4.文件上传和删除路径需要修改
//spring boot的文件上传路径--开发环境
// path = ResourceUtils.getURL("classpath:META-INF/resources").getPath() + "/" + dir;
//spring boot的文件上传路径--linux生产环境
path = getPath(dir);
//spring boot的文件删除路径--开发环境
// String path = ResourceUtils.getURL("classpath:META-INF/resources").getPath() + "/" + filePath;
//spring boot的文件删除地址--linux生产环境
String path = getPath(filePath);
5.打成war包
idea->maven->clean->package,将会在target目录下生成war包,扔到tomcat的webapps目录里即可
6.tomcat配置
解决控制台中文乱码:
conf->logging.properties->java.util.logging.ConsoleHandler.encoding = GBK
解决URI传参中文乱码,配置80端口
conf->server.xml-><Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8"/>
配置根路径(/)访问项目:
Host标签下加
<Context path="/" docBase="hsf_layui" debug="0" reloadable="true" crossContext="true" />
7.运行
bin->startup.bat,等待启动完毕,回到webapps目录,此时目录结构如图:
hsf_layui项目的目录结构:
此时访问localhost会找不到页面,需要把你的[视图文件夹]手动移动到[项目根目录]下,移动完的项目目录结构如图:
然后关闭再重新启动startup.bat就可以正常运行了
对于部署到linux:
①移动视图文件夹命令(假如你的tomcat在root目录下):
mv /root/apache-tomcat-9.0.35/webapps/hsf_layui/WEB-INF/classes/META-INF/resources/* /root/apache-tomcat-apache-tomcat-9.0.35/webapps/hsf_layui
②linux下mysql忽略大小写:
先停止mysql服务:systemctl stop mysqld
修改mysql配置文件:vim /etc/my.cnf
在 [mysqld]下第一行加上:lower_case_table_names=1
重启mysql服务:systemctl restart mysqld