idea使用spring Initalizr 快速构建spring boot

  1. 点击新建项目,选择如图所示

图片描述

  1. 点击next后

图片描述

  1. 点击next,之后按照图中所示选择

图片描述

  1. 选择路径

图片描述

  1. 点击完成,如图所示,删除自己不想要的,项目构建完成

图片描述

  1. 构建一个controller,启动项目就可以看到返回结果了

图片描述

在自己的服务器搭建自己的springboot项目

使用idea向远程服务传递项目

  1. 设置idea

图片描述

  1. 配置相关信息

图片描述

  1. 上传到指定机器

图片描述

配置启动脚本,基于java -jar命令

  • start.sh
#!/bin/bash
nohup java -jar target/zplxjj.jar  &
  • stop.sh
#!/bin/bash
PID=$(ps -ef | grep target/zplxjj.jar | grep -v grep | awk '{ print $2 }')
if [ -z "$PID" ]
then
    echo Application is already stopped
else
    echo kill $PID
    kill $PID
fi
~
  • run.sh
#!/bin/bash
echo stop application
source stop.sh
echo start application
source start.sh

启动自己的项目只需要执行run.sh就行,一个自己的spring boot就搭建起来了

logback配置

实际项目中,我们希望日志可以记录在服务器上面,这边用的是logback,是springboot自带的,我这边集成方式是加入logback-spring.xml文件,加入后启动项目即可,文件内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <!--用来定义变量值的标签-->
    <property name="LOG_HOME" value="./logs"/>
    <property name="encoding" value="UTF-8"/>
    <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度;%M:%L是方法和行号;%msg是日志消息;%n是换行符-->
    <property name="normal-pattern"
              value="%d{yyyy-MM-dd/HH:mm:ss.SSS}|%X{localIp}|%X{requestId}|%X{requestSeq}|%X{country}|%X{deviceType}|%X{deviceId}|%X{userId}|^_^|[%t] %-5level %logger{50} %line - %m%n"/>
    <property name="plain-pattern" value="%d{yyyy-MM-dd.HH:mm:ss} %msg%n"/>

    <!-- 按照每天生成日志文件 -->
    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <!--日志文件输出的文件名-->
        <file>${LOG_HOME}/zplxjj.log</file>
        <Append>true</Append>
        <prudent>false</prudent>
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <pattern>${normal-pattern}</pattern>
            <charset>${encoding}</charset>
        </encoder>
        <!--按时间分割-->
        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <fileNamePattern>${LOG_HOME}/zplxjj.log.%d{yyyy-MM-dd}.%i</fileNamePattern>
            <maxFileSize>128MB</maxFileSize>
            <maxHistory>15</maxHistory>
            <totalSizeCap>32GB</totalSizeCap>
        </rollingPolicy>
    </appender>

    <!--控制台输出-->
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
            <pattern>${normal-pattern}</pattern>
        </encoder>
    </appender>

    <!-- log file error -->
    <appender name="ERROR"
              class="ch.qos.logback.core.rolling.RollingFileAppender">
        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
            <level>ERROR</level>
        </filter>
        <file>${LOG_HOME}/zplxjj-error.log</file>
        <prudent>false</prudent>
        <Append>true</Append>
        <encoder>
            <pattern>${normal-pattern}</pattern>
            <charset>${encoding}</charset>
        </encoder>
        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <fileNamePattern>${LOG_HOME}/zplxjj-error.log.%d{yyyy-MM-dd}.%i</fileNamePattern>
            <maxFileSize>128MB</maxFileSize>
            <maxHistory>15</maxHistory>
            <totalSizeCap>32GB</totalSizeCap>
        </rollingPolicy>
    </appender>

    <root level="INFO">
        <appender-ref ref="STDOUT"/>
        <appender-ref ref="FILE"/>
        <appender-ref ref="ERROR"/>
    </root>
</configuration>

效果如图:

图片描述

本人也开通了微信公众号:stonezplxjj和个人博客:http://www.zplxjj.com,更多文章欢迎关注公众号:

图片描述


stone想静静
45 声望7 粉丝

春暖花痴开 傻傻创未来