Spring boot——helloworld例子实现

软件152     缑旭浩

1.新建maven项目,package方式为war.

使用maven的时候,maven会从仓库中下载依赖的jar包。

新建Maven Project 命名为:SpringBoot 选项如图

修改工程目录,添加源文件夹后目录如下:

2.在pom文件spring boot需要的依赖,配置文件如下:

  1 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  2     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  3     <modelVersion>4.0.0</modelVersion>
  4
  5   <groupId>com.lgp</groupId>
  6   <artifactId>SpringBoot</artifactId>
  7   <version>0.0.1-SNAPSHOT</version>
  8   <packaging>jar</packaging>
  9
 10   <name>SpringBoot</name>
 11   <url>http://maven.apache.org</url>
 12
 13   <properties>
 14     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
 15   </properties>
 16
 17      <!-- Inherit defaults from Spring Boot -->
 18     <parent>
 19         <groupId>org.springframework.boot</groupId>
 20         <artifactId>spring-boot-starter-parent</artifactId>
 21         <version>1.4.0.BUILD-SNAPSHOT</version>
 22     </parent>
 23
 24     <!-- Add typical dependencies for a web application -->
 25     <dependencies>
 26         <dependency>
 27             <groupId>org.springframework.boot</groupId>
 28             <artifactId>spring-boot-starter-web</artifactId>
 29         </dependency>
 30           <dependency>
 31           <groupId>junit</groupId>
 32           <artifactId>junit</artifactId>
 33           <version>3.8.1</version>
 34            <scope>test</scope>
 35         </dependency>
 36     </dependencies>
 37
 38     <!-- Package as an executable jar -->
 39     <build>
 40         <plugins>
 41             <!-- <plugin>
 42                 <groupId>org.springframework.boot</groupId>
 43                 <artifactId>spring-boot-maven-plugin</artifactId>
 44             </plugin> -->
 45
 46             <!-- Maven Assembly Plugin -->
 47             <plugin>
 48                 <groupId>org.apache.maven.plugins</groupId>
 49                 <artifactId>maven-assembly-plugin</artifactId>
 50                 <version>2.4.1</version>
 51                 <configuration>
 52                     <!-- get all project dependencies -->
 53                     <descriptorRefs>
 54                         <descriptorRef>jar-with-dependencies</descriptorRef>
 55                     </descriptorRefs>
 56                     <!-- MainClass in mainfest make a executable jar -->
 57                     <archive>
 58                       <manifest>
 59                         <mainClass>com.lgp.SpringBoot.App</mainClass>
 60                       </manifest>
 61                     </archive>
 62
 63                 </configuration>
 64                 <executions>
 65                   <execution>
 66                     <id>make-assembly</id>
 67                      <!-- bind to the packaging phase -->
 68                     <phase>package</phase>
 69                     <goals>
 70                         <goal>single</goal>
 71                     </goals>
 72                   </execution>
 73                 </executions>
 74             </plugin>
 75
 76         </plugins>
 77     </build>
 78
 79
 80
 81     <!-- Add Spring repositories -->
 82     <!-- (you don‘t need this if you are using a .RELEASE version) -->
 83     <repositories>
 84         <repository>
 85             <id>spring-snapshots</id>
 86             <url>http://repo.spring.io/snapshot</url>
 87             <snapshots><enabled>true</enabled></snapshots>
 88         </repository>
 89         <repository>
 90             <id>spring-milestones</id>
 91             <url>http://repo.spring.io/milestone</url>
 92         </repository>
 93     </repositories>
 94     <pluginRepositories>
 95         <pluginRepository>
 96             <id>spring-snapshots</id>
 97             <url>http://repo.spring.io/snapshot</url>
 98         </pluginRepository>
 99         <pluginRepository>
100             <id>spring-milestones</id>
101             <url>http://repo.spring.io/milestone</url>
102         </pluginRepository>
103     </pluginRepositories>
104 </project>

3.编辑JAVA代码新建APP.class

 1 package com.lgp.SpringBoot;
 2
 3 import org.springframework.boot.SpringApplication;
 4 import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
 5 import org.springframework.web.bind.annotation.RequestMapping;
 6 import org.springframework.web.bind.annotation.RestController;
 7
 8 @RestController
 9 @EnableAutoConfiguration
10 public class App
11 {
12       @RequestMapping("/h")
13       public String home() {
14         return "Hello";
15       }
16
17       @RequestMapping("/w")
18       public String word() {
19         return "World";
20       }
21
22     public static void main( String[] args )
23     {
24         System.out.println( "Hello World ! App!" );
25         SpringApplication.run(App.class, args);
26         //SpringApplication.run(UserController.class, args);
27     }
28 }

3.编写测试action,此action跟用其他方式创建spring项目里边的action没什么区别。

 1 package com.example;
 2
 3 import org.springframework.boot.SpringApplication;
 4 import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
 5 import org.springframework.stereotype.Controller;
 6 import org.springframework.web.bind.annotation.RequestMapping;
 7 import org.springframework.web.bind.annotation.ResponseBody;
 8
 9 @Controller
10 @EnableAutoConfiguration
11 public class HelloController {
12
13     @RequestMapping("/hello")
14     @ResponseBody
15     String home() {
16         return "Hello ,spring boot!";
17     }
18
19     public static void main(String[] args) throws Exception {
20         SpringApplication.run(HelloController.class, args);
21         //运行之后在浏览器中访问:http://localhost:8080/hello
22     }
23
24 }

4.启动项目,只需要运行上面代码的main方法,运行成功,控制台输出如下

  .   ____          _            __ _ _
 /\\ / ___‘_ __ _ _(_)_ __  __ _ \ \ \ ( ( )\___ | ‘_ | ‘_| | ‘_ \/ _` | \ \ \  \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  ‘  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v1.3.4.RELEASE)

2017-07-02 15:21:46.299  INFO 6668 --- [           main] com.example.HelloController              : Starting HelloController on 0KE99GYM83Y5KGX with PID 6668 (D:\newspace\springbootdemo\target\classes started by Administrator in D:\newspace\springbootdemo)
2017-07-02 15:21:46.301  INFO 6668 --- [           main] com.example.HelloController              : No active profile set, falling back to default profiles: default
2017-07-02 15:21:46.337  INFO 6668 --- [           main] ationConfigEmbeddedWebApplicationContext : Refreshing org.springframework.boot[email protected]18b8315: startup date [Tue May 10 15:21:46 CST 2016]; root of context hierarchy
2017-07-02 15:21:47.385  INFO 6668 --- [           main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat initialized with port(s): 8080 (http)
2017-07-02 15:21:47.399  INFO 6668 --- [           main] o.apache.catalina.core.StandardService   : Starting service Tomcat
2017-07-02 15:21:47.400  INFO 6668 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet Engine: Apache Tomcat/8.0.33
2017-07-02 15:21:47.482  INFO 6668 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
2017-07-02 15:21:47.482  INFO 6668 --- [ost-startStop-1] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 1148 ms
2017-07-02 15:21:47.714  INFO 6668 --- [ost-startStop-1] o.s.b.c.e.ServletRegistrationBean        : Mapping servlet: ‘dispatcherServlet‘ to [/]
2017-07-02 15:21:47.718  INFO 6668 --- [ost-startStop-1] o.s.b.c.embedded.FilterRegistrationBean  : Mapping filter: ‘characterEncodingFilter‘ to: [/*]
2017-07-02 15:21:47.718  INFO 6668 --- [ost-startStop-1] o.s.b.c.embedded.FilterRegistrationBean  : Mapping filter: ‘hiddenHttpMethodFilter‘ to: [/*]
2017-07-02 15:21:47.718  INFO 6668 --- [ost-startStop-1] o.s.b.c.embedded.FilterRegistrationBean  : Mapping filter: ‘httpPutFormContentFilter‘ to: [/*]
2017-07-02 15:21:47.718  INFO 6668 --- [ost-startStop-1] o.s.b.c.embedded.FilterRegistrationBean  : Mapping filter: ‘requestContextFilter‘ to: [/*]
2017-07-02 15:21:47.939  INFO 6668 --- [           main] s.w.s.m.m.a.RequestMappingHandlerAdapter : Looking for @ControllerAdvice: org.springframework.boot[email protected]18b8315: startup date [Tue May 10 15:21:46 CST 2016]; root of context hierarchy
2017-07-02 15:21:47.991  INFO 6668 --- [           main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/hello]}" onto java.lang.String com.example.HelloController.home()
2017-07-02 15:21:47.993  INFO 6668 --- [           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)
2017-07-02 15:21:47.994  INFO 6668 --- [           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)
2017-07-02 15:21:48.014  INFO 6668 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/webjars/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2017-07-02 15:21:48.014  INFO 6668 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2017-07-02 15:21:48.048  INFO 6668 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**/favicon.ico] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2017-07-02 15:21:48.128  INFO 6668 --- [           main] o.s.j.e.a.AnnotationMBeanExporter        : Registering beans for JMX exposure on startup
2017-07-02 15:21:48.187  INFO 6668 --- [           main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 (http)
2017-07-02 15:21:48.190  INFO 6668 --- [           main] com.example.HelloController              : Started HelloController in 2.166 seconds (JVM running for 2.401)
2017-07-02 15:22:03.171  INFO 6668 --- [nio-8080-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring FrameworkServlet ‘dispatcherServlet‘
2017-07-02 15:22:03.171  INFO 6668 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet        : FrameworkServlet ‘dispatcherServlet‘: initialization started
2017-07-02 15:22:03.181  INFO 6668 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet        : FrameworkServlet ‘dispatcherServlet‘: initialization completed in 10 ms

5.在浏览器中访问,如下:

运行App.java 访问 http://localhost:8080/user/12

时间: 2024-10-29 04:30:47

Spring boot——helloworld例子实现的相关文章

Spring Boot 学习例子

01.spring-boot-restfulservice 02.spring-boot-consumer 03.spring-boot-upload 04.spring-boot-validatingform 05.spring-boot-jdbc 06.spring-boot-transactions 07.spring-boot-securing 08.spring-boot-ldap 09.spring-boot-configuration 10.spring-boot-batchser

Spring Boot总结

一.Spring Boot 入门 1.Spring Boot 简介 简化Spring应用开发的一个框架: 整个Spring技术栈的一个大整合: J2EE开发的一站式解决方案: 2.微服务 2014,martin fowler 微服务:架构风格(服务微化) 一个应用应该是一组小型服务:可以通过HTTP的方式进行互通: 单体应用:ALL IN ONE 微服务:每一个功能元素最终都是一个可独立替换和独立升级的软件单元: 详细参照微服务文档 3.环境准备 http://www.gulixueyuan.c

Spring Boot开发之流水无情(二)

上篇散仙写了一个很简单的入门级的Spring Boot的例子,没啥技术含量,不过,其实学任何东西只要找到第一个突破口,接下来的事情就好办了,人最怕什么? 我想莫过于干一件事情,没有下手的地方了,而当你一旦找到了这感觉,就可以很喜悦的顺藤摸瓜般的探索你强烈想探索求知的某种事物了,这种冥冥之中玄而又玄的感觉是什么?回想一下: (1) 当你把第一个某种编程语言的Hello World的例子,成功的运行在一个IDE中  (2) 当你第一次从老家出发到达了某个你从未涉足过的地方  (3) 当你成功的完成了

使用Spring Boot来加速Java web项目的开发

使用Spring Boot来加速Java web项目的开发 我想,现在企业级的Java web项目应该或多或少都会使用到Spring框架的. 回首我们以前使用Spring框架的时候,我们需要首先在(如果你使用Maven的话)pom文件中增加对相关的的依赖(使用gradle来构建的话基本也一样)然后新建Spring相关的xml文件,而且往往那些xml文件还不会少.然后继续使用tomcat或者jetty作为容器来运行这个工程.基本上每次创建一个新的项目都是这么一个流程,而我们有时候仅仅想快速的创建一

Spring Boot加速Java web项目的开发

软件152唐伟 我想,现在企业级的Java web项目应该或多或少都会使用到Spring框架的. 回首我们以前使用Spring框架的时候,我们需要首先在(如果你使用Maven的话)pom文件中增加对相关的的依赖(使用gradle来构建的话基本也一样)然后新建Spring相关的xml文件,而且往往那些xml文件还不会少.然后继续使用tomcat或者jetty作为容器来运行这个工程.基本上每次创建一个新的项目都是这么一个流程,而我们有时候仅仅想快速的创建一个Spring web工程来测试一些东西,或

spring cloud教程之使用spring boot创建一个应用

<7天学会spring cloud>第一天,熟悉spring boot,并使用spring boot创建一个应用. Spring Boot是Spring团队推出的新框架,它所使用的核心技术还是Spring框架,主要是Spring 4.x,所以如果熟悉spring 4的人,能够更快的接受和学会这个框架.Spring boot可以看做是在spring框架基础上再包了一层,这一层包含方便开发者进行配置管理和快速开发的模块,以及提供了一些开箱即用的工具,比如监控等. Spring Boot官方文档有中

Spring Boot 概括

Spring Boot 简介 简化Spring应用开发的一个框架: 整个Spring技术栈的一个大整合: J2EE开发的一站式解决方案: 微服务 2014,martin fowler 微服务:架构风格(服务微化) 一个应用应该是一组小型服务:可以通过HTTP的方式进行互通: 单体应用:ALL IN ONE 微服务:每一个功能元素最终都是一个可独立替换和独立升级的软件单元: 环境准 环境约束 –jdk1.8:Spring Boot 推荐jdk1.7及以上 Spring Boot HelloWorl

spring boot开始篇

一.编写第一个REST接口: /** * Spring Boot HelloWorld案例 * * Created by bysocket on 16/4/26. */@RestControllerpublic class HelloWorldController { @Autowired Environment env; @Value("${server.port}") private String portt; @Autowired private MyConfiguration

Spring Boot实战之逐行释义HelloWorld

一.前言  研究Spring boot也有一小段时间了,最近会将研究东西整理一下给大家分享,大概会有10~20篇左右的博客,整个系列会以一个简单的博客系统作为基础,因为光讲理论很多东西不是特别容易理解,并且如果每次通过一个简单的小程序也无法系统的把握好一些知识点,所以就以一个简单的系统作为基础来讲,看看通过spring boot如何实现一个完整系统.本系列除了Spring boot基本的知识点之外,还会涉及到Spring boot与数据库.缓存(redis).消息队列等的结合以及多实例部署等方面