SpringBoot简介以及案例

1什么是SpringBoot

Spring Boot 是所有基于 Spring 开发的项目的起点。Spring Boot 的设计是为了让你尽可能快的跑起来 Spring 应用程序并且尽可能减少你的配置文件。简单来说就是SpringBoot其实不是什么新的框架,它默认配置了很多框架的使用方式,就像maven整合了所有的jar包,spring boot整合了所有的框架(不知道这样比喻是否合适)。

2.2、SpringBoot四个主要特性

1、SpringBoot Starter:他将常用的依赖分组进行了整合,将其合并到一个依赖中,这样就可以一次性添加到项目的Maven或Gradle构建中;

2、自动配置:SpringBoot的自动配置特性利用了Spring4对条件化配置的支持,合理地推测应用所需的bean并自动化配置他们;

3、命令行接口:(Command-line-interface, CLI):SpringBoot的CLI发挥了Groovy编程语言的优势,并结合自动配置进一步简化Spring应用的开发;

4、Actuatir:它为SpringBoot应用的所有特性构建一个小型的应用程序。但首先,我们快速了解每项特性,更好的体验他们如何简化

回顾我们之前的 SSM 项目,搭建过程还是比较繁琐的,需要:

1、配置web.xml,加载spring和spring mvc

2、配置数据库连接、配置spring事务

3、配置加载配置文件的读取,开启注解

。。。

配置完成之后部署tomcat 调试

而使用 Spring Boot 来开发项目则只需要非常少的几个配置就可以搭建起来一个 Web 项目,并且利用 IDEA 可以自动生成生成,这简直是太爽了...

华丽的分割线----------------------------------------------------------------------------------------------------

案例:

一.导入依赖

 <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>
        <dependency>
            <groupId>org.webjars</groupId>
            <artifactId>jquery</artifactId>
            <version>3.3.1</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.1.1</version>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
            <exclusions>
                <exclusion>
                    <groupId>org.junit.vintage</groupId>
                    <artifactId>junit-vintage-engine</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.38</version>
        </dependency>
        <!-- 添加freemarker模版的依赖 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-freemarker</artifactId>
        </dependency>

application.properties文件中新增freemarker配置

## Freemarker 配置
spring.freemarker.template-loader-path=classpath:/templates/
spring.freemarker.cache=false
spring.freemarker.charset=UTF-8
spring.freemarker.check-template-location=true
spring.freemarker.content-type=text/html
spring.freemarker.expose-request-attributes=false
spring.freemarker.expose-session-attributes=false
spring.freemarker.request-context-attribute=request
spring.freemarker.prefix=/
spring.freemarker.suffix=.ftl

在src/main/resource/templates文件夹中创建index01.ftl文件

创建controller层

package com.my.springboot01.controller;

import com.my.springboot01.dao.Student;
import com.my.springboot01.entity.Estapro;
import com.my.springboot01.service.EstaService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;

import java.util.*;

@Controller
@RequestMapping("/boot")
public class HellowordldController {
    @Autowired
    EstaService service;

    @RequestMapping("/hello")
    public String hello(){
        return "我是NB的SpringBoot666";
    }

    @RequestMapping("/getAll")
    @ResponseBody
    public List<Estapro> getAll(){
        return service.getAll();
    }

    /*异常处理*/
    @RequestMapping("/getTwo")
    @ResponseBody
    public String getTwo(){
        int num=5/0;
        return "异常处理";
    }

    @RequestMapping("/freeFirst")
    public String freeFirst(ModelMap map){
        map.put("name","goiaogiao包");
        return "index01";//找index01.ftl
    }

    /*返回student类型数据*/
    @RequestMapping("/getstudent")
    @ResponseBody
    public Student getstudent(){
        Student stu1=new Student(1,"脏");
        return stu1;
    }

    /*返回list集合数据*/
    @RequestMapping("/getlist")
    @ResponseBody
    public List<Student> getlist(){
        List<Student> list=new ArrayList<>();
        Student stu1=new Student(1,"鲁班");
        Student stu2=new Student(2,"曾总");
        list.add(stu1);
        list.add(stu2);
        return list;
    }

    /*返回set集合数据*/
    @RequestMapping("/getset")
    @ResponseBody
    public Set<Student> getset(){
        Set<Student> set=new HashSet<>();
        Student set1=new Student(1,"狗");
        Student set2=new Student(2,"猫");
        set.add(set1);
        set.add(set2);
        return set;
    }

    /*返回map集合数据*/
    @RequestMapping("/getmap")
    @ResponseBody
    public Map<Integer,Student> getmap(){
        Map<Integer,Student> map=new HashMap<>();
        Student map1=new Student(1,"你们");
        Student map2=new Student(2,"我们");
        map.put(1,map1);
        map.put(2,map2);
        return map;
    }
}

原文地址:https://www.cnblogs.com/mayuan01/p/12016478.html

时间: 2024-11-04 12:41:57

SpringBoot简介以及案例的相关文章

一、springBoot简介与环境搭建

前言:学习计划 1.springBoot环境搭建 2.springBoot入门 3.srpingBoot整合Mybatis 4.springBoot整合Redis,Redis集群 5.springBoot简单综合案例 一.springBoot简介 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置(约定优于配置),从而使开发人员不再需要定义样板化的配置.通过这种方式,Spring Boot致力

Unix Shell_Shell调用SQLPlus简介(案例)

2014-06-20 BaoXinjian 一.摘要 如果在Oracle EBS中开发Unix Shell,必定会涉及到在Shell中调用PLSQL,在Shell调用PLSQL一般是通过SQLPlus这个工具 关于SQLPlus需明白SQLPlus的登录方式和常用命令,具体的在另文介绍SQLPlus的用法 1. SQLPlus的登录方式 sqlplus [ [<option>] [<logon>] [<start>] ]           <option>

DNS简介及案例

DNS简介 DNS  即Domain Name System(域名系统)的缩写,它是一种将ip地址转换成对应的主机名或将主机名转换成与之相对应ip地址的一种机制.其中通过域名解析出ip地址的叫做正向解析,通过ip地址解析出域名的叫做反向解析.下面对DNS的工作流程及原理进行简要说明DNS的查询流程:需要解析服务的Client先查看本机的/etc/hosts:若无结果,则client查看本地的DNS缓存服务器:若无结果,则查找所属域的首选DNS服务器:若此时本地首选DNS服务器仍无法解析,则会想根

DBA_VMware虚拟机安装和简介(案例)

DBA_VMware虚拟机安装和简介(案例)

SpringBoot==&gt;简介

一.SpringBoot 产生背景 随着动态语言的流行(Ruby,Groovy,Scala,Node.js),Java 的开发显得格外的笨重:繁多的配置,低下的开发效率,复杂的部署流程以及第三方技术集成难度大. 在上述环境下,Spring Boot应运而生.它使用 ”习惯优于配置”(项目中存在大量的配置,此外还内置一个习惯性的配置,让你无须进行手动配置)的理念让你的项目快速运行起来.使用Spring Boot很容易创建一个独立运行(运行jar,内嵌Servlet容器),准生产级别的Spring框

SpringBoot入门及案例

一.SpringBoot 1.1:SpringBoot简介 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置. 1.2:SpringBoot特性 1. SpringBoot并不是对Spring功能上的增强,而是提供了一种快速创建独立的Spring应用程序的框架 2. 嵌入的Tomcat,无需部署WAR文件 3. 简化Maven配置 4. 自动配置Spr

SpringBoot 快速入门案例

SpringBoot是一个配置很少就能轻松搭建Web应用框架,相信学过SSH或者SSM框架的开发者都知道在该框架环境下需要配置一堆XML配置文件才能实现搭建Web应用,学习完SpringBoot后,搭建Web应用会让你有丝滑般的畅快. SpringBoot2.2.2版本快速入门环境要求 目前Spring官网官网正式发行的版本是2.2.2版本,在其官方文档列出以下环境要求,本文也是基于2.2.2版本快速搭建入门的案例,所谓工欲善其事必先利其器,生产环境得搞起来. 工具 版本 Maven 3.3+

WebChromeClient 简介 API 案例

代码位置:https://github.com/baiqiantao/WebViewTest.git 设计思想理解 在WebView的设计中,不是什么事都要WebView类干的,有相当多的杂事是分给其他类做的,这样WebView专心干好自己的解析.渲染工作就行了.比如我们最熟知的,所有针对WebView的设置都封装到了WebSettings里.我们知道,在使用WebView加载资源过程中,可能会有大量各种类型事件的回调,为了方便开发组处理这些回调,针对不同的事件回调,google将这些回调进行了

Android 编程下的TraceView 简介及其案例实战

TraceView 是 Android 平台配备一个很好的性能分析的工具.它可以通过图形化的方式让我们了解我们要跟踪的程序的性能,并且能具体到 method.详细内容参考:Profiling with Traceview and dmtracedump TraceView 简介 TraceView 是 Android 平台特有的数据采集和分析工具,它主要用于分析 Android 中应用程序的 hotspot.TraceView 本身只是一个数据分析工具,而数据的采集则需要使用 Android S