Spring Boot 入门篇---概念与hello word

Spring Boot是什么?

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

Spring Boot特点

  • 创建独立的Spring应用程序
  • 嵌入的Tomcat,无需部署WAR文件
  • 简化Maven配置
  • 自动配置Spring
  • 提供生产就绪型功能,如指标,健康检查和外部配置
  • 绝对没有代码生成和对XML没有要求配置

总体来说,就是编码变得简单、配置变得简单、部署变得简单、监控变得简单。而“简单就是科学的根本”。

Spring Boot好处

之前,我们新建一个spring web项目的时候,总是配置web.xml,引入各种各样的依赖包,如果是springMVC,还要配置spring和springMVC的xml配置文件,同时还需要配置数据库的基本信息、事物、日志、监控、拦截器、注解、编码、view等等等等,还要配置tomcat的集成,部署,启动,调试.....

总之,最后调试成功后,我只能用一张图来形容其繁琐的步骤,如下:

但是使用spring boot后,你的想法想必会有所改变,用下图来表达:

Spring Boot入门

开发工具

  • myeclipse
  • jdk1.7

入门程序--hello word

1:新建maven project

2:打开pom.xml文件,配置spingboot的依赖包

<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.6.RELEASE</version> </parent> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <version>1.5.6.RELEASE</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.30</version> </dependency> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.2.1</version> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin </artifactId> </plugin> </plugins> </build>

3:添加属性配置文件application.properties

--配置项目访问路径server.contextPath=/springboot --配置项目访问端口server.port=9090 --配置数据库驱动spring.datasource.driver-class-name=com.mysql.jdbc.Driver --配置数据库连接spring.datasource.url=jdbc:mysql://localhost:3306/test?useSSL=false&useUnicode=true&characterEncoding=UTF-8--数据库用户名spring.datasource.username=root--数据库密码spring.datasource.password=123456

4:新建controller类:IndexController.java

@RestControllerpublic class IndexController { @RequestMapping(value = "/index.htm") public String index(){ return "hello java"; }}

5:新建启动类MainServer.java试

@ComponentScan(basePackages={"com.xdl.controller","com.xdl.service"})@MapperScan(basePackages={"com.xdl.dao"})@EnableAutoConfigurationpublic class MainServer extends WebMvcConfigurerAdapter { @Override public void configureContentNegotiation(ContentNegotiationConfigurer configurer) { configurer.favorPathExtension(false); } public static void main(String[] args) { SpringApplication.run(MainServer.class, args); }}

6:启动测试

测试结果:

总结

以上示例很简单,也是spring boot的入门篇示例,后续我们再总结其集成其它开源技术和数据库。

“光看不练、不如扯淡”,动手操作下吧。

原文发布于微信公众号 - 码神联盟(lkchatspace)

原文发表时间:2017-08-08

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏开发技术

spring-boot-2.0.3不一样系列之国际化

       针对spring boot,网上已有很多优质的系列教程,我就不再班门弄斧了(实际上是担心没别人写的好,哈哈哈!)。但是还是想蹭蹭spring bo...

4123
来自专栏向治洪

XMPP客户端库Smack 4.0.6版开发之二

XMPP客户端库Smack 4.0.6版开发之二 三、Smack库的特征 1、极度简单易用,API功能强大 发送一条文本消息给某个用户只需几行代码: Abst...

2185
来自专栏恰同学骚年

.NET Core微服务之基于Steeltoe使用Eureka实现服务注册与发现

  Steeltoe的官方地址:http://steeltoe.io/,其官方介绍如下:

2715
来自专栏流柯技术学院

linux下安装rzsz

wget http://freeware.sgi.com/source/rzsz/rzsz-3.48.tar.gz

3921
来自专栏JadePeng的技术博客

jenkins X实践系列(2) —— 基于jx的DevOps实践

jx是云原生CICD,devops的一个最佳实践之一,目前在快速的发展成熟中。最近调研了JX,这里为第2篇,使用已经安装好的jx来实践CICD,旨在让大家了解基...

4822
来自专栏SpringBoot 核心技术

第三十二章:如何获取SpringBoot项目的applicationContext对象

24211
来自专栏Ryan Miao

SpringCloud2.0入门3-新的eureka依赖

Springboot2.0推出有一段时间了,是要学习1.5+还是从2.0开始?犹豫的原因是资料不全,目前现有的资料大部分是1.0的。但作为学习者,肯定要学习最新...

1181
来自专栏为数不多的Android技巧

Binder学习指南

毫不夸张地说,Binder是Android系统中最重要的特性之一;正如其名“粘合剂”所喻,它是系统间各个组件的桥梁,Android系统的开放式设计也很大程度上得...

2401
来自专栏菩提树下的杨过

Spring Security笔记:Hello World

本文演示了Spring Security的最最基本用法,二个页面(或理解成二个url),一个需要登录认证后才能访问(比如:../admin/),一个可匿名访问(...

1998
来自专栏一个会写诗的程序员的博客

《Spring Boot极简教程》第8章 Spring Boot集成Groovy,Grails开发第8章 Spring Boot集成Groovy,Grails开发小结参考资料

本章介绍Spring Boot集成Groovy,Grails开发。我们将开发一个极简版的pms(项目管理系统)。

1462

扫码关注云+社区

领取腾讯云代金券