springboot(一)——搭建本身的springboot項目(附帶日誌配置)

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就搭建起來了java

logback配置

實際項目中,咱們但願日誌能夠記錄在服務器上面,這邊用的是logback,是springboot自帶的,我這邊集成方式是加入logback-spring.xml文件,加入後啓動項目便可,文件內容以下:spring

<?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>

效果如圖:springboot

圖片描述

本人也開通了微信公衆號:stonezplxjj和我的博客:http://www.zplxjj.com,更多文章歡迎關注公衆號:bash

圖片描述

相關文章
相關標籤/搜索