zoukankan      html  css  js  c++  java
  • spring boot搭建及常用配置

    在idea中搭建spring boot及相关小知识 https://blog.csdn.net/vigoss77/article/details/81590671

    ===============================

    spring boot 需要引用的依赖项:

    spring-boot-starter-parent  // 所有Spring Boot组件的基础引用
    
    spring-boot-starter-web  // 对SB应用提供Web的支持
    
    spring-boot-starter-thymeleaf(可选)  // 提供thymeleaf模板引擎的支持
    
    spring-boot-maven-plugin  // 提供SB应用打包的功能

    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>
    
        <groupId>com.example</groupId>
        <artifactId>demo</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <packaging>jar</packaging>
    
        <name>demo</name>
        <description>Demo project for Spring Boot</description>
    
        <parent>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>1.5.9.RELEASE</version>
            <relativePath/> <!-- lookup parent from repository -->
        </parent>
    
        <properties>
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
            <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
            <java.version>1.8</java.version>
        </properties>
    
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter</artifactId>
            </dependency>
    
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
    
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-thymeleaf</artifactId>
                <version>2.1.1.RELEASE</version>
            </dependency>
    
    
    
        </dependencies>
    
        <build>
            <plugins>
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                </plugin>
            </plugins>
        </build>
    
    
    </project>

     启动入口:

    
    
    package com.example.demo;

    //
    DemoApplication:告诉spring boot 我是一个入口类,运行我就能启动SB // @SpringBootApplication:自动扫描当前com.example.demo包路径下可以被注入的类,开始初始化 // 可以扫描:@Repository @Service @Controller @Component @Entity @SpringBootApplication(scanBasePackages = "com.example") public class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); } }

    Spring中常用的配置项:

    # 更改端口
    server.port=80
    # 是否打开调试模式
    debug=true
    
    # 类似pythn的url管理,就是一个tomcat下如果有三个webapp项目(app1,app2,app3),加上此配置后,访问app1的路径,都需要加上/app1前缀
    # 一般情况下,小项目通常都是在Tomcat下部署多个webapp,通过上下文来区分
    # 在集群或者大型项目中,通常我们一个Tomcat对应一个webapp,然后通过不同的端口来进行区分,比如(8080,8081,8082)
    server.servlet.context-path=/app1
    
    # 注意:UTF-8只包含了20000+个中文字符,对于生僻字显示不了
    spring.http.encoding.charset=utf-8
    
    # 开启thymeleaf缓存(默认是开启缓存的)
    # 当你更改html文件内容的时候,刷新页面,是不会更新内容的
    # 如果关闭页面缓存,这里有个大坑,是因为少了一个设置
    # 设置(IntelliJ IDEA):file->settings->Build,Execution,Deployment->Compiler,勾选Build project automatically
    spring.thymeleaf.cache=false
    
    spring.mvc.date-format=yyyy-MM-dd
    # 设置JSON 日期序列化格式,北京时间相对伦敦有8个小时时差,所以使用GTM+8
    spring.jackson.time-zone=GMT+8
    spring.jackson.date-format=yyy-MM-dd HH:mm:ss SSS

    日期示例:

        @RequestMapping("/date")
        @ResponseBody  // 返回json数据
        public Date out(Date sdate){
            return sdate;
        }

    http://localhost:8080/app1/date?sdate=2009-11-22

    返回:"2009-11-21T16:00:00.000+0000"

    可以发现,返回的时间是少8个小时,并且,T是什么鬼?

    设置:

    spring.jackson.time-zone=GMT+8
    spring.jackson.date-format=yyy-MM-dd HH:mm:ss SSS
    现在返回:"2009-11-22 00:00:00 000"
  • 相关阅读:
    【Swift学习】Swift编程之旅---可选链(二十一)
    【Swift学习】Swift编程之旅---ARC(二十)
    Swift 3.0首个开发者预览版将在5月12日释出
    【Swift学习】Swift编程之旅---析构方法(十九)
    【Swift学习】Swift编程之旅---构造方法(十八)
    【Swift学习】Swift编程之旅---继承(十七)
    swift3.0的改变
    【Swift学习】Swift编程之旅---方法(十五)
    【Swift学习】Swift编程之旅---Subscripts下标(十六)
    【Swift学习】Swift编程之旅---属性(十四)
  • 原文地址:https://www.cnblogs.com/zhzhlong/p/10164210.html
Copyright © 2011-2022 走看看