zoukankan      html  css  js  c++  java
  • Spring Boot(一) Hello World

    文章导航-readme

    一、Spring Boot之我见

        Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。

        Spring Boot 是所有基于 Spring 开发的项目的起点。Spring Boot 的设计是为了让你尽可能快的跑起来 Spring 应用程序并且尽可能减少你的配置文件

        这是百科上对Spring Boot的说明。实际上在我看来Spring Boot就是Spring等一系列的java技术栈框架的组合加上约定大于配置的思想。它并不是一项新的技术也不是一个新的框架,而是各种技术的一个组合,它默认配置了很多框架的使用方式。它的出现,极大的提高了java应用的开发效率。其特性就是轻量级、可插拔、微服务。同时idea和spring boot的出现也颠覆了我一个.net程序员曾经对java的认知(我是.net出身的程序员,对于java最大的印象就是“配置”、“配置”、“配置”和难用的一笔的IDE)。原来Java项目开发也可以变得优雅起来!

    二、项目搭建

         在还是SSM(SSH)的时代搭建一个Web项目大概需要以下几步

    1. 新建项目

    2. 配置Web.xml,加载Spring和Spring Mvc

    3. 配置数据库连接、配置Spring事务,配置mybatis

    4. 配置加载配置文件的读取,开启注解

    5. 配置日志文件

    6. 配置完成后部署Tomcat调试

      ...

      一堆的配置,看得人头大,也让很多初学者望而却步。

      而有了Spring Boot,一切将会简单而优雅。

      本文将从Hello World做起,搭建一个简单的Spring Boot Web项目。

    7. File——New——Project(Moudle)

    注意: 图中的https://start.spring.io/,也可以直接打开,在网站上直接生成项目下载,用idea打开也是一样的。

    1. Next将看到以下界面

    1. 继续下一步,选择Web->Spring Boot,在这里我们可以选择Spring Boot版本

    1. 继续下一步

    1. 点击完成将看到如下目录结构

    至此,一个Spring Boot项目就创建完成。

    三、项目结构说明

    1. 项目结构中主要目录说明大致如下
    ->spring-boot-web						 (项目或模块)
    ---> src
    ----->main
    ------->java							 (Java代码目录)
    --------->spring.boot.web				  (包spring.boot.web)
    ----------->SpringBootWebApplication	   (Spring Boot启动类)
    ------->resources
    --------->static						 (静态资源目录)
    --------->templates						 (视图模板目录)
    --------->application.properties		  (项目配置文件)
    ------->test							(测试)
    --------->java						
    ----------->spring.boot.web
    ----------->SpringBootWebApplicationTests  (Spring Boot测试启动类)
    --->pom.xml								(maven pom配置文件)
    
    1. pom文件说明

        pom.xml,它是maven来管理各种jar包依赖的一个配置文件,maven相当于.net中的nuget,是一个包管理工具。我们可以看到项目搭建好之后,就默认为我们加上了下面这些配置。

    <?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
        <!--父节点配置了Spring Boot的一些信息,父节点代表子节点可以继承父节点的一些配置,如版本号,在这里配置了就不用在子节点配置了-->
        <parent>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>2.1.8.RELEASE</version>
            <relativePath/> <!-- lookup parent from repository -->
        </parent>
        <!--项目信息-->
        <groupId>spring.boot.examples</groupId>
        <artifactId>spring-boot-web</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <name>spring-boot-web</name>
        <description>Demo project for Spring Boot</description>
    
        <properties>
            <java.version>1.8</java.version>
        </properties>
    
        <!--依赖的包配置在下面这个节点-->
        <dependencies>
            <!--引入Spring Boot Web模块-->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
    		<!--引入Spring Boot 测试模块-->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-test</artifactId>
                <scope>test</scope>
            </dependency>
        </dependencies>
    
        <build>
            <plugins>
                <!--Spring Boot Maven 插件-->
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                </plugin>
            </plugins>
        </build>
    
    </project>
    
    
    1. Spring Boot启动类
    package spring.boot.web;
    
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    
    @SpringBootApplication
    public class SpringBootWebApplication {
    
        public static void main(String[] args) {
            SpringApplication.run(SpringBootWebApplication.class, args);
        }
    
    }
    
    

    启动类是Spring Boot程序的入口。

    四、Hello World

    1. 新建控制器

      我们在spring.boot.web下建一个controller包,包内新建HelloWorld类

      package spring.boot.web.controller;
      
      import org.springframework.web.bind.annotation.RequestMapping;
      import org.springframework.web.bind.annotation.RestController;
      
      @RestController
      public class HelloWorld {
      
          @RequestMapping("/helloWorld")
          public String Hello() {
              return "Hello World!";
          }
      }
      
      

      这里有两个注解:

      @RestController的意思就是controller里面的方法都以json格式输出,不用再写什么jackjson配置的了!

      @RequestMapping配置Url映射

    2. 启动Spring Boot项目

      由于Spring Boot项目内置Tomcat服务器,我们不需要在部署到Tomcat。只需要要在配置文件application.properties里配置一下端口号,然后idea->run->run。

      server.port=8888
    

    如下图,代表启动成功!

    打开浏览器输入:http://localhost:8888/helloWorld

    至此,Hello World项目完成。于Java上,再次体验到了简洁优雅的开发!

    示例代码

  • 相关阅读:
    mysqlsla 分析mysql慢查询日志
    MyBatis-DynamicSQL 动态SQL
    MyBatis-resultType 与 resultMap 中的几种返回类型
    MyBatis-${}与#{}
    MyBatis-parameterType 入参封装 Map 流程
    MyBatis-parameterType 取出入参值
    MyBatis-CURD
    第二十四篇-用VideoView制作一个简单的视频播放器
    第二十三篇-ubuntu18.04怎么下载播放器以及如何设置默认播放器
    第二十二篇-Guideline基准线
  • 原文地址:https://www.cnblogs.com/hunternet/p/11570538.html
Copyright © 2011-2022 走看看