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. CLR Via C#: 类型基础

    所有类型都从System.Object派生 一下两个类型定义是完全一致的 class Employee { } class Employee : System.Object { } 由于所有类型最终都 ...

  2. transform 各种影响

    1.提升元素的z-index层级,下面这个例子会让前面的图片显示在上面,一般来说应该是后面的覆盖前面图片的 <img src="mm1" style="-ms-tr ...

  3. Servlet的理解

    一.什么是Servlet? Servlet是用Java编写的web组件,实际上可以简单的理解为是用来处理请求的,为什么这么说,看了它的生命周期就知道了. 二.常见的Servlet容器 4容器顾名思义是 ...

  4. 学习笔记TF061:分布式TensorFlow,分布式原理、最佳实践

    分布式TensorFlow由高性能gRPC库底层技术支持.Martin Abadi.Ashish Agarwal.Paul Barham论文<TensorFlow:Large-Scale Mac ...

  5. linux使用yum的方式安装mysql实践

    1.先检测是否已安装mysql ps -ef|grep mysql root : pts/ :: /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mys ...

  6. selenium-iframe操作

    iframe,又叫浮动帧标记,是内嵌的网页元素,可以将一个html文件嵌入到另一个html文件中显示. 最典型的案例就是163邮箱登录:http://mail.163.com/,被绿色覆盖的部分即为i ...

  7. Mac上查看隐藏文件夹/文件

    一.查看隐藏文件夹: 可以直接在终端执行 open ~/文件夹名称 如: open ~/.ssh 二.查看隐藏文件: 在Finder下进入你想要操作的文件夹,按快捷键Command + F 调出搜索窗 ...

  8. Java实现归并排序和快速排序

    参考http://blog.csdn.net/morewindows/article/details/6684558和http://developer.51cto.com/art/201206/344 ...

  9. 重构手法之Introduce Explaining Variable(引用解释性变量)

    返回总目录 6.5Introduce Explaining Variable(引用解释性变量) 概要 你有一个复杂的表达式. 将该复杂表达式(或其中一部分)的结果放进一个临时变量,以此变量名称来解释表 ...

  10. Files and Directories

    Files and Directories Introduction     In the previous chapter we coveredthe basic functions that pe ...