1,使用springboot开发需要以下配置:

  : Maven | Gradle | Ant | Starters

code工具:IDE | Packaged | Maven | Gradle

系统要求:java8

springboot内置包含以下几个版本的web容器: Tomcat 8.5 3.1  Jetty 9.4 3.1   Undertow 1.3 3.1

2,在开始项目前在cmd里面输入以下两个命令(如果你妹有把maven的路径加紧环境变量,那么你就要在安装目录下打开用shift+鼠标右键):

$ java -version

java version "1.8.0_102" Java(TM) SE Runtime Environment (build 1.8.0_102-b14) Java HotSpot(TM) 64-Bit Server VM (build 25.102-b14, mixed mode)

$ mvn -v

Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-10T16:41:47+00:00) Maven home: /usr/local/Cellar/maven/3.3.9/libexec Java version: 1.8.0_102, vendor: Oracle Corporation

3,首先在pom文件大开头我们需要做以下事情:

1)在parent节点添加:spring-boot-starter-parent。他的作用是提供默认的maven

<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.0.BUILD-SNAPSHOT</version>
</parent>
 2)指定web应用:spring-boot-starter-web

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
  3)下面我们来解读以下最简单例子

(1),@RestController 和 @RequestMapping 注解

@RestController :这个注解告诉人们这个是程序的开始,@Controller这个注解告诉我们这是个web

  @RequestMapping:这个注解提供路由信息,http请求的时候 /path会自动映射到他注解的类及方法上,同时@RestController能够直接把结果串返回给请求方

 @EnableAutoConfiguration:告诉springboot你要的配置,他会根据你在pom中添加的jar依赖

(2),main方法是一个应用的入口,他代表着SpringApplication,他通过执行run. SpringApplication来启动springboot项目。

    args数组是接受命令行输入的参数

4,把项目打包成jar包

  1)添加插件依赖

  <build>
    <plugins>
      <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
      </plugin>
    </plugins>
  </build>

  2)然后在你文件目录下,也就是pom统计目录下,打开cmd,然后输入 mvn clean package

结束后在target文件夹下可以看到你打的jar包。

5,一些常用的spring-boot- starter

    spring-boot-starter   核心starter,包含自动注入,日志,YAML

    spring-boot-starter-activemq  消息队列,使用 Apache ActiveMQ

    spring-boot-starter-amqp   使用Rabbit MQ(推荐)

    spring-boot-starter-aop  使用aop切面,在做接口日志,接口验证的时候常用

    spring-boot-starterdata-redis 使用redis

    spring-boot-starter-thymeleaf  使用thymeleaf做web页面

    spring-boot-starter-validation  使用validatior可以做字段的检测,判断非空,对数据质量提升有很大的帮助,可以和aop结合使用

    spring-boot-starter-web 创建web项目,包含restfull

6,springboot项目结构

    1)启动类应该放在根目录,并且最好是在其他类的上一级。@EnableAutoConfiguration这个注解经常放在主类main的上面。这样做的目的是因为springhboot启动的机制。在springboot启动的时候,会根据启动类所在的文件夹的地方,自动扫描所在文件夹及其子文件。即启动类上一级的文件是扫描不到的。

    2)这个是目录结构

Application.java是启动类。@Configuration @EnableAutoConfiguration @ComponentScan这仨个注解经常会加在启动类

@Import:这个注解能够导入额外的配置classes

@ComponentScan:能够自动扫描所有spring元素,包含@Configuration注解的类

7,spring beans和依赖注入(Dependency Injection)

@ComponentScan我们能够使用这个类去找到bean

@Autowired这个能够轻松的注入

    

希望大家能够指出错误!

springboot(一)的更多相关文章

  1. 解决 Springboot Unable to build Hibernate SessionFactory @Column命名不起作用

    问题: Springboot启动报错: Caused by: org.springframework.beans.factory.BeanCreationException: Error creati ...

  2. 【微框架】Maven +SpringBoot 集成 阿里大鱼 短信接口详解与Demo

    Maven+springboot+阿里大于短信验证服务 纠结点:Maven库没有sdk,需要解决 Maven打包找不到相关类,需要解决 ps:最近好久没有写点东西了,项目太紧,今天来一篇 一.本文简介 ...

  3. Springboot搭建web项目

    最近因为项目需要接触了springboot,然后被其快速零配置的特点惊呆了.关于springboot相关的介绍我就不赘述了,大家自行百度google. 一.pom配置 首先,建立一个maven项目,修 ...

  4. Java——搭建自己的RESTful API服务器(SpringBoot、Groovy)

    这又是一篇JavaWeb相关的博客,内容涉及: SpringBoot:微框架,提供快速构建服务的功能 SpringMVC:Struts的替代者 MyBatis:数据库操作库 Groovy:能与Java ...

  5. 解决 SpringBoot 没有主清单属性

    问题:SpringBoot打包成jar后运行提示没有主清单属性 解决:补全maven中的bulid信息 <plugin> <groupId>org.springframewor ...

  6. SpringBoot中yaml配置对象

    转载请在页首注明作者与出处 一:前言 YAML可以代替传统的xx.properties文件,但是它支持声明map,数组,list,字符串,boolean值,数值,NULL,日期,基本满足开发过程中的所 ...

  7. springboot 学习资源推荐

    springboot 是什么?对于构建生产就绪的Spring应用程序有一个看法. Spring Boot优先于配置的惯例,旨在让您尽快启动和运行.(这是springboot的官方介绍) 我们为什么要学 ...

  8. Springboot框架

    本片文章主要分享一下,Springboot框架为什么那么受欢迎以及如何搭建一个Springboot框架. 我们先了解一下Springboot是个什么东西,它是干什么用的.我是刚开始接触,查了很多资料, ...

  9. 如何在SpringBoot中使用JSP ?但强烈不推荐,果断改Themeleaf吧

    做WEB项目,一定都用过JSP这个大牌.Spring MVC里面也可以很方便的将JSP与一个View关联起来,使用还是非常方便的.当你从一个传统的Spring MVC项目转入一个Spring Boot ...

  10. 5分钟创建一个SpringBoot + Themeleaf的HelloWord应用

    第一步:用IDE创建一个普通maven工程,我用的eclipse. 第二步:修改pom.xml,加入支持SpringBoot和Themeleaf的依赖,文件内容如下: <?xml version ...

随机推荐

  1. Problem A

    Problem Description Given a sequence a[1],a[2],a[3]......a[n], your job is to calculate the max sum ...

  2. 前端的UI设计与交互之色彩篇

    一.颜色Red热情.警示 Green成功.通过.安全 Blue专业.科技 Pink典雅.明快.女性 Orange醒目.温暖 Purple高雅.浪漫 Yellow活力.提示 Cyan清新.冷静.结构化 ...

  3. BOM对象

    每一个frames都有自己的window对象,也就是每个frames都有自己的全局对象,它们之前是相互独立的,包括各自独立的本地对象,top.Object !== top.frames[0].Obje ...

  4. Boolean 相关

    Boolean(something) 会把里面的变量转化为布尔型   当我们用if(something)判断的时候,相当于调用了这个函数   转化规则如下 DATA TYPE VALUES CONVE ...

  5. JavaScript核心参考

    Array 方法 concat() 把元素衔接到数组中. every() 测试断言函数是否对每个数组元素都为真. filter() 返回满足断言函数的数组元素. forEach() 为数组的每一个元素 ...

  6. seajs笔记

    Amd和Cmd的区别有哪些? 1. 对于依赖的模块,AMD 是提前执行,CMD 是延迟执行.不过 RequireJS 从 2.0 开始,也改成可以延迟执行(根据写法不同,处理方式不同).CMD 推崇 ...

  7. cursor() — 数据库连接操作 python

    python 操作数据库,要安装一个Python和数据库交互的包MySQL-python-1.2.2.win32-py2.5.exe,然后我们就可以使用MySQLdb这个包进行数据库操作了.      ...

  8. C#编写的艺术字类方法

    代码如下: using System;using System.Collections.Generic;using System.ComponentModel;using System.Drawing ...

  9. Google Python编程规范

    http://pan.baidu.com/s/1dD1Ra7J 其他语言的编程风格: http://zh-google-styleguide.readthedocs.org/en/latest/

  10. python相关资料

    http://blog.jobbole.com/59535/ http://www.nryoung.org/blog/2013/2/28/python-threading/ http://blog.j ...