使用Spring Boot写一个HelloWorld程序

案例:浏览器发送一个hello请求,服务器接受并处理响应一个hello world字符串

1、使用idea的springboot initialization创建一个新工程

步骤如下:
file->new->Project

next

next

先看pom.xml

可以看到工程中有maven的pom文件,也自动创建了SpringbootStartApplication.java该类为springboot的启动类,待会儿我们一起看下这个类,先看下maven的pom文件有哪些。这里主要是依赖了springboot的1.4.7版本,目前最新已经更新到1.5.6了,这里没有用最新版本,还是不当小白鼠了,在dependency中依赖了spring-boot-starter-web还有个test测试的组件,如果不写测试代码,可以不使用该test组件,最后还加入了支持springboot的maven plugin组件。

 <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.1.6.RELEASE</version><relativePath/> <!-- lookup parent from repository --></parent><properties><java.version>1.8</java.version></properties><dependencies><!--spring-boot-starter web:可以看做场景启动器,帮助我们导入web模块正常运行所依赖的组件Spring Boot将所有的功能场景都抽取出来,做成一个个的Starters(启动器),只需要在项目里面引入这些Starters相关的场景所有依赖即可--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><!--这个插件就是把该应用打包成一个可以执行的jar包,简化部署--><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build>

启动类Application.java

配置好了pom后,我们一起看下自动生成的Application.java这个类相当于我们程序的main函数入口,这里再顺便介绍下因为springboot集成了Tomcat和Jetty,默认使用Tomcat作为应用容器,开发者只需要将工程打成jar包直接丢到服务器上就可以执行了,不需要再单独部署到was、jboss、tomcat这些应用服务器上。

/*** @SpringBootApplication:标注一个主程序类,说明这是一个SpringBoot应用程序*/
@SpringBootApplication
public class HelloWorldMainApplication {public static void main(String[] args) {/*** 该方法使spring启动起来*/SpringApplication.run(HelloWorldMainApplication.class,args);}
}

所有的springboot application启动类都需要在类级别上加上@SpringBootApplication注解,其他参数不用任何调整,后续可以把一些初始化的动作放到该类中进行,目前本例中就不加其他的启动加载项了。

2、新建一个Controller

@Controller
public class HelloWorld {@ResponseBody@RequestMapping("/hello")public String hello(){return "HelloWorld你好世界";}
}

启动application:

不需要手动打包再发布到tomcat

3、在浏览器访问

03.SpringBoot入门案例及详解相关推荐

  1. SpringBoot入门教程(一)详解intellij idea搭建SpringBoot

    最近公司有一个内部比赛(黑客马拉松),报名参加了这么一个赛事,在准备参赛作品的同时,由于参赛服务器需要自己搭建且比赛产生的代码不能外泄的,所以借着这个机会,本地先写了个测试的demo,来把tomcat ...

  2. [Python从零到壹] 十一.数据分析之Numpy、Pandas、Matplotlib和Sklearn入门知识万字详解(1)

    欢迎大家来到"Python从零到壹",在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界.所有文章都将结合案例.代码和作者的经验讲 ...

  3. Mybatis案例超详解

    Mybatis案例超详解 前言: 本来是想像之前一样继续跟新Mybatis,但由于种种原因,迟迟没有更新,快开学了,学了一个暑假,博客也更新了不少,我觉得我得缓缓,先整合一些案例练练,等我再成熟点理解 ...

  4. python编程语法大全-Python编程入门——基础语法详解

    今天小编给大家带来Python编程入门--基础语法详解. 关于怎么快速学python,可以加下小编的python学习群:611+530+101,不管你是小白还是大牛,小编我都欢迎,不定期分享干货 每天 ...

  5. python编程语法-Python编程入门——基础语法详解

    今天小编给大家带来Python编程入门--基础语法详解. 一.基本概念 1.内置的变量类型: Python是有变量类型的,而且会强制检查变量类型.内置的变量类型有如下几种: #浮点 float_num ...

  6. python编程if语法-Python编程入门基础语法详解经典

    原标题:Python编程入门基础语法详解经典 一.基本概念 1.内置的变量类型: Python是有变量类型的,而且会强制检查变量类型.内置的变量类型有如下几种: #浮点 float_number = ...

  7. python编程语法-Python编程入门——基础语法详解(经典)

    今天小编给大家带来Python编程入门--基础语法详解.温馨提示: 亮点在最后! 在这里还是要推荐下我自己建的Python开发学习群:301056051,群里都是学Python开发的,如果你正在学习P ...

  8. Springboot@Configuration和@Bean详解

    Springboot@Configuration和@Bean详解 一.@Configuration @Target({ElementType.TYPE}) @Retention(RetentionPo ...

  9. linux Shell(脚本)编程入门实例讲解详解

    linux Shell(脚本)编程入门实例讲解详解 为什么要进行shell编程 在Linux系统中,虽然有各种各样的图形化接口工具,但是sell仍然是一个非常灵活的工具.Shell不仅仅是命令的收集, ...

  10. html 自定义打印模板,HTML+CSS入门 自定义模板详解

    本篇教程介绍了HTML+CSS入门 自定义模板详解,希望阅读本篇文章以后大家有所收获,帮助大家HTML+CSS入门.< 首先总的stylecss和大模板都是当初angel_Kitty学姐的,嗯, ...

最新文章

  1. 我们试着用FBI的方法破解了一台安卓机
  2. SAP QM 采购订单收货时没有Vendor CoA就不让收货过账的实现
  3. java安装_使用Java 9模块化来发布零依赖本机应用程序
  4. python程序员在公司都是做什么的-程序员是做什么的?工资待遇怎么样?
  5. java:输入输出流
  6. [Xcode 实际操作]七、文件与数据-(2)创建文件夹
  7. QT的QScriptEngineAgent类的使用
  8. java jdbc连接db2数据库_Java连接db2数据库(常用数据库连接五)
  9. [python作业AI毕业设计博客]比Selenium IDE更好用的录制工具: Katalon Recorder
  10. 52CV精华文章分类汇总(2018年12月1日)
  11. 圆形头像制作,仿QQ做法。
  12. [美国]《霍比特人2:史矛革之战》[蓝光1080P.720P.中英双字][2013年奇幻动作]
  13. 面试问题总结——关于YOLO系列(二)
  14. Macbookpro开机只能进入恢复模式后的解决方案(过程太戏剧性了有时间可以看完)
  15. Linux文本比较指令(diff,cmp)详解
  16. 人大金仓数据库:睡在甲骨文卧榻之侧
  17. ant design pro入门踩坑:删除页面文件报错
  18. 翻译: 网页排名PageRank算法的来龙去脉 以及 Python实现
  19. linux安装及配置mycat eye可视化监控界面
  20. 软件公司,销售管理门道(七)销售协同

热门文章

  1. 长链剖分算法完整总结
  2. 使用Gotestwaf测试WAF检测能力
  3. Raki的读paper小记:SpanBERT: Improving Pre-training by Representing and Predicting Spans
  4. 互相引用 spring_Spring-bean的几种循环依赖方式
  5. Java基础知识陷阱(九)
  6. (三)JavaScript之[事件]与[字符串]
  7. css整理-03 文本
  8. firefly的使用
  9. 时间管理(二):时间管理的六项基本原则
  10. 补办毕业、学历证明流程