SpringBoot学习<一>——快速搭建SpringBoot
这是我的第一篇博客,博客记录我以后的学习,包括一些总结之类的东西,当然,这些记录是针对于与我个人而言的,可能有些地方会有不好的,或者出现错误,欢迎大家来指正(如果有人看的话)废话不多说。进入正题:SpringBoot
当我在学习SSM框架的时候,先不谈Spring的一些核心开年,比如DI ,IOC,AOP等等,只是刚开始它的那些配置就让我觉得很头痛,在网上看了很多配置,但是很杂,而我自己在看了这些很杂的配置后,自己慢慢总结了配置,但也花了不少时间才真正的去弄懂它,不过这已经让我这个对设计思想一无所知的菜鸟来说, 我还不如直接new一个对象呢,虽然知道这种想法是很蠢,却足以说明我对Spring这些配置的头痛了,更不要说还要去整合mybaits的配置。显然,我这种菜鸟都能考虑到这点,Pivotal公司不可能考虑不到,所以出现了一种新的东西,SpringBoot,这对于我来说,简直就是Spring,当然,SpringBoot不是一种新的技术,只是一种自动整合了很多在开发中需要的配置,让我们这种菜鸟再也不要去为这些配置去烦心了(可能仅仅只是我)。
Spring官方提供SpringBoot的Eclipse插件去开发,不过,本人因为有一次使用Spring的插件觉得麻烦,就一直不想用着东西,所以还是用Eclipse原生的东西去学习。那么,我们开始快速的搭建一个SpringBoot的demo吧
首先,先看Maven的POM文件:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.sam.springboot</groupId>
<artifactId>springboot-demo-02</artifactId>
<version>0.0.1-SNAPSHOT</version> <!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-parent -->
<!-- springboot项目的父工程包 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.4.0.RELEASE</version>
</parent>
<!-- 指定UTF-8字符集和java 1.8 的编译 -->
<properties>
<project.bulid.sourceEncoding>UTF-8</project.bulid.sourceEncoding>
<project.reproting.outputEncoding>UTF-8</project.reproting.outputEncoding>
<java.version>1.8</java.version>
</properties> <dependencies>
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-web -->
<!-- springboot 的web jar包 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency> <!-- springboot 的test jar包 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!-- springboot 的开发工具包 可选 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency> </dependencies> <build>
<plugins>
<!-- springboot的打包插件 -->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
<packaging>war</packaging>
</project>
官方建议springboot用gradle来管理jar,不过我一直用的Maven,所以就这么用吧,代码里面注释说的很清楚,我就不在解释,只是parent的这个可以还有一种方式 ,不过一般都用这种方式,另一种需要了解的可以去网上找。
然后我们建SpringBoot的程序入口
package com.sam.springboot; import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication
public class DemoApplication { public static void main(String[] args) {
SpringApplication.run(DemoApplication.class,args);
}
}
这样就可以啦 ,我们运行的时候像平常运行main方法就行啦。注意注解@SpringBootApplication,这个注解开启自动配置,有兴趣可以点进里面去看下,它集合了几个注解,还有一点值得注意的是,这个入口类的位置必须得是在其他类上面的包上,因为他会有一个扫描的注解去扫描其他包。
然后我们在建一个Controller层:
最后我们启动会出现一个SpringBoot的标志。然后看日志后面,基本就启动成功了,访问我们的路径,就OK了,tomcat是嵌入式的,默认端口为8080,容易吧!是不是感觉比以前的配置好的多,不过如果你没有学spring基础的东西,那么springboot报 了错你也会一无所知。
@RestController
@RequestMapping("/demo/")
public class DemoController { @Value(value="${sam.secret}")
private String secret; @Value(value="${sam.number}")
private Integer number; @RequestMapping()
public String demo() {
return "Hello SpringBoot!";
} @RequestMapping("name")
public Map<String, String> sayHello(@RequestParam("name") String name) {
Map<String, String> map = new HashMap<>();
map.put("name", name);
map.put("value", "Hello "+name);
map.put("secret", secret);
map.put("number", number.toString());
System.out.println(number);
return map;
}
SpringBoot学习<一>——快速搭建SpringBoot的更多相关文章
- 聊聊SpringBoot | 第一章:快速搭建SpringBoot第一个应用
快速搭建SpringBoot第一个应用 1.简介 本章仅介绍如何快速搭建第一个SpringBoot应用,细节内容下一章再做讲解,如果有需要,各位可以直接到Spring官网去了解. 从 Spring B ...
- Spring Boot 学习(一) 快速搭建SpringBoot 项目
快速搭建一个 Spring Boot 项目 部分参考于<深入实践Spring Boot>.<Spring实战 第四版>与程序猿DD的有关博客. 参考(嘟嘟独立博客):http: ...
- 快速搭建springboot框架以及整合ssm+shiro+安装Rabbitmq和Erlang、Mysql下载与配置
1.快速搭建springboot框架(在idea中): file–>new project–>Spring Initializr–>next–>然后一直下一步. 然后复制一下代 ...
- 在线官网Spring Initializr 或 IntelliJ IDEA 快速搭建springboot项目
Spring Boot是由Pivotal团队提供的全新框架,设计目的是用来简化新Spring应用的初始搭建以及开发过程.它主要推崇的是'消灭配置’,实现零配置. 那么,如何快速新建一个一个spring ...
- 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_2-2.快速搭建SpringBoot项目,采用IDEA
笔记 2.快速搭建SpringBoot项目,采用IDEA 简介:使用SpringBoot start在线生成项目基本框架并导入到IDEA中 参考资料: IDEA使用文档 ...
- 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_2-1.快速搭建SpringBoot项目,采用Eclipse
笔记 1.快速搭建SpringBoot项目,采用Eclipse 简介:使用SpringBoot start在线生成项目基本框架并导入到eclipse中 1.站点地址:http://start. ...
- 使用IDEA快速搭建Springboot项目
Spring Boot是由Pivotal团队提供的全新框架,设计目的是用来简化新Spring应用的初始搭建以及开发过程.它主要推崇的是'消灭配置’,实现零配置. 下面就介绍一下如何使用idea快速搭建 ...
- SpringBoot学习(3)-SpringBoot添加支持CORS跨域访问
SpringBoot学习(3)-SpringBoot添加支持CORS跨域访问 https://blog.csdn.net/yft_android/article/details/80307672
- springboot学习笔记:9.springboot+mybatis+通用mapper+多数据源
本文承接上一篇文章:springboot学习笔记:8. springboot+druid+mysql+mybatis+通用mapper+pagehelper+mybatis-generator+fre ...
随机推荐
- php 调用微信上传临时素材接口 {“errcode”:41005,”errmsg”:”media data missing hint”}
原因:由于PHP5.6以前与之后的版本curl_setopt有差异.PHP5.6以后不再支持”@文件路径”的方式. $picPath= "public\public\upload\xxx.p ...
- pg执行计划分析小笔记
开发同事问,为什么一个标量子查询,放在where子句后进行大小判断,比不放在where子句后进行判断大小运行的更快?按道理加了一次判断,不是应该变慢么? 把语句拿过来,看了一下两个语句的执行计划: 语 ...
- zk单点部署
一.环境准备 当前环境:centos7.3一台软件版本:zookeeper-3.5.2部署目录:/usr/local/zookeeper启动端口:2181配置文件:/usr/local/zookeep ...
- ISO/IEC 9899:2011 前言
前言 1.ISO(国际标准组织)与IEC(国际电工技术委员会)为全世界标准形成了专门的系统.作为ISO或IEC成员的国家机构,通过由各自组织所建立的技术委员会来加入国际标准的开发,以处理特定领域的技术 ...
- JAVA垃圾回收-可达性分析算法
在java中是通过引用来和对象进行关联的,也就是说如果要操作对象,必须通过引用来进行.那么很显然一个简单的办法就是通过引用计数来判断一个对象是否可以被回收.不失一般性,如果一个对象没有任何引用与之关联 ...
- 新手Docker入门
what's the Docker Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源. Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植 ...
- Java8 Stream流方法
流是Java API的新成员,它允许以声明性方式处理数据集合(通过查询语句来表达,而不是临时编写一个实现).就现在来说,可以把它们看成遍历数据集的高级迭代器.此外,流还可以透明地并行处理,无需写任何多 ...
- VS2010 C#添加水晶报表及设计
添加并设计水晶报表. [1]在VS中添加水晶报表 右击项目-->添加-->组件-->Crystal Report,输入文件名称“CrystallistReport”,如下图所示: 此 ...
- Python微服务实践-集成Consul配置中心
A litmus test for whether an app has all config correctly factored out of the code is whether the co ...
- webpack打包完成,复制,打包,移动,删除已生成的文件插件
const FileManagerPlugin = require('filemanager-webpack-plugin'); 详情请到 https://www.npmjs.com/ 一看究竟 贴个 ...