springboot:快速构建一个springboot项目
前言:
springcloud是新一代的微服务框架而springboot作为springcloud的基础,花些时间来学习作为技术储备还是很有必要的,所以就有了这个springboot系列
springboot能做什么
springboot 致力于简洁,让开发者写更少的配置,程序能够更快的运行和启动。
Springboot 设计原则就是 约定优于配置。并且内嵌了Servlet容器。
springboot 采用的是Java Config的方式,对Spring进行配置,避免了XML配置以及复杂的依赖管理,使用springboot可以帮助开发者快速搭建一个Spring框架。
须知:本springboot系列所有项目均使用maven构建,如果不了解,可以先去学习一下
项目源码均在github/码云上
springboot版本:v1.5.6.RELEASE
jdk版本:1.8
快速构建一个springboot项目
构建一个支持web模块的springboot项目只需要以下三个步骤:
1. pom.xml引入springboot的依赖支持
2. 写一个项目启动类
3. 写一个项目配置文件(这步也可以不用有)
项目结构分析
src/main/java 下的程序启动入口:Application
src/main/resources下的配置文件:application.properties
话不多说,实战
步骤1:
新建一个maven项目,在pom.xml中引入springboot相关依赖的支持
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
spring-boot-starter 模板:核心模块,包括自动配置支持、日志和YAML
spring-boot-starter-web 模块:web模块
步骤2:
新建一个项目启动类:Application
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
@SpringBootApplication = @Configuration + @EnableAutoConfiguration + @ComponentScan
@Configuration的注解类标识这个类可以使用Spring IoC容器作为bean定义的来源。@Bean注解告诉Spring,一个带有@Bean的注解方法将返回一个对象,该对象应该被注册为在Spring应用程序上下文中的bean。
@EnableAutoConfiguration:能够自动配置spring的上下文,试图猜测和配置你想要的bean类,通常会自动根据你的类路径和你的bean定义自动配置。
@ComponentScan:会自动扫描指定包下的全部标有@Component的类,并注册成bean,当然包括@Component下的子注解@Service,@Repository,@Controller。
到这里,一个简单的springboot就建成了
运行项目启动类:Application,查看控制台,发现以下输出
Tomcat started on port(s): 8080 (http),就说tomcat已经成功启动,默认端口是8080
等等,上面不是说需要三个步骤才可以吗?
其实上面说的第三个步骤并不是必须的,但是如果你想要进行一些自定义的配置,就需要第三步了
步骤3:
在/resources下,新建application.properties
spring.application.name=my-springboot-learn
server.port=9001
spring.application.name :项目服务的名称
server.port:启动端口
把启动端口改为9001之后重新启动项目,访问http://localhost:9001/
可以看到项目已经启动了,显示的是springboot默认的错误页面,可以看到产生错误的原因类型是Not Found,状态码是404
接下来模拟一个web请求
新建一个/com.my.controller目录
在新建个类:LoginController
@RestController
public class LoginController {
@GetMapping("/sayHello")
public String login(){
return "hello xiaonuo";
}
}
@RestController注解 等价于 @Controller+@ResponseBody 将返回值已json形式返回
重启一下项目再次访问:http://localhost:9001/sayHello
可以看到页面输出了hello xiaonuo
到这一个springboot的web项目就构建完成了。通过一个sayHello模拟了一个web请求
未完待续 》》》》
去码云 :https://gitee.com/cmy1996/springboot
去github :https://github.com/mingyuHub/springboot
关注公众号,不定期推送优质文章
springboot:快速构建一个springboot项目的更多相关文章
- 快速构建一个 Springboot
快速构建一个 Springboot 官网:http://projects.spring.io/spring-boot/ Spring Boot可以轻松创建可以“运行”的独立的,生产级的基于Spring ...
- 快速构建一个vue项目
首先介绍一下命令行构建一个vue项目步骤: 1.下载安装node.js(直接运行安装包根据步骤安装完),打开命令行输入:node -v ,出现版本号即安装成功. 2.命令行界面输入:cnpm inst ...
- 【springBoot】之快速构建一个web项目
基于maven,首先看pom文件 <parent> <groupId>org.springframework.boot</groupId> <artifact ...
- 快速构建一个springboot项目(一)
前言: springcloud是新一代的微服务框架而springboot作为springcloud的基础,很有必要对springboot深入学习一下. springboot能做什么? (1)spri ...
- [开源]快速构建一个WebApi项目
项目代码:MasterChief.DotNet.ProjectTemplate.WebApi 示例代码:https://github.com/YanZhiwei/MasterChief.Project ...
- 快速构建一个简单的单页vue应用
技术栈 vue-cli webpack vux,vux-loader less,less-loader vue-jsonp vue-scroller ES6 vue-cli:一个vue脚手架工具,利用 ...
- 如何使用IDEA快速创建一个springboot项目
如何使用IDEA快速创建一个springboot项目 https://jingyan.baidu.com/article/0964eca24fdd938284f53640.html
- SpringBoot 快速构建微服务体系 知识点总结
可以通过http://start.spring.io/构建一个SpringBoot的脚手架项目 一.微服务 1.SpringBoot是一个可使用Java构建微服务的微框架. 2.微服务就是要倡导大家尽 ...
- SpringBoot2.x入门:快速创建一个SpringBoot应用
前提 这篇文章是<SpringBoot2.x入门>专辑的第2篇文章,使用的SpringBoot版本为2.3.1.RELEASE,JDK版本为1.8. 常规的套路会建议使用Spring官方提 ...
随机推荐
- java之自动过滤提交文本中的html代码script代码
public class test { public static String Html2Text(String inputString) { String htmlStr = inputStrin ...
- Another option for file sharing(转)
原文地址 https://security.googleblog.com/2017/02/another-option-for-file-sharing.html Another option fo ...
- sourcetree跳过注册的方法
当前只有Win的版本,Mac自行百度(笑) 很多人用git命令行不熟练,那么可以尝试使用sourcetree进行操作. 然鹅~~sourcetree又一个比较严肃的问题就是,很多人不会跳过注册或者操作 ...
- angularjs 字段排序 多字段排序
我们用angularjs {{}},ng-model循环绑定数组或对象的内容的时候,有时候会用到排序,有时候可能会有多个字段排序 具体要用到过滤 数据的展现,可以通过ng-repeat实现.当网页解析 ...
- C# winFrom窗体设计问题-部分文件打不开窗体设计器 变成类.cs
https://zhidao.baidu.com/question/1513483178103163220.html C# winform程序设计的时候,出现了问题.默认主窗体form1(改名form ...
- Mac下安装pymssql
需要先安装freetds 先用 brew list 查看已经安装的包 如果已经安装freetds,则使用 brew uninstall freetds先卸载 brew unlink freetds b ...
- Mock拦截请求URL返回模板数据
背景 : 前后端开发依赖后端数据, 当前端页面开发完成 ,后端在没有提供前端数据的情况下 ,前端无法测试, 导致开发效率低 ,速度慢 ,为了解决这一问题 ,通过Mock模拟生成数据在不改变原有代码前提 ...
- Anaconda使用
转自PeterYuan 序 Python易用,但用好却不易,其中比较头疼的就是包管理和Python不同版本的问题,特别是当你使用Windows的时候.为了解决这些问题,有不少发行版的Python, ...
- servlet里获得jsp页面里select的选项之值
<span style="font-size:24px;"><select name=first> <option value="1&quo ...
- 在ASP.NET Core 2.0中使用CookieAuthentication
在ASP.NET Core中关于Security有两个容易混淆的概念一个是Authentication(认证),一个是Authorization(授权).而前者是确定用户是谁的过程,后者是围绕着他们允 ...