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源文件夹中的springbootApplication.java是整个项目的启动类

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

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

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

   启动成功访问界面如下:

 测试代码

package com.ssm.springboot.controller;
 
import com.ssm.springboot.Properties.BaseEntity;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
 
import java.util.HashMap;
import java.util.Map;
 
/**
 * @author 胡明财
 * @blog name & blog address 027@0030
 * 
 */
@RestController
public class Mycontroller {
 
    @Value("${user.uname}")
    private String uname;
    @Value("${user.pwd}")
    private String pwd;
    @Autowired
    private BaseEntity baseEntity;
 
    @RequestMapping("/demo1")
    public String demo1() {
        return "hello demo1";
    }
 
    @RequestMapping("/by1")
    public String by1(String name) {
        return name + "say hello springboot";
    }
 
    @RequestMapping("/by2/{name}")
    public String by2(@PathVariable("name") String name) {
        return name + "say hello springboot";
    }
 
    @RequestMapping("/byjson")
    public Map returnJson() {
        Map map = new HashMap();
        map.put("success", true);
        map.put("msg", "恭喜!!!");
        return map;
    }
 
    @RequestMapping("/by3")
    public Map by3() {
        Map map = new HashMap();
        map.put("uname", uname);
        map.put("pwd", pwd);
        return map;
    }
 
    @RequestMapping("/by4")
    public BaseEntity by4() {
        return baseEntity;
    }
}

 

 

 

Springboot配置文件

内置属性

 controler对应的Java代码

package com.ssm.springboot.controller;
 
import com.ssm.springboot.Properties.BaseEntity;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
 
import java.util.HashMap;
import java.util.Map;
 
/**
 * @author 胡明财
 * @blog name & blog address 027@0030
 * 
 */
@RestController
public class Mycontroller {
 
    @Value("${user.uname}")
    private String uname;
    @Value("${user.pwd}")
    private String pwd;
    @RequestMapping("/by3")
    public Map by3() {
        Map map = new HashMap();
        map.put("uname", uname);
        map.put("pwd", pwd);
        return map;
    }
}

属性封装类

定义属性封装类

package com.ssm.springboot.Properties;
 
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
 
/**
 * @author 胡明财
 * @blog name & blog address 027@0030
 * 
 */
@Component
@Data
@ConfigurationProperties(prefix = "user")
public class BaseEntity {
    private String uname;
    private String pwd;
    private Integer age;
    private String sex;
    private String address;
}

加一个pom依赖:

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

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

package com.ssm.springboot.controller;
 
import com.ssm.springboot.Properties.BaseEntity;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
 
import java.util.HashMap;
import java.util.Map;
 
/**
 * @author 胡明财
 * @blog name & blog address 027@0030
 * @create  2019-11-24 14:57
 */
@RestController
public class Mycontroller {
    @Autowired
    private BaseEntity baseEntity;
    @RequestMapping("/by4")
    public BaseEntity by4() {
        return baseEntity;
    }
}
原文地址:https://www.cnblogs.com/xmf3628/p/11926312.html