Springboot入门

SpringBoot是什么?

  Spring Boot它本身并不提供Spring框架的核心特性以及扩展功能,只是用于快速、敏捷地开发新一代基于Spring框架的应用程序。也就是说,它并不是用来替代Spring的解决方案,而是和Spring框架紧密结合用于提升Spring开发者体验的工具。

 

  同时它集成了大量常用的第三方库配置(例如Jackson, JDBC, Mongo, Redis, Mail等等),Spring Boot应用中这些第三方库几乎可以零配置的开箱即用(out-of-the-box),大部分的Spring Boot应用都只需要非常少量的配置代码,开发者能够更加专注于业务逻辑

  

  注1:敏捷式开发

  注2:spring boot其实不是什么新的框架,它默认配置了很多框架的使用方式,

        就像maven整合了所有的jar包,spring boot整合了所有的框架

 

使用Idea配置SpringBoot项目

 

 

 

启动

 

 

目录结构介绍

java源文件夹中的Springboot01Application.java是整个项目的启动类

static:存放的是静态资源的文件

templetes:存放的项目所需的页面

application.properties里面存放的是项目的全局配置信息

 

项目启动成功访问界面如下

 

测试案例代码

package com.liuwenwu.springboot01.controller;

import com.liuwenwu.springboot01.entity.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.HashMap;
import java.util.Map;

/**
 * @author LWW
 * @site www.lww.com
 * @company
 * @create 2019-11-07 15:58
 *
 * @RestController=controller+responsebody 返json
 *
 */

@RestController
public class HelloController {

    @Value("${user.uname}")
    private String uname;

    @Value("${user.pwd}")
    private String pwd;

    @Autowired
    private User user;


    @RequestMapping("/hello1")
    public String hello1(){
        return "hellowprd springboot";
    }


    @RequestMapping("/hello2")
    public Map hello2(){
        Map map=new HashMap();
        map.put("code",200);
        map.put("msg","springboot 访问成功");
        return map;
    }

    @RequestMapping("/hello3")
    public Map hello3(){
        Map map=new HashMap();
        map.put("uname",uname);
        map.put("pwd",pwd);
        return map;
    }


    @RequestMapping("/hello4")
    public User hello4(){
        return user;
    }

}

Springboot配置文件

内置属性

注意:实际项目开发的时候Port=80,Context-path=/,以下配置只为讲解相关知识点

java代码

@RequestMapping("/hello1")
    public String hello1(){
        return "hellowprd springboot";
    }

自定义属性

Application.properties中配置

user:
  uname: zs
  pwd: 123
  age: 22
  sex: 男

controler对应的Java代码

    @Value("${user.uname}")
    private String uname;

    @Value("${user.pwd}")
    private String pwd;

    @Value("${user.age}")
    private String age;

    @Value("${user.sex}")
    private String sex;


  @RequestMapping("/hello3")
    public Map hello3(){
        Map map=new HashMap();
        map.put("uname",uname);
        map.put("pwd",pwd);
        map.put("age",age);
        map.put("sex",sex);
        return map;
    }

属性封装类

定义属性封装类

实体类 user

package com.liuwenwu.springboot01.entity;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

/**
 * @author LWW
 * @site www.lww.com
 * @company
 * @create 2019-11-07 16:25
 *
 * @Data Set Get Tostirng
 *
 *
 */
@ConfigurationProperties(
        prefix = "user"
)
@Component
@Data
public class User {

    private String uname;
    private String pwd;
    private Integer age;
    private String sex;

}

添加pom依赖,解决报红问题

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-configuration-processor</artifactId>
    <optional>true</optional>
</dependency>

添加controler层的Java代码进行测试

    @Autowired
    private User user;

 @RequestMapping("/hello4")
    public User hello4(){
        return user;
    }

 

posted on 2019-11-07 17:05  骑猪南下L  阅读(126)  评论(0编辑  收藏  举报