zoukankan      html  css  js  c++  java
  • SpringBoot项目的云服务器部署

    1.场景还原

         springboot配置相当简单,人人皆知。怎么把springboot工程部署到云服务器上呢?可能有人会说,博主你前篇不是讲了java工程的云部署把;但是我想澄清一点的是,我前篇的工程都是ssm框架搭建的,而springboot可是自带tomcat喽!这就有点麻烦....淡定,往下看

    2.配置解析

    ①application.properties文件

    # EMBEDDED SERVER CONFIGURATION (ServerProperties)
    server.port=8010
    server.session-timeout=1800
    server.context-path=
    server.tomcat.max-threads=0
    server.tomcat.uri-encoding=UTF-8
    server.tomcat.basedir=target/tomcat
    
    # HTTP encoding (HttpEncodingProperties)
    spring.http.encoding.charset=UTF-8
    spring.http.encoding.enabled=true 
    spring.http.encoding.force=true
    
    #datasource
    spring.datasource.url=jdbc:mysql://192.168.0.129/ccoee?useUnicode=true&characterEncoding=UTF-8
    spring.datasource.username=zhangxing
    spring.datasource.password=zxp52077
    spring.datasource.driverClassName=com.mysql.jdbc.Driver
    
    #mybatis
    mybatis.type-aliases-package=com.cckj.model
    mybatis.mapper-locations=classpath:mapper/*.xml
    
    #mapper
    mapper.mappers=tk.mybatis.mapper.common.Mapper
    mapper.not-empty=false
    mapper.identity=MYSQL
    
    #pagehelper
    pagehelper.helperDialect=mysql
    pagehelper.reasonable=true
    pagehelper.supportMethodsArguments=true
    pagehelper.params=count=countSql
    
    #logging
    #logging.level.root=INFO
    #logging.level.org.springframework.web=DEBUG
    logging.level.org.zhangxing=DEBUG

    就是这个文件 包罗了ssm框架的烦琐配置,哪个程序员不爱呢?那么既然爱,请深爱!将远程数据库连接配好,这里不再赘述。

    ②pom.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
      <modelVersion>4.0.0</modelVersion>
      <packaging>jar</packaging>
      <groupId>magic</groupId>
      <artifactId>magic</artifactId>
      <version>1.0-SNAPSHOT</version>
    
      <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.4.3.RELEASE</version>
      </parent>
    
      <dependencies>
        <dependency>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>
    
        <dependency>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-test</artifactId>
        </dependency>
    
        <dependency>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    
        <dependency>
          <groupId>mysql</groupId>
          <artifactId>mysql-connector-java</artifactId>
        </dependency>
    
        <dependency>
          <groupId>com.alibaba</groupId>
          <artifactId>druid</artifactId>
          <version>1.0.10</version>
        </dependency>
    
        <dependency>
          <groupId>org.mybatis.spring.boot</groupId>
          <artifactId>mybatis-spring-boot-starter</artifactId>
          <version>1.1.1</version>
        </dependency>
    
        <dependency>
          <groupId>tk.mybatis</groupId>
          <artifactId>mapper-spring-boot-starter</artifactId>
          <version>1.0.0</version>
        </dependency>
    
        <dependency>
          <groupId>com.github.pagehelper</groupId>
          <artifactId>pagehelper-spring-boot-starter</artifactId>
          <version>1.0.0</version>
        </dependency>
    
      </dependencies>
    
      <build>
        <finalName>helloworld</finalName>
        <plugins>
          <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
          </plugin>
        </plugins>
      </build>
      <repositories>
        <repository>
          <id>spring-milestone</id>
          <url>http://repo.spring.io/libs-release</url>
        </repository>
      </repositories>
    
    </project>

    这里要注意的是,打包方式jar,不再是war

    <packaging>jar</packaging>

    自定义打包名称

    <build>
        <finalName>helloworld</finalName>
        <plugins>
          <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
          </plugin>
        </plugins>
      </build>
      <repositories>
        <repository>
          <id>spring-milestone</id>
          <url>http://repo.spring.io/libs-release</url>
        </repository>
      </repositories>

    ③Application启动类代码

    @SpringBootApplication
    @MapperScan(basePackages = "com.cckj.dao", markerInterface =Mapper.class)
    public class Application {
    
    
        public static void main(String[] args) {
            SpringApplication.run(Application.class, args);
        }
    }
    注意:各个方法中的测试主函数最好全部注释掉!

    3.实现方案

    准备工作:在部署之前,首先确认云服务器是否装有tomcat环境,并且服务时候开启!若无环境,请自行安装并开启服务

    ①开始打jar包

    跟前篇步骤一样,点开右边的Maven Project,点击Lifecycle,最后双击packet,生成jar包

    ②将刚打的jar上传至云服务器的java目录下

    ③运行命令:java -jar helloworld.jar,然后springboot工程的内置tomcat就开启了

    注意:部署好之后,需要开放端口号:3306,8089

    访问效果:

    这里还没完呢,当然你关闭当前的xshell 命令界面时,再次访问就失效了,这是因为springboot内置的tomcat随之也关闭了,那么有人会问,这叫什么云部署呀?跟本地没两样,是啊,我也这么觉得;别急,往下看

    ④常驻云服务器

    运行命令: nohup java -jar helloworld.jar &

    nohup的意思不挂服务,常驻的意思,除非云服务器重启,那就没法了;最后一个&表示执行命令后要生成日志文件nohup.out

    好了,这样就不担心关闭xshell,只要云服务器不关闭,总能访问的。

    我是张星,欢迎加入博主技术交流群,群号:313145288

  • 相关阅读:
    java io 学习笔记(一)
    Centos中查看系统信息的常用命令
    arcgis影像批量裁剪代码
    VS2010中VC++目录和C/C++之间的区别。VC++ Directories和C/C++的区别。
    VS中为什么不同的项目类型属性查看和设置的界面不一样
    C++函数中返回引用和返回值的区别
    java中HashMap的keySet()和values()
    repoquery详解——linux查看包依赖关系的神器
    linux学习笔记
    log4j的AppenderLayout格式符
  • 原文地址:https://www.cnblogs.com/tiancai/p/8805988.html
Copyright © 2011-2022 走看看