Spring Boot


  Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域成为领导者

特点:


1. 创建独立的Spring应用程序

2. 嵌入的Tomcat,无需部署WAR文件

3. 简化Maven配置

4. 自动配置Spring

5. 提供生产就绪型功能,如指标,健康检查和外部配置

6. 绝对没有代码生成和对XML没有要求配置

Web项目的搭建


搭建环境及工具:IDEA工具+JDK环境+Maven环境

第一步:先new 一个project,选择Spring Initializr,在选择右边的SDK,也就是你的JDK版本,默认会从官网下载Spring Boot模板,直接next

第二步:这是项目中的一些细节东西,大致说说其中的意思

    1. Group:对应pom.xml文件中的groupId,项目组织的唯一标识,对应Java包的结构

    2. Artifact:对应pom.xml文件的artifactId,项目唯一标识,对应项目名称

    3. Type:我们是Maven构建的,那么选择第一个Maven Project

    4. Language:开发语言,选择Java

    5. Packaging:打包类型,打包成Jar文件

    6. Java Version:JDK版本,选择1.8

    7. Version:项目版本,对应pom文件的version

    8. Name:项目名称

    9. Description:项目描述,对应pom文件的description

    10. Package:包名

大概都了解了,根据自己的需求填写,测试的话就这样默认就可以,next

第三步:这里根据自己的需求,需要什么功能添加什么,我认为这里的已经非常的齐全了,选择web,勾选web,要是想要SQL的可以点击里面有MySQL,JDBC,Mybatis等一些数据库,选择想要的直接next

第四步:也是最重要的,没啥东西就直接finsh就好


完成之后的项目结构目录:我们可以将我选中的这几个无关的文件删除,都是Maven的一些文件,没啥作用

讲解一下其中一些文件的作用

最后在这个目录下创建一个HelloController.java的类

代码:

@RestController
public class HelloController {
@RequestMapping(value = "/")
public String hello(){
return "hello";
} }

之后运行项目吧,在你的浏览器上输入:localhost:8080就可以访问到了

这里我解释一下其中注解的意思:

注解(annotations)列表

      1. @ResponseBody 
        用该注解修饰的函数,会将结果直接填充到HTTP的响应体中,一般用于构建RESTful的api;
      2. @Controller 
        用于定义控制器类,在spring 项目中由控制器负责将用户发来的URL请求转发到对应的服务接口(service层)。
      3. @RestController 
        @ResponseBody和@Controller的合集
      4. @RequestMapping 
        提供路由信息,负责URL到Controller中的具体函数的映射。
      5. @EnableAutoConfiguration 
        Spring Boot自动配置(auto-configuration):尝试根据你添加的jar依赖自动配置你的Spring应用。例如,如果你的classpath下存在HSQLDB,并且你没有手动配置任何数据库连接beans,那么我们将自动配置一个内存型(in-memory)数据库”。你可以将@EnableAutoConfiguration或者@SpringBootApplication注解添加到一个@Configuration类上来选择自动配置。如果发现应用了你不想要的特定自动配置类,你可以使用@EnableAutoConfiguration注解的排除属性来禁用它们。例子代码如下:
      6. @ComponentScan 
        表示将该类自动发现(扫描)并注册为Bean,可以自动收集所有的Spring组件,包括@Configuration类。我们经常使用@ComponentScan注解搜索beans,并结合@Autowired注解导入。
      7. @Configuration 
        相当于传统的xml配置文件,如果有些第三方库需要用到xml文件,建议仍然通过@Configuration类作为项目的配置主类——可以使用@ImportResource注解加载xml配置文件。
      8. @SpringBootApplication 
        相当于@EnableAutoConfiguration、@ComponentScan和@Configuration的合集。
      9. @Import 
        用来导入其他配置类。
      10. @ImportResource 
        用来加载xml配置文件。
      11. @Autowired 
        自动导入依赖的bean
      12. @Service 
        一般用于修饰service层的组件
      13. @Repository 
        使用@Repository注解可以确保DAO或者repositories提供异常转译,这个注解修饰的DAO或者repositories类会被ComponetScan发现并配置,同时也不需要为它们提供XML配置项。

【版本声明】本文为博主原创文章,转载请注明出处

Spring Boot-------项目搭建及注解的更多相关文章

  1. [读书笔记] 一、Spring boot项目搭建与配置文件

    读书笔记:[JavaEE开发的颠覆者 Spring Boot实战] 作者:汪云飞 从今天开始坚持读书,并记录下此读书笔记. 一,初接触 Spring boot 项目Hello world搭建 1.po ...

  2. Spring boot项目搭建及简单实例

    Spring boot项目搭建 Spring Boot 概述 Build Anything with Spring Boot:Spring Boot is the starting point for ...

  3. Spring Boot项目搭建

    1.Spring Boot概述 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人 ...

  4. spring boot项目搭建中遇到的问题

    自己动手搭建一下spring boot的项目,中途遇到了几个问题,在这里记录一下! 一.关于数据库中的表设计的问题 1.设计表的时候一定要添加的两个字段created updated 创建时间与更新时 ...

  5. Spring Boot 项目中常见注解

    @Autowired 自动导入依赖的 Bean.byType方式.把配置好的 Bean拿来用,完成属性.方法的组装,它可以对类成员变量.方法及构造函数进行标注,完成自动装配的工作 import org ...

  6. spring boot 项目搭建时,各个依赖的作用

    项目搭建页面 https://start.spring.io/ 各个依赖的作用 List of dependencies for Spring Boot 2.1.5.RELEASE Core DevT ...

  7. spring boot项目mybatis配置注解+配置文件

    maven依赖 <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-ja ...

  8. [七月挑选]使用idea创建spring boot 项目

    title: 使用idea创建spring boot 项目 参考lindaZ的IntelliJ IDEA 创建spring boot 的Hello World 项目 1.Open IDEA,choos ...

  9. spring boot 项目连接数据库查询数据过程

    spring boot 项目搭建 pom.xml <?xml version="1.0" encoding="UTF-8"?> <projec ...

  10. 快速搭建Spring Boot项目

    Spring boot是Spring推出的一个轻量化web框架,主要解决了Spring对于小型项目饱受诟病的配置和开发速度问题. Spring Boot 包含的特性如下: 创建可以独立运行的 Spri ...

随机推荐

  1. 那些年,用C#调用过的外部Dll

    经常有人找到我咨询以前在csdn资源里分享的dll调用.算算也写过N多接口程序.翻一翻试试写篇随笔. 明华IC读写器DLL 爱迪尔门锁接口DLL 通用OPOS指令打印之北洋pos打印机dll 明泰非接 ...

  2. 设计模式笔记——GoF设计模式汇总

    目录 · 总述 · 记忆 · 效果 · 面向对象设计原则 · 创建型模式 · 单例模式(Singleton) · 效果 · 分类 · 代码(饿汉式) · 代码(懒汉式) · 代码(双重检测锁式) ·  ...

  3. public static void main(string[] args)解释

    这个问题困扰我好久了,今天就一查究竟,毕竟我好奇心比较重 1. why “public” 因为Java程序是通过jvm虚拟机调用的,所以main()函数要是想被调用,必须是public 2.why “ ...

  4. Linq to Objects for Java 发布 1.0.1 版本

    现在 java 支持 linq 啦.比原生 stream api 更好用,功能更强大.现已发布 version 1.0.1 地址: https://github.com/timandy/linq. A ...

  5. 【NO.12-2】jmeter-执行脚本

    //拿jmeter举例 //要进入到jmeter工具的bin目录 //当使用其它的开源测试工具的时候,也可以参考上面这一点,即:进入到bin目录 //如果工具本身不包含bin文件,那么在工具的1级目录 ...

  6. python——变量

    参考资料: Python程序设计与实现 变量名的命名规则 仅仅由大.小写英文字母,下划线(_),数字(不可作为变量名的开头)组合而成: 不能使用Python关键字和函数名作为变量名: 变量名不能包含空 ...

  7. mysql-函数CASE WHEN 统计多个字段

    case when语句,用于计算条件列表并返回多个可能结果表达式之一.CASE 具有两种格式:1.简单 case 函数: case input_expression when when_express ...

  8. Oozie调用Spark实例

    oozie调用spark有三样是必须有的: workflow.xml(不可改名) , job.properties(可改名) , jar包(自备). 1.workflow.xml workflow.x ...

  9. Andrew Ng机器学习课程笔记--week9(下)(推荐系统&协同过滤)

    本周内容较多,故分为上下两篇文章. 本文为下篇. 一.内容概要 1. Anomaly Detection Density Estimation Problem Motivation Gaussian ...

  10. 基于ExtJs6前台,SpringMVC-Spring-Mybatis,resteasy,mysql无限极表设计,实现树状展示数据(treepanel)

    先从后台讲起 1.表的设计 parent_id就是另外一条记录的id,无限极表设计可以参考  http://m.blog.csdn.net/Rookie_Or_Veteran/article/deta ...