首页 >  编程教程 >  java教程 >  正文

springboot网站搭建部署详细流程

 作者:潘某人SEO
1067

linux环境如何搭建java框架springboot,为大家演示一种快速简单的搭建springboot的方法。由于springboot是java的众多框架之一,因此需要部署好java的运行环境,即服务器安装好jdk18以及tomcat3,注意版本的兼容性。

安装Maven

Maven 是一个项目管理工具,可以对 Java 项目进行自动化的构建和依赖管理,可以从官网下载页获取最新的下载链接(Binary tar.gz archive)。

cd /usr/local
mkdir download
cd download
wget https://dlcdn.apache.org/maven/maven-3/3.8.5/binaries/apache-maven-3.8.5-bin.tar.gz
tar xzvf apache-maven-3.8.5-bin.tar.gz
mv apache-maven-3.8.5 /usr/local/maven

1
2
3
4
5
6
7

需要注意的是版本更新之后链接可能会失效,只要把链接上的版本改成最新的版本就可以成功下载,或者换一个下载源。

配置环境变量

vi /etc/profile
# 编辑 /etc/profile,在最下方添加以下代码
MAVEN_HOME=/usr/local/maven
PATH=${MAVEN_HOME}/bin:${PATH}
export PATH
#保存后运行下方代码,使环境变量生效:
source /etc/profile
#检查 Maven版本,是否成功安装
mvn -version
1
2
3
4
5
6
7
8
9

替换maven源

# 替换maven源
vim /usr/local/maven/conf/settings.xml

# 找到标签对,添加以下内容

   alimaven
    aliyun maven
    https://maven.aliyun.com/nexus/content/groups/public/
    central
	
		true
        always
    
    
		true
        always
    

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

当然Maven安装完之后,可以使用命令来快速构建出项目骨架。当然我们这里不这么操作,回归我们的正题,开始部署springboot。

准备springboot包

springboot安装
大家可以去网站start.spring.io,配置自己需要springboot项目包,按照上面的配置选项,然后点击GENERATE按钮就可以下载springboot项目包。
这边我们使用war的方式去部署,如果不想搭建tomcat环境可以直接使用jar的打包方式,jar内置了tomcat。

配置springboot

#打开终端将springboot包上传到/home/www目录并解压
cd /home/www/demo
# 打包
mvn package
cp -R /home/www/target/demo-0.0.1-SNAPSHOT.war /usr/local/tomcat/webapps
1
2
3
4
5

war包会在项目根目录下的target目录下,配置不同包名称会不一样,根据实际情况修改。‘/usr/local/tomcat/webapps’,这个位置代表tomcat安装位置,根据自己的安装路径找到webapps目录。

启动服务

#当重新打包之后,必须重启tomcat才可以生效
/usr/local/tomcat/bin/shutdown.sh
/usr/local/tomcat/bin/startup.sh
1
2
3

访问springboot

我们的包名称为“demo-0.0.1-SNAPSHOT.war”,当tomcat服务启动后,会自动解压war包生成解压文件夹“demo-0.0.1-SNAPSHOT”。在浏览器输入localhost:8080/demo-0.0.1-SNAPSHOT,端口号可能会有所不同,不知道怎么处理的看最后一步。

修改路径

如何直接访问根目录就可以访问到项目呢?因为tomcat默认加载的是webapps目录下root文件夹,所以如果要默认加载自己期望的目录,就需要修改tomcat的配置。

tomcat路径配置

#打开文件
/usr/local/tomcat/conf/server.xml
#找到如下代码

1
2
3
4

docBase=“demo-0.0.1-SNAPSHOT”,填入你需要加载的目录,目录必须是webapps目录下的;否则就需要使用绝对路径。

重启tomcat服务

#当重新打包之后,必须重启tomcat才可以生效
/usr/local/tomcat/bin/shutdown.sh
/usr/local/tomcat/bin/startup.sh
1
2
3

如何不带端口号

链接中带着端口号很low,如何去掉这个端口号呢?这边使用nginx反向代理来实现。

#打开文件nginx.conf
/usr/local/nginx/conf/nginx.conf
#添加一个server,如下
server {
   listen 80;
   server_name _;    # 你的域名,需要将域名解析
   root /usr/local/tomcat/webapps;# 你安装tomcat目录下的webapps目录
   location / {
        proxy_pass localhost:8080;   
        index index.jsp index.html index.htm;
   }
}
1
2
3
4
5
6
7
8
9
10
11
12
#重启nginx服务
service nginx restart
1
2

至此就完成了springboot项目的部署。

申明:以上内容仅代表个人观点,仅供学习参考 本站图片来源于站点原创或CC0协议图库站点或已获得VRF授权的图库站点 版权申明:本文为博主原创,未经授权任何个人或组织单位不得复制、转载、摘编以及其它形式的应用! 本文地址:https://www.chateach.com/it/java/891springboot
相关文章
  • springBoot之Thymeleaf常见语法

    springBoot,Thymeleaf

    Thymeleaf 是一款用于渲染 XML/XHTML/HTML5 内容的模板引擎。它与 JSP,Velocity,FreeMaker 等模板引擎类似,也可以轻易地与 Spring MVC 等 Web 框架集成。

    989
    • springBoot
    • Thymeleaf
  • springboot如何对html进行转义及恢复

    html转义,springboot

    Spring HtmlUtils把HTML编码转义,可将HTML标签互相转义,HTML中<,>,&等有特殊含义(<,>,用于链接签,&用于转义),不能直接使用。

    1721
    • html转义
    • springboot
  • SpringBoot中的异常处理的详细教程

    SpringBoot,异常处理

    SpringBoot中的异常处理的详细教程,处理用户请求出现运行时异常时直接响应给用户的是一个错误界面,对于用户的使用体验不友好。什么是全局异常处理机制,用来解决整个系统中任意一个控制器抛出异常时的统一处理入口,如何使用全局异常处理类 implements HandlerExceptionResolver,之后重写接口中的resolveException方法。

    791
    • SpringBoot
    • 异常处理
  • springboot怎么返回404页面及状态码

    springboot 404页面

    我们的项目通常来讲都是一个比较大的项目,包含了各种各样的服务。如果每个服务都以不同的方式返回异常信息,这样排查的时候就会比较凌乱。如果我们定义一个标准的异常处理体系。并在所有的服务中使用。那样开发起来就可以快速定位。页面也会更加的简单和直观。

    1150
    • springboot 404页面
  • Springboot如何生成cookie,获取cookie信息

    Springboot,cookie

    Springboot如何生成cookie,获取cookie信息,cookie就是一个小体积的键值对,格式:key=value;客户端和服务器端,通常使用http协议来进行数据传输,而http协议是无状态的。也就是客户端向同一个服务器端发送的第一次Request和第二次Request,是没有关联的。需要cookie来保存一些用户信息,每次向相同的域名(domian)和路径(path)发送Request时都会携带cookie。

    678
    • Springboot
    • cookie
  • SpringBoot——Thymeleaf中的条件判断

    Thymeleaf

    SpringBoot——Thymeleaf中的条件判断(th:if、th:unless、th:switch、th:case),th:if、th:unless、th:switch、th:case 这几个属性,其实和JSP里面的那些标签都是类似的,含义就可以理解为Java语言中的if、else、switch-case这些条件判断一样,所以这里就不再详细叙述了,下面就直接给出例子!!!

    1371
    • Thymeleaf
  • SpringBoot--Thymeleaf日期格式处理

    Thymeleaf,日期格式

    Thymeleaf作为众多模板引擎中的一种,我最初也是对它充满了陌生,在SpringBoot如何处理时间格式,SpringBoot--Thymeleaf日期格式处理。

    653
    • Thymeleaf
    • 日期格式
  • SpringBoot如何实现邮箱验证

    SpringBoot,邮箱验证,验证码发送

    在网站及各种应用中不可避免的需要运用到邮件发送服务,如消息提醒,验证码的发送,都需要使用到邮件发送。大体思路:先生成一个六位随机验证码并存起来,调用邮箱接口发送验证码,将用户输入的验证码和之前保存的验证码进行比对。

    1035
    • SpringBoot
    • 邮箱验证
    • 验证码发送
  • Spring Boot 如何解决跨域问题

    SpringBoot跨域

    SpringBoot 如何解决跨域问题方法,CORS全称Cross-Origin Resource Sharing,意为跨域资源共享。当一个资源去访问另一个不同域名或者同域名不同端口的资源时,就会发出跨域请求。如果此时另一个资源不允许其进行跨域资源访问,那么访问的那个资源就会遇到跨域问题。

    570
    • SpringBoot跨域
  • Java获取IP,如何获取到访客的真实公网ip

    Java获取IP

    springboot,java如何获取用户的真实ip地址呢?项目开发中,不管是什么应用不管是什么语言,获取ip地址是非常关键的一环,因为管是操作日志的记录还是业务的需求上都不可或缺的用到访客的ip地址,那么在java中如何获取到IP地址呢?

    651
    • Java获取IP
  • 解决Incorrect result size: expected 1, actual 0异常

    Spring,queryForObject报错

    在Spring中使用queryForObject做数据库查询时出现如下异常Incorrect result size: expected 1, actual 0异常,是什么原因造成,如何解决呢?

    1200
    • Spring
    • queryForObject报错
  • Java字符串的替换replace()、replaceFirst()和replaceAll()

    java,字符串

    Java字符串的替换replace()、replaceFirst()和replaceAll(),如何匹配替换字符串中的内容。

    532
    • java
    • 字符串
  • js中的数组元素的添加方法

    js数组添加元素

    js中的数组元素的添加方法,主要有三种方法,用索引元素添加、push( )方法、unshift()方法,push()方法在数组的尾部添加一个或多个元素,并返回数组新的长度,修改并替换了原始数组而非生成一个修改版的新数组。

    496
    • js数组添加元素
  • php如何匹配特定的汉字字母英文preg_match_all方法实现

    preg_match_all,php匹配字符串

    php如何从字符串匹配特点的内容,preg_match_all如何匹配字符串内容,数字、字符、字母,正则匹配,php正则表达式中preg_match_all函数的详解。

    880
    • preg_match_all
    • php匹配字符串
  • linux系统CentOS发送邮件

    CentOS发送邮件

    如何在linux、ubuntu、centos系统中发送邮件,如定时发送网站日志,或者服务器信息状态,如何在centos系统中配置邮件发送功能。

    1204
    • CentOS发送邮件
  • centos下修改ssh端口

    ssh端口,

    服务器如何修改默认的ssh端口,修改ssh默认端口是非常有必要的可以保证登陆的安全性。

    1055
    • ssh端口
  • Vue3 中全局引入 axios及其使用方法

    axios使用方法,Vue3

    Vue3如何安装axios,如何在全局使用axios,定义全局属性来使用axios,基本上每个页面都要使用到axios,因此在main.js中定义全局属性来实现axios告别繁杂的引用。

    667
    • axios使用方法
    • Vue3
  • 如何修改重置mysql密码

    重置mysql密码

    人生处处充满着意外,忘记了mysql密码无法登陆数据库,就需要重置mysql密码,今天以linux环境下的mysql数据密码的重置。大致的原理就是设置跳过数据库密码,然后设置登陆密码,在恢复数据登陆权限。

    576
    • 重置mysql密码
-- 这已经是底线了,看看别的把! --