SpringBoot第一天

1.找不到最新Springboot相关包的问题,需要把远程仓库指向华为云,在maven的setting.xml中配置一下代码:

<mirror>
    <id>huaweicloud</id>
    <mirrorOf>*</mirrorOf>
    <url>https://mirrors.huaweicloud.com/repository/maven/</url>
</mirror>

2.启动spring boot的启动类,出现下图表示SpringBoot启动成功:

 

 

 3.SpringBoot 基本web应用开发:

  (1).Lombok使用,导入如下依赖:

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.18.6</version>
</dependency>

  (2).在实体bean使用:

package com.offcn.po;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data //get 、set   toString
@AllArgsConstructor //所有参数的有参数构造函数
@NoArgsConstructor  //无参数构造函数
public class Car {
    private Integer id;
    private String name;
    private Float price;
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    private Date createdate;
   
}

  (3).SpringBoot 静态资源的访问问题:

    ①默认静态资源映射:

 

 

     ②自定义静态资源访问:

     (第一种方式:配置类)

package com.offcn.springbootdemo.config;

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

@Configuration
public class WebConfig implements WebMvcConfigurer {

    public void addResourceHandlers(ResourceHandlerRegistry registry){
        //将所有E:\\a\\下的文件访问都映射到/test/** 路径下
        //registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");
        registry.addResourceHandler("/test/**").addResourceLocations("file:E:\\a\\");
    }
}

     (第二种方式:配置application.properties)

web.upload-path=E:/a/
spring.mvc.static-path-pattern=/**
spring.resources.static-locations=classpath:/META-INF/resources/,classpath:/static/,classpath:/public/,file:${web.upload-path}

web.upload-path:这个属于自定义的属性,指定了一个路径,注意要以/结尾;


spring.mvc.static-path-pattern=/**:表示所有的访问都经过静态资源路径;


spring.resources.static-locations:在这里配置静态资源路径,前面说了这里的配置是覆盖默认配置,所以需要将默认的也加上否则static、public等这些路径将不能被当作静态资源路径,在这个最末尾的file:${web.upload-path}之所有要加file:是因为指定的是一个具体的硬盘路径,其他的使用classpath指的是系统环境变量。

 

4.WebJars:

在SpringBoot中,允许我们直接访问WEB-INF/lib下的jar包中的/META-INF/resources目录资源,即WEB-INF/lib/{*.jar}/META-INF/resources下的资源可以直接访问。

WebJars也是利用了此功能,将所有前端的静态文件打包成一个jar包,这样对于引用放而言,和普通的jar引入是一样的,还能很好的对前端静态资源进行管理。

WebJars是将web前端资源(如jQuery & Bootstrap)打成jar包文件。借助版本管理工具(Maven、gradle等)进行版本管理,保证这些Web资源版本唯一性。避免了文件混乱、版本不一致等问题。

5.SpringBoot属性配置:

  修改全局配置文件application.properties的后缀为.yml

  在application.yml添加以下记录:

server:
  port: 8888
  servlet:
    context-path: /java01

ip:
         1.1.1.1
port:
           9999

userbody:
  name: 张三
  password: 123456
  birthday: 1992.10.28
  mobile: 13802789765
  address: 北京市朝阳区

需要通过访问http://localhost:8888/java01才能正常访问

同时还可以自定义属性及读取(编写Controller代码):

package com.offcn.springbootdemo.controller;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class TestConfig {

    /*@Value("${ip}")
    private String ip;
    @Value("${port}")
    private String port;

    @GetMapping("getValue")
    public String getValue(){
        return "ip:"+ip+"port:"+port;
    }*/

}

访问http://localhost:8888/java01/getValue得到下图:

 

 6.SpringBoot构建RESTful API

  (1).RESTful介绍

      RESTful是一种软件架构风格!

      RESTful架构风格规定,数据的元操作,即CRUD(create, read, update和delete,即数据的增删查改)操作,分别对应于HTTP方法:

      GET用来获取资源,

      POST用来新建资源(也可以用于更新资源),

      PUT用来更新资源,

      DELETE用来删除资源,

      这样就统一了数据操作的接口,仅通过HTTP方法,就可以完成对数据的所有增删查改工作

  (2).RESTful接口设计

HTTP协议请求方法

SpringBoot注解

URL

功能说明

POST

@PostMapping

/users

创建一个用户

GET

@GetMapping

/users

查询用户列表

GET

@GetMapping

/users/id

根据id查询一个用户

PUT

@PutMapping

/users/id

根据id更新一个用户

DELETE

@DeleteMapping

/users/id

根据id删除一个用户

 

posted @ 2019-11-04 22:50  小园ssx  阅读(150)  评论(0)    收藏  举报