SpringBoot入门

SpringBoot是什么?

****Spring Boot它本身并不提供Spring框架的核心特性以及扩展功能,只是用于快速、敏捷地开发新一代基于Spring框架的应用程序。也就是说,它并不是用来替代Spring的解决方案,而是和Spring框架紧密结合用于提升Spring开发者体验的工具。
同时它集成了大量常用的第三方库配置(例如Jackson, JDBC, Mongo, Redis, Mail等等),Spring Boot应用中这些第三方库几乎可以零配置的开箱即用(out-of-the-box),大部分的Spring Boot应用都只需要非常少量的配置代码,开发者能够更加专注于业务逻辑

文件上传默认只支持2MB

注1:敏捷式开发
注2:spring boot其实不是什么新的框架,它默认配置了很多框架的使用方式,
就像maven整合了所有的jar包,spring boot整合了所有的框架
****

使用Idea配置SpringBoot项目

切记要联网
因为是根据(依赖)这个网站创建

https://start.spring.io/

在这里插入图片描述
没有idea也可以在这个网站上面创建项目
并且可以在这个网站上卸载关于springboot的jar包
在这里插入图片描述
下载完成
在这里插入图片描述
里面的pom依赖就已经加了刚刚我们需要的Redis的jar包
而且springboot自带Tomcat,自带运行的web容器,不需要在下载Tomcat

接下来开始在idea里面配置一个springboot项目
在这里插入图片描述
项目名只能小写,并且连接网络
在这里插入图片描述
自己的项目需要声明jar包,要用什么就勾选什么,这里我们勾选上的是我们今天案例需要的
在这里插入图片描述
目录结构介绍

java源文件夹中的Springboot01Application.java是整个项目的启动类
static:存放的是静态资源的文件
templetes:存放的项目所需的页面
application.properties里面存放的是项目的全局配置信息

运行一下
在这里插入图片描述

在这里插入图片描述
Springboot配置文件
内置属性
application.properties
企业中一般把.properties文件后缀改位.yml
如图所示:

在这里插入图片描述

HelloController
代码如下:

package com.hc.springboot01.controller;

import com.hc.springboot01.ConfigurationProperties.MysqlEntity;
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胡聪
 * @site www.hc.com
 * @company 公司
 * @create  2019-11-24 19:15
 * @RestController = @ResponseBody  + @Controller
 */
@RestController
public class HelloController {
    @Value("${user.uname}")
    private String uname;
    @Value("${user.pwd}")
    private String pwd;

    @Autowired
    private MysqlEntity mysqlEntity;


    @RequestMapping("/hello1")
    public String hello(){
        return "helloword 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 MysqlEntity hello4(){
        return mysqlEntity;
    }

}


测试连接:

http://localhost:8080/hello1
http://localhost:8080/say1?name=zs
http://localhost:8080/say2/zzzz
http://localhost:8080/json
1

自定义属性
Application.properties中配置

server:
  port: 80
  servlet:
    context-path: /

user:
  uname: zs
  pwd: 123456
  age: 22
  sex: nan
  addr: hunan

添加新的pom依赖

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

package com.hc.springboot01.configurationProperties;

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

/**
 * @author胡聪
 * @site www.hc.com
 * @company 公司
 * @create  2019-11-24 19:44
 */
@Component
@Data
@ConfigurationProperties(prefix = "user")
public class MysqlEntity {
    private  String uname;
    private  String pwd;
    private  Integer age;
    private String sex;
    private String addr;
}


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

package com.hc.springboot01.controller;

import com.hc.springboot01.configurationProperties.MysqlEntity;
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胡聪
 * @site www.hc.com
 * @company 公司
 * @create  2019-11-24 20:10
 */
@RestController
public class HelloController {
   
    @Autowired
    private MysqlEntity mysqlEntity;

    @RequestMapping("/say4")
    public MysqlEntity say4() {
        return mysqlEntity;
    }
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值