发表于: 2017-11-04 23:19:53

1 700


今天完成的任务


继续准备小课堂


一、背景介绍
1、什么是微服务
微服务是一种架构风格,一个大型复杂软件应用由一个或多个微服务组成。系统中的各个微服务可被独立部署,各个微服务之间是松耦合的。每个微服务仅关注于完成一件任务并很好地完成该任务。在所有情况下,每个任务代表着一个小的业务能力。
2、spring boot是什么
Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。用我的话来理解,就是spring boot其实不是什么新的框架,它默认配置了很多框架的使用方式,就像maven整合了所有的jar包,spring boot整合了所有的框架
3、spring boot的作用
其实就是简单、快速、方便!平时如果我们需要搭建一个spring web项目的时候需要怎么做呢?
1)配置web.xml,加载spring和spring mvc
2)配置数据库连接、配置spring事务
3)配置加载配置文件的读取,开启注解
4)配置日志文件
...
配置完成之后部署tomcat 调试
...
现在非常流行微服务,如果我这个项目仅仅只是需要发送一个邮件,如果我的项目仅仅是生产一个积分;我都需要这样折腾一遍!
但是如果使用spring boot呢?

很简单,我仅仅只需要非常少的几个配置就可以迅速方便的搭建起来一套web项目或者是构建一个微服务!


二、知识剖析
(一)快速搭建一个spring boot项目
1、访问http://start.spring.io/
2、选择构建工具Maven Project、Spring Boot版本1.3.6以及一些工程基本信息,点击“Switch to the full version.”java版本选择1.7,可参考下图所示:
3、点击Generate Project下载项目压缩包

4、解压后,使用IDEA,Import -> Existing Maven Projects -> Next ->选择解压后的文件夹-> Finsh,一个spring boot项目就搭建好了。


(二)引入web模块
1、pom.xml中添加支持web的模块:
<dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
</dependency>

pom.xml文件中默认有两个模块:

spring-boot-starter:核心模块,包括自动配置支持、日志和YAML;

spring-boot-starter-test:测试模块,包括JUnit、Hamcrest、Mockito。



2、编写controller内容
@RestController
public class HelloWorldController {
    @RequestMapping("/hello")
    public String index() {
        return "Hello World";
    }
}

@RestController的意思就是controller里面的方法都以json格式输出,不用再写什么jackjson配置的了!
3、启动主程序,打开浏览器访问http://localhost:8080/hello,就可以看到效果了,有木有很简单!


三、常见问题

spring boot启动原理是什么?


四、解决方案

解释spring boot启动原理(查看源码,画思维导图)


五、代码实战

使用spring boot编写web应用,进行访问数据库


遇到的问题

准备小课堂的时候,容易被微服务、微框架的相关内容吸引...好处是懂得多,坏处是花费大量时间却对小课堂实际讲解内容没有太大帮助...尴尬


收获

如果说昨天的demo是揭开了spring boot的盖头,今天已经把spring boot的头盖骨给掀开了一些,知道spring boot的启动原理


明天的计划

1、继续准备小课堂

2、下午去鹅长参观


进度
编写后台接口文档



返回列表 返回列表
评论

    分享到