Linux入门:部署JavaWeb项目

所需环境:

  • Java环境:jdk
  • 服务器:tomcat
  • 网络环境:防火墙及开放端口

java安装

  1. 使用 su root ,切换到root用户
  2. 查看yum仓库中指定包名的软件包,可以使用通配符匹配
    yum list java-1.8*
  3. 安装应用程序
    yum install java-1.8.0-openjdk.x86_64
  4. 安装完成后,使用java –version查看版本

tomcat安装

  1. windows下载最新版本的tomcat,上传安装包到远程服务器,并解压。
    pscp C: \apache-tomcat-9.0.16.tar.gz root@192.168.114.28:/usr/local/tomcat
    tar –xzf apache-tomcat-9.0.16.tar.gz
  2. 开放8080端口
    /sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT
  3. 启动tomcat
    切换到bin目录下,执行startup.sh文件。如果没有可执行权限,使用 chmod + x startup.sh设置权限。

部署自己的SpringBoot项目

1.使用Spring Initializr创建一个最简单的SpringBoot。添加如下Controller。

@RestController
public class GreetingController {

    @RequestMapping("/greeting")
    public String greet() {
        return "hello world ... ";
    }
}

2.改写启动类,主类继承SpringBootServletInitializer子类并覆盖其configure方法。这样做利用了Spring Framework的Servlet 3.0支持,并允许在应用程序由Servlet容器启动时配置它。

@SpringBootApplication
public class RestDemoApplication extends SpringBootServletInitializer {

    public static void main(String[] args) {
        SpringApplication.run(RestDemoApplication.class, args);
    }

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(RestDemoApplication.class);
    }
}

3.更新pom.xml配置,使项目生成war文件,而不是jar文件。

    <groupId>com.lee</groupId>
    <artifactId>rest-demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>rest-demo</name>
    <packaging>war</packaging>

4.确保嵌入的servlet容器不会干扰war文件部署到的servlet容器。为此,需要将嵌入的servlet容器排除,并引入servlet容器。

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <!-- 移除嵌入式tomcat插件 -->
            <exclusions>
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-tomcat</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>4.0.1</version>
            <scope>provided</scope>
        </dependency>
    </dependencies>

5.使用Maven打包项目,将生成的war包拷贝到tomcat主目录webapps下,重启tomcat。Windows浏览器访问http://192.168.114.128:8080/rest/greeting,输出hello world ...,说明部署成功。

posted @ 2019-02-12 16:24  DeqiangLee  阅读(175)  评论(0编辑  收藏  举报