快速的用springboot 搭建一个web工程

以前我们在使用spring框架搭建一个web项目的时候,首先要建一个maven工程,然后又添加pom.xml的配置文件。

在pom文件中增加对相关的的依赖,然后新建Spring相关的xml文件,而且往往那些xml文件还会少。然后继续使用

tomcat作为容器来运行这个工程。基本上每次创建一个新的项目都是这么一个流程,而我们有时候仅仅想快速的创建

一个Spring web工程来测试一些东西,或者是希望能节省时间。

如果我们使用springboot的话就很快能够做到上述的操作。下面就来看看具体的操作:

1. 我们创建一个Maven工程,工程名字为spring-boot-helloworld,然后修改pom.xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<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>net.mingyang</groupId>
    <artifactId>spring-boot-helloworld</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>

    <name>spring-boot-helloworld</name>
    <description>Demo project for Spring Boot</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.4.1.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.7</java.version>
    </properties>

    <dependencies>
        <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>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>

2. 新建一个Controller来接受处理我们的请求:

package net.mingyang.spring_boot_helloworld;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;

@SpringBootApplication
@Controller
public class SimpleController {

    @RequestMapping(value ="/hello", method = RequestMethod.GET)
    @ResponseBody
    public String hello(){
        return "hello world";
    }

    public static void main(String[] args) {
        SpringApplication.run(SimpleController.class, args);
    }
}

3. 执行SimleController中的main()方法:

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

2016-10-18 08:43:46.946  INFO 4640 --- [           main] n.m.s.SimpleController                   : Starting SimpleController on D60601653 with PID 4640 (X:\dev\spring-test-suite\spring-boot-helloworld\target\classes started by lbin in X:\dev\spring-test-suite\spring-boot-helloworld)
2016-10-18 08:43:46.950  INFO 4640 --- [           main] n.m.s.SimpleController                   : No active profile set, falling back to default profiles: default
2016-10-18 08:43:47.238  INFO 4640 --- [           main] ationConfigEmbeddedWebApplicationContext : Refreshing org.springframework.boot[email protected]69cc1627: startup date [Tue Oct 18 08:43:47 CST 2016]; root of context hierarchy
2016-10-18 08:43:49.969  INFO 4640 --- [           main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat initialized with port(s): 8080 (http)
2016-10-18 08:43:49.983  INFO 4640 --- [           main] o.apache.catalina.core.StandardService   : Starting service Tomcat
2016-10-18 08:43:49.984  INFO 4640 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet Engine: Apache Tomcat/8.5.5
2016-10-18 08:43:50.108  INFO 4640 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
2016-10-18 08:43:50.109  INFO 4640 --- [ost-startStop-1] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 2874 ms
2016-10-18 08:43:50.334  INFO 4640 --- [ost-startStop-1] o.s.b.w.servlet.ServletRegistrationBean  : Mapping servlet: ‘dispatcherServlet‘ to [/]
2016-10-18 08:43:50.340  INFO 4640 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: ‘characterEncodingFilter‘ to: [/*]
2016-10-18 08:43:50.340  INFO 4640 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: ‘hiddenHttpMethodFilter‘ to: [/*]
2016-10-18 08:43:50.340  INFO 4640 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: ‘httpPutFormContentFilter‘ to: [/*]
2016-10-18 08:43:50.340  INFO 4640 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: ‘requestContextFilter‘ to: [/*]
2016-10-18 08:43:50.766  INFO 4640 --- [           main] s.w.s.m.m.a.RequestMappingHandlerAdapter : Looking for @ControllerAdvice: org.springframework.boot[email protected]69cc1627: startup date [Tue Oct 18 08:43:47 CST 2016]; root of context hierarchy
2016-10-18 08:43:50.863  INFO 4640 --- [           main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/hello],methods=[GET]}" onto public java.lang.String net.mingyang.spring_boot_helloworld.SimpleController.hello()
2016-10-18 08:43:50.868  INFO 4640 --- [           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)
2016-10-18 08:43:50.868  INFO 4640 --- [           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)
2016-10-18 08:43:50.912  INFO 4640 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/webjars/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2016-10-18 08:43:50.912  INFO 4640 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2016-10-18 08:43:51.029  INFO 4640 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**/favicon.ico] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2016-10-18 08:43:51.767  INFO 4640 --- [           main] o.s.j.e.a.AnnotationMBeanExporter        : Registering beans for JMX exposure on startup
2016-10-18 08:43:51.878  INFO 4640 --- [           main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 (http)
2016-10-18 08:43:51.884  INFO 4640 --- [           main] n.m.s.SimpleController                   : Started SimpleController in 5.658 seconds (JVM running for 5.99)

查看日志可以发现她默认使用的是tomcat,端口绑定在8080,所以我们也就没有必要去配置头mcat。直接运行就可以。我们在访问:http://localhost:8080/hello,就可以看到我们代码中输出的字样了。

时间: 2024-08-11 07:48:34

快速的用springboot 搭建一个web工程的相关文章

搭建一个web服务下载HDFS的文件

需求描述 为了能方便快速的获取HDFS中的文件,简单的搭建一个web服务提供下载很方便快速,而且在web服务器端不留临时文件,只做stream中转,效率相当高! 使用的框架是SpringMVC+HDFS API 关键代码 @Controller @RequestMapping("/file") public class FileDownloadController { private static final String BASE_DIR = "/user/app/dump

IntelliJ IDEA 部署Tomcat及创建一个web工程

一.部署Tomcat 二.新建一个web工程 1.新建一个Project 2.现在建立一个简单的web工程,所以只勾选下面选中的,此外,本版本(IntelliJ IDEA 14.1.5只支持3.1版本,并不支持更低版本) 3.第2步骤点击Next后是以下界面,修改Project name,点击Finish. 4.建好工程后,项目结构如下: 注意:默认的WEB-INF目录没有lib目录(这和eclipse不同).这个需要自己建. 5.在WEB-INF建立classes.lib包 5.1 5.2 5

Hello Node.js之搭建一个web服务器

Node.js简述 Nodejs 是JavaScript运行时,解释器是C/C++写的,基于ChromeV8引擎, 事件驱动,非阻塞I/O模型.本系列目前参考了Node.js官网,慕课网Scott的Node.js基础,<Node即学即用>图灵系列,以及可能的网上公开资源. Nodejs包管理器是npm 包就是别人写好的库. Nodejs提供了fs,http等内置对象,操作磁盘文件.搭建服务器. 特征:单线程.事件驱动.异步非阻塞I/O模型. Node.js安装 官网安装Node.js,自带np

快速搭建动态web工程并且进行数据库交互页面呈现

直接进入主题: 最后注意,勾选 这样工程就基本搭建完成了 打开工程的web.xml文件, <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> <welcome-file>default.ht

Jrebel简单的热部署一个web工程

前言:博主最近在做Hybris开发,漫长的启动时间大大的拖累了项目的进度,而Jrebel的出现就是为了减少项目重启的时间或者说修改了代码后直接不用重启就可以看到修改的结果,但是Hybris的部署一直没有成功,博主就先做了一个小demo,试试看效果如何. 第一步:在线安装IDEA Jrebel插件 第二步:注册Jelbel获得序列号       这里博主是通过去Jrebel的官网 https://my.jrebel.com,FQ通过推特账号登录获取到的他的激活序列号的,但是我看到网上有一些破解的,

通过Z-BlogPHP程序快速在论坛里搭建一个博客页面

想在我自己的论坛http://www.heimaoxuexi.com搭建一个博客出来.研究了几个博客程序,都不好用,今天测试了下Z-BlogPHP程序,完美搭建:下面讲下具体的步骤: 1.install.php上传到目录里然后按步骤开始安装:2.安装完成后删除zb_install文件夹,这个文件也可以连着一起删除readme.txt:3.选择模版,左边栏最后一步选择应用中心,选择一款喜欢的模版,点击安装,然后回到主题管理处启用:4.开启伪静态,点击插件管理.选择,静态管理中心-开启-选择默认配置

【SpingBoot】 测试如何使用SpringBoot搭建一个简单后台1

很久没写博客了,最近接到一个组内的测试开发任务是做一个使用SpringBoot 开发一个后台程序(还未完成),特写感想记录一下 1. 为什么选择SpringBoot ? 首先是目前很多公司的后台还是JAVA编写的,或者直接就是MVC的一个后台,大部分测试其实会采用python 作为一个测试语言,易上手然后见效快. 但是我们可以想见,其实在传统行业,领导更希望你能够使用同一种语言来进行一些程序或者代码的编写. PS: 其实是因为我自己报的,我说了python或者springboot都可以,领导给我

python+搭建一个web

1.import web pip install web.py==0.40.dev0 下载好后,修改 将第526行的 yield next(seq)1 修改为 try:     yield next(seq) except StopIteration:     return 2.建一个启动py import web urls = ( '/(.*)', 'hello' ) app = web.application(urls, globals()) class hello: def GET(sel

三:搭建一个Web Test Plan

参考:http://jmeter.apache.org/usermanual/build-web-test-plan.html 场景 5个用户并发测试百度搜索,有两个请求,一个请求搜索"你好",一个请求搜索"helloworld". 配置用户 添加线程组. 在Test Plan 上右键,添加Thread Group. 设定如下:5个用户并发访问系统,1秒内准备好用户,每个用户访问循环2次. 添加配置元件 由于我们有多个相同的请求,所以我们可以直接添加一个HTTP 配