跟随SpringBoot的文档(http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#boot-documentation)学习,前后几章关联才调通代码,煞是痛苦,在这里记录结果,过程隐忍。

一、准备工作

1、根据Maven工程特点,建立文档结果

myFirstProject

+-src

+-main

+-java

+-resources

+-test

+-java

+-resources

2、再在src/main/java下依次建立文件夹com,example,myFirstProject,可以构成Maven工程包(package)-->com.example.myFirstProject,最后文档结构如图1

图1

3、编制pom.xml,存于myFirstProject文件夹下,与src同级

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  3. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  4. <modelVersion>4.0.0</modelVersion>
  5. <groupId>com.example</groupId>
  6. <artifactId>myFirstproject</artifactId>
  7. <version>0.0.1-SNAPSHOT</version>
  8. <!-- Inherit defaults from Spring Boot -->
  9. <parent>
  10. <groupId>org.springframework.boot</groupId>
  11. <artifactId>spring-boot-starter-parent</artifactId>
  12. <version>1.4.0.BUILD-SNAPSHOT</version>
  13. </parent>
  14. <!-- Add typical dependencies for a web application -->
  15. <dependencies>
  16. <dependency>
  17. <groupId>org.springframework.boot</groupId>
  18. <artifactId>spring-boot-starter-web</artifactId>
  19. </dependency>
  20. </dependencies>
  21. <!-- Package as an executable jar -->
  22. <build>
  23. <plugins>
  24. <plugin>
  25. <groupId>org.springframework.boot</groupId>
  26. <artifactId>spring-boot-maven-plugin</artifactId>
  27. </plugin>
  28. </plugins>
  29. </build>
  30. <!-- Add Spring repositories -->
  31. <!-- (you don't need this if you are using a .RELEASE version) -->
  32. <repositories>
  33. <repository>
  34. <id>spring-snapshots</id>
  35. <url>http://repo.spring.io/snapshot</url>
  36. <snapshots><enabled>true</enabled></snapshots>
  37. </repository>
  38. <repository>
  39. <id>spring-milestones</id>
  40. <url>http://repo.spring.io/milestone</url>
  41. </repository>
  42. </repositories>
  43. <pluginRepositories>
  44. <pluginRepository>
  45. <id>spring-snapshots</id>
  46. <url>http://repo.spring.io/snapshot</url>
  47. </pluginRepository>
  48. <pluginRepository>
  49. <id>spring-milestones</id>
  50. <url>http://repo.spring.io/milestone</url>
  51. </pluginRepository>
  52. </pluginRepositories>
  53. </project>

文档内容从SpringBoot的文档拷贝

4、编制Application.java存于myFirstProject\src\main\java\com\example\myFirstProject下

  1. package com.example.myFirstProject;
  2. import org.springframework.boot.SpringApplication;
  3. import org.springframework.boot.autoconfigure.SpringBootApplication;
  4. @SpringBootApplication
  5. public class Application {
  6. public static void main(String[] args) {
  7. SpringApplication.run(Application.class, args);
  8. }
  9. }

5、编制Example.java,存于myFirstProject\src\main\java\com\example\myFirstProject下

  1. package com.example.myFirstProject;
  2. import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
  3. import org.springframework.web.bind.annotation.PathVariable;
  4. import org.springframework.web.bind.annotation.RequestMapping;
  5. import org.springframework.web.bind.annotation.RestController;
  6. @RestController
  7. @EnableAutoConfiguration
  8. public class Example {
  9. @RequestMapping("/")
  10. String home() {
  11. return "Hello World!";
  12. }
  13. @RequestMapping("/hello/{myName}")
  14. String index(@PathVariable String myName) {
  15. return "Hello "+myName+"!!!";
  16. }
  17. }

二、Maven工程导入

1、启动eclipse

1.1、java-->jdk1.7.0_80x64

1.2、maven-->Apache Maven 3.3.3

1.3、Eclipse Java EE IDE for Web Developers. Version: Mars Release (4.5.0)

1.4、为本练习,新建一个workgroup

2、在eclipse中,依次点击file-->import-->Maven-->Existing Maven Projects-->Next-->Browse-->定位到myFirstProject文件夹-->确定--Finish

3、导入结果如图2

图2

三、运行

1、在eclipse的工程myFirstProject上右击鼠标,选择Run as-->Java Application,如图3

2、在select Java Aplication中选择“Application -com.example.myFirstProject”,如图4

图4

3、再次点击“OK”按钮,在Eclipse的Console中开始打印如图5

图5

4、打开浏览器,输入http://localhost:8080,显示如图6

5、在浏览器中,输入http://localhost:8080/hello/SpringBoot

四、后记

痛则不通,通则不痛。这个例子非常之简单,为了这个简单,费事不少。为了这个例子能够成功,最好做以下准备

1、构建本地的Maven伺服,否则速度痛苦

2、Sonatype Nexus尽量和jdk相对应的版本,不要最求最新,否则可能启动不起来。

3、Sonatype Nexus搭建,参考

SpringBoot入门系列:第一篇 Hello World的更多相关文章

  1. Entity Framework 6.0 入门系列 第一篇

    Entity Framework 6.0 入门系列 第一篇 好几年前接触过一些ef感觉不是很好用,废弃.但是 Entity Framework 6.0是经过几个版本优化过的产物,性能和功能不断完善,开 ...

  2. SpringBoot入门系列(转)

    SpringBoot入门系列:第一篇 Hello World http://blog.csdn.net/lxhjh/article/details/51711148

  3. SpringBoot入门系列(十二)统一日志收集

    前面介绍了Spring Boot 异常处理,不清楚的朋友可以看看之前的文章:https://www.cnblogs.com/zhangweizhong/category/1657780.html. 今 ...

  4. SpringBoot入门系列(十一)统一异常处理的实现

    前面介绍了Spring Boot 如何整合定时任务已经Spring Boot 如何创建异步任务和定时任务.不清楚的朋友可以看看之前的文章:<Spring Boot 入门系列文章> 接下来主 ...

  5. 深入学习jQuery选择器系列第一篇——基础选择器和层级选择器

    × 目录 [1]id选择器 [2]元素选择器 [3]类选择器[4]通配选择器[5]群组选择器[6]后代选择器[7]兄弟选择器 前面的话 选择器是jQuery的根基,在jQuery中,对事件处理.遍历D ...

  6. 深入理解javascript函数系列第一篇——函数概述

    × 目录 [1]定义 [2]返回值 [3]调用 前面的话 函数对任何一门语言来说都是一个核心的概念.通过函数可以封装任意多条语句,而且可以在任何地方.任何时候调用执行.在javascript里,函数即 ...

  7. 深入理解javascript函数系列第一篇

    前面的话 函数对任何一门语言来说都是核心的概念.通过函数可以封装任意多条语句,而且可以在任何地方.任何时候调用执行.在javascript里,函数即对象,程序可以随意操控它们.函数可以嵌套在其他函数中 ...

  8. 深入理解ajax系列第一篇——XHR对象

    × 目录 [1]创建对象 [2]发送请求 [3]接收响应[4]异步处理[5]实例演示 前面的话 ajax是asynchronous javascript and XML的简写,中文翻译是异步的java ...

  9. 深入理解javascript对象系列第一篇——初识对象

    × 目录 [1]定义 [2]创建 [3]组成[4]引用[5]方法 前面的话 javascript中的难点是函数.对象和继承,前面已经介绍过函数系列.从本系列开始介绍对象部分,本文是该系列的第一篇——初 ...

  10. 深入理解this机制系列第一篇——this的4种绑定规则

    × 目录 [1]默认绑定 [2]隐式绑定 [3]隐式丢失[4]显式绑定[5]new绑定[6]严格模式 前面的话 如果要问javascript中哪两个知识点容易混淆,作用域查询和this机制绝对名列前茅 ...

随机推荐

  1. extjs combobox 设置下拉时显示滚动条 设置显示条数

    extjs在点击下拉时如果没有限制它的高度,那么它的默认最大高度是300,显示的时候就会显示300的高度,知道选项内容超过这个高度时才会自动显示滚动条,往往在有些时候我们希望让combobox显示一个 ...

  2. yii2源码学习笔记

    assets   前端资源文件夹,用于管理css js等前端资源文件等 commands   包含命令行命令,文件为控制器文件 config 应用的配置文件 controllers 控制器文件 mai ...

  3. CentOS-6.4安装配置Nginx

    在安装nginx前,需要确保系统安装了g++.gcc.openssl-devel.pcre-devel和zlib-devel软件.安装必须软件: [root@admin /]#yum install ...

  4. css阴影

    文字阴影:text-shadow:[颜色 x轴 y轴 模糊半径],[颜色 x轴 y轴 模糊半径]... 区域阴影:box-shadow:[颜色 x轴 y轴 模糊半径],[颜色 x轴 y轴 模糊半径]. ...

  5. Memcached源码分析——process_command函数解析

    以下为个人笔记 /** * process_command 在memcached中是用来处理用户发送的命令的, * 包括get set,add,delete,replace,stats,flush_a ...

  6. C# 部分关键字

    关键字: virtual:  虚方法,本身可以被实例化,也可以在派生类中重写该方法: override:在派生类重写基类虚方法时声明,避免了C++中的潜在运行错误: abstract:声明为抽象类.抽 ...

  7. sql语句:union

     sql语句中,join,left join中,是将两个或多个表横向连接,而有时,我们需要将几个表或1个表纵向连接,甚至是连接自身,就比如,某些数据库脚本特别不合理的时候,但我们又不能说啥 ....郁 ...

  8. Word Break II——LeetCode

    Given a string s and a dictionary of words dict, add spaces in s to construct a sentence where each ...

  9. 用Visual Studio创建集成了gtest的命令行工程

    gtest代码库中的sample代码 在gtest的代码库中,包含了10个sample的代码,覆盖了gtest的常见用法,sample的代码位于以下文件夹: gtest\samples 由于gtest ...

  10. 使用Jekyll搭建免费的Github Pages个人博客

    一.Git 1.Git概述 Git is a free and open source distributed version control system designed to handle ev ...