zoukankan      html  css  js  c++  java
  • 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 xyls
     * @blog name & blog address 027@0030
     * @create  2019-11-24 14:57
     */
    @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配置文件

    内置属性

    自定义属性

    Application.properties中配置

     注意:

     user前面不能有空格,否则报错

    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 xyls
     * @blog name & blog address 027@0030
     * @create  2019-11-24 14:57
     */
    @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 xyls
     * @blog name & blog address 027@0030
     * @create  2019-11-24 15:57
     */
    @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 xyls
     * @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;
        }
    }
    

      

  • 相关阅读:
    UVA 10600 ACM Contest and Blackout(次小生成树)
    UVA 10369
    UVA Live 6437 Power Plant 最小生成树
    UVA 1151 Buy or Build MST(最小生成树)
    UVA 1395 Slim Span 最小生成树
    POJ 1679 The Unique MST 次小生成树
    POJ 1789 Truck History 最小生成树
    POJ 1258 Agri-Net 最小生成树
    ubuntu 用法
    ubuntu 搭建ftp服务器,可以通过浏览器访问,filezilla上传文件等功能
  • 原文地址:https://www.cnblogs.com/omji0030/p/11924667.html
Copyright © 2011-2022 走看看