SpringBoot 第一篇入门
一,第一步创建Maven工程,步骤如下
二,pom文件添加SpringBoot 依赖,我们第一次实例演示web 所以一并添加web starter:
<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.springboot.webdemo</groupId><artifactId>FirstDemo</artifactId><version>0.0.1-SNAPSHOT</version><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>1.5.13.RELEASE</version><relativePath /></parent><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><java.version>1.8</java.version></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency></dependencies>
</project>
3,主要文件内容:
创建启动类SpringbootApplication:
package com.springboot;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
public class SpringbootApplication {public static void main(String[] args){SpringApplication.run(SpringbootApplication.class, args);}
}
创建Controller 类:
package com.springboot.controller;import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
public class FirstController {@GetMapping("/helloWord")public String helloWord(){return "hello Word";}
}
在jsrc/mian/resource下创建SpringBoot配置文件application.properties
server.port=8080
项目目录结构:
├─src
│ │
│ ├─main
│ │ ├─java
│ │ │ └─com
│ │ │ └─springboot
│ │ │ │ SpringbootApplication.java
│ │ │ │
│ │ │ └─controller
│ │ │ FirstController.java
│ │ │
│ │ └─resources
│ │ application.properties
│ │
│ └─test
│ ├─java
│ └─resources
├─ pom.xml
4,启动SpringBoot 容器
在启动类文件上右键-》run as => java application
打印日志如下:
. ____ _ __ _ _/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \\\/ ___)| |_)| | | | | || (_| | ) ) ) )' |____| .__|_| |_|_| |_\__, | / / / /=========|_|==============|___/=/_/_/_/:: Spring Boot :: (v1.5.6.RELEASE)2018-05-22 22:07:57.992 INFO 84724 --- [ main] c.x.springboot.SpringbootApplication : Starting SpringbootApplication on lenovo-PC with PID 84724 (F:\asiainfo\projectName\target\classes started by lenovo in F:\asiainfo\projectName)
2018-05-22 22:07:57.997 INFO 84724 --- [ main] c.x.springboot.SpringbootApplication : No active profile set, falling back to default profiles: default
2018-05-22 22:07:58.074 INFO 84724 --- [ main] ationConfigEmbeddedWebApplicationContext : Refreshing org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@3439f68d: startup date [Tue May 22 22:07:58 CST 2018]; root of context hierarchy
2018-05-22 22:08:00.011 INFO 84724 --- [ main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat initialized with port(s): 9090 (http)
2018-05-22 22:08:00.022 INFO 84724 --- [ main] o.apache.catalina.core.StandardService : Starting service [Tomcat]
2018-05-22 22:08:00.023 INFO 84724 --- [ main] org.apache.catalina.core.StandardEngine : Starting Servlet Engine: Apache Tomcat/8.5.16
2018-05-22 22:08:00.144 INFO 84724 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2018-05-22 22:08:00.144 INFO 84724 --- [ost-startStop-1] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 2077 ms
2018-05-22 22:08:00.325 INFO 84724 --- [ost-startStop-1] o.s.b.w.servlet.ServletRegistrationBean : Mapping servlet: 'dispatcherServlet' to [/]
2018-05-22 22:08:00.331 INFO 84724 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'characterEncodingFilter' to: [/*]
2018-05-22 22:08:00.332 INFO 84724 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'hiddenHttpMethodFilter' to: [/*]
2018-05-22 22:08:00.332 INFO 84724 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'httpPutFormContentFilter' to: [/*]
2018-05-22 22:08:00.332 INFO 84724 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'requestContextFilter' to: [/*]
2018-05-22 22:08:00.716 INFO 84724 --- [ main] s.w.s.m.m.a.RequestMappingHandlerAdapter : Looking for @ControllerAdvice: org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@3439f68d: startup date [Tue May 22 22:07:58 CST 2018]; root of context hierarchy
2018-05-22 22:08:00.806 INFO 84724 --- [ main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/helloWord],methods=[GET]}" onto public java.lang.String com.xiaohui.springboot.controller.TestController.helloWord()
2018-05-22 22:08:00.810 INFO 84724 --- [ main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error]}" onto public org.springframework.http.ResponseEntity<java.util.Map<java.lang.String, java.lang.Object>> org.springframework.boot.autoconfigure.web.BasicErrorController.error(javax.servlet.http.HttpServletRequest)
2018-05-22 22:08:00.810 INFO 84724 --- [ main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error],produces=[text/html]}" onto public org.springframework.web.servlet.ModelAndView org.springframework.boot.autoconfigure.web.BasicErrorController.errorHtml(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)
2018-05-22 22:08:00.847 INFO 84724 --- [ main] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapped URL path [/webjars/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2018-05-22 22:08:00.847 INFO 84724 --- [ main] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapped URL path [/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2018-05-22 22:08:00.898 INFO 84724 --- [ main] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapped URL path [/**/favicon.ico] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2018-05-22 22:08:01.099 INFO 84724 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Registering beans for JMX exposure on startup
2018-05-22 22:08:01.209 INFO 84724 --- [ main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 9090 (http)
2018-05-22 22:08:01.215 INFO 84724 --- [ main] c.x.springboot.SpringbootApplication : Started SpringbootApplication in 3.6 seconds (JVM running for 3.972)
2018-05-22 22:08:10.834 INFO 84724 --- [nio-9090-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring FrameworkServlet 'dispatcherServlet'
2018-05-22 22:08:10.835 INFO 84724 --- [nio-9090-exec-1] o.s.web.servlet.DispatcherServlet : FrameworkServlet 'dispatcherServlet': initialization started
2018-05-22 22:08:10.858 INFO 84724 --- [nio-9090-exec-1] o.s.web.servlet.DispatcherServlet : FrameworkServlet 'dispatcherServlet': initialization completed in 23 ms
5,访问请求:http://127.0.0.1:8080/helloWorld
结果如图:
6,遇到的问题:
在启动的过程中有可能启动失败提示:Unable to start embedded container; nested exception is java.lang.NoSuchMethodError: org.apache.tomcat.util.scan.StandardJarScanner.setJarScanFilter
问题有可能为springBoot 与 tomcat容器中jar包冲突。移除掉tomcat的jar包就可以参考:链接
SpringBoot 第一篇入门相关推荐
- 第一篇 入门必备 (Android学习笔记)
第一篇 入门必备 第1章 初识Android 第2章 搭建你的开发环境 第3章 创建第一个程序--HelloWorld 第4章 使用Android工具 ●Android之父 Android安迪·罗宾( ...
- 【SQLAlchemy】第一篇——入门
1.背景 许多年以前,在我刚接触数据科学和数据库的时候,经常需要从MySQL中获取数据进行计算.一开始采用的方法是使用pymysql执行SQL语句,然后将返回的结果处理成pandas的DataFram ...
- SpringBoot第一篇:了解SpringBoot
1. 了解SpringBoot 1.1 什么是SpringBoot SpringBoot是Spring项目中的一个子工程,与我们熟知的Spring-Frameword同属于Spring的产品: 我们可 ...
- 语音合成第一篇-入门
定义 文本转语音,又称语音合成(Speech Sysnthesis),指的是将一段文本按照一定需求转化成对应的音频,这种特性决定了的输出数据比输入长得多.文本转语音是一项包含了语义学.声学.数字信号处 ...
- elasticsearch 第一篇(入门篇)
介绍 elasticsearch是一个高效的.可扩展的全文搜索引擎 基本概念 Near Realtime(NRT): es是一个接近实时查询平台,意味从存储一条数据到可以索引到数据时差很小,通常在1s ...
- kaggle新手入门第一篇——Titanic
Titanic作为Kaggle官方网站的第一篇入门比赛,如果你想学习kaggle,那么从它开始无疑是比较好的一个选择. 首先贴一下网址:https://www.kaggle.com/c/titanic ...
- Electron系列教程——第一篇:入门
Electron系列教程--第一篇:入门 一.楔子 想要学习Electron,跟着官网或者中文网,仔细阅读,并实践,其实是够了,不必要重复.那为什么还要写这个系列呢?大概有两方面原因,其一:我使用el ...
- 2021-05-08 小华子第一篇
***小华子入门第一篇*** 开门第一篇 入门欢迎仪式 赶紧来一个掌声啥的 自我介绍 大家好,我先自我介绍一下,我叫顾小华(不要寻思,肯定不是真名),现在在某一所本科院校读大三,从今天开始我要写一些e ...
- springboot springcloud区别_SpringCloud微服务全家桶-第一篇!为什么要用微服务
从今天开始,学习SpringCloud微服务全家桶. 一.引导 1.什么是微服务? 2.微服务之间是如何独立通讯的 3.springCloud和Dubbo有哪些区别? 4.什么是服务熔断?什么是服务降 ...
最新文章
- LINUX系统常用操作
- java 文件 剪切_总结java中文件拷贝剪切的5种方式-JAVA IO基础总结第五篇
- Python爬取猪肉价格网并获取Json数据
- 介绍针对企业级Flex开发的开源项目FlexibleShare
- qt中生成并读取配置文件Ini
- 【ElasticSearch】Es 源码之 Discovery DiscoveryModule ZenDiscovery 源码解读
- csdn插件下载和应用
- 2019年中秋读者福利,你中奖了吗??
- BIOS之内存控制器设置以及内存电路接口分析
- 向量的方向余弦公式_方向余弦矩阵(DCM)简介
- 自然语言处理实战:新闻文本分类(附代码)
- 谷歌浏览器不能用_正在用 Chrome 或 Edge 浏览器的你,不能错过这亿个好用插件...
- 2014年9月-前端开发月刊
- 基于Java EE的网上书店系统
- 脱了裤子放屁之std::string
- matlab cell 颜色,MATLAB 的 cell 大法(单元格数组)
- Synaptic Systems NeuN抗体的应用和参考文献
- 燕山大学教务系统官网计算机学院,燕山大学教务系统登录入口:https://jwc.ysu.edu.cn/...
- TOJ 4074 Running Laps -- 树状数组
- H3C交换机密码加密解密