zoukankan      html  css  js  c++  java
  • springboot 学习之路 1(简单入门)


    目录:【持续更新。。。。。】

      spring 部分常用注解
      spring boot 学习之路1(简单入门)
      spring boot 学习之路2(注解介绍)
      spring boot 学习之路3( 集成mybatis )
      spring boot 学习之路4(日志输出)
      spring boot 学习之路5(打成war包部署tomcat)
      spring boot 学习之路6(定时任务)
      spring boot 学习之路6(集成durid连接池)
      spring boot 学习之路7(静态页面自动生效问题)
      spring boot 学习之路8 (整合websocket(1))
      spring boot 学习之路9 (项目启动后就执行特定方法)

    在spring boot 自学过程中遇到的问题,学习的弯路都会记录下来,仅供大家参考

      spring Boot(我理解就是springMVC的一个替代品,封装的更狠的一个框架)是Spring社区较新的一个项目。该项目的目的是帮助开发者更容易的创建基于Spring的应用程序和服务,让更多人的人更快的对Spring进行入门体验,让Java开发也能够实现Ruby on Rails那样的生产效率。为Spring生态系统提供了一种固定的、约定优于配置风格的框架。

      那么spring boot 的特点有哪些呢  

    • 为基于Spring的开发提供更快的入门体验
    • 开箱即用,没有代码生成,也无需XML配置。同时也可以修改默认值来满足特定的需求。
    • 提供了一些大型项目中常见的非功能性特性,如嵌入式服务器、安全、指标,健康检测、外部配置等。
    • Spring Boot并不是不对Spring功能上的增强,而是提供了一种快速使用Spring的方式。

    下面我们来学习spring boot 环境的配置,顺便来开发第一个spring boot 的hello world

      我是通过maven来构建的(Gradle也可以,但是我不会)

        首先创建一个一般的Maven项目,我是通过idea的开发工具来开发的,工具随意。

        

    <?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>com.example</groupId>
        <artifactId>demo</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <packaging>jar</packaging>
    
        <name>demo</name>
        <description>Demo project for Spring Boot</description>
    
        <parent>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>1.5.4.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.8</java.version>
        </properties>
    
        <dependencies>
            <!--spring-boot-starter:核心模块,包括自动配置支持、日志和YAML
                spring-boot-starter-test:测试模块,包括JUnit、Hamcrest、Mockito
            -->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter</artifactId>
            </dependency>
    
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-test</artifactId>
                <scope>test</scope>
            </dependency>
            <!--引入Web模块,需添加spring-boot-starter-web模块:-->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
            <!-- 添加热启动配置(方便在开发调试时修改代码后自动重新启动) -->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-devtools</artifactId>
                <optional>true</optional>
            </dependency>
        </dependencies>
    
        <build>
            <plugins>
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                    <!-- 添加热启动配置(方便在开发调试时修改代码后自动重新启动) -->
                    <configuration>
                        <fork>true</fork>
                    </configuration>
                </plugin>
            </plugins>
        </build>
    
    
    </project>

    首先是增加了<parent>

    增加父pom比较简单,而且spring-boot-starter-parent包含了大量配置好的依赖管理,在自己项目添加这些依赖的时候不需要写<version>版本号。

    使用父pom虽然简单,但是有些情况我们已经有父pom,不能直接增加<parent>时,可以通过如下方式:

     1 <dependencyManagement>
     2      <dependencies>
     3         <dependency>
     4             <!-- Import dependency management from Spring Boot -->
     5             <groupId>org.springframework.boot</groupId>
     6             <artifactId>spring-boot-dependencies</artifactId>
     7             <version>1.2.3.RELEASE</version>
     8             <type>pom</type>
     9             <scope>import</scope>
    10         </dependency>
    11     </dependencies>
    12 </dependencyManagement>

         在pom.xml中我已经把热部署插件也添加上了,这个就不详细介绍了。不理解可以百度一下,

      添加以后,通过mvn spring-boot:run启动就支持热部署了。

    配置到这就配置的差不多了下面就是看看程序怎么运行,先创建一个启动类,放在根目录下(不然会报错的)

    我创建的启动类是:

      

     1 package com;
     2 
     3 import org.mybatis.spring.annotation.MapperScan;
     4 import org.springframework.boot.SpringApplication;
     5 import org.springframework.boot.autoconfigure.SpringBootApplication;
     6 
     7 @SpringBootApplication
     8 @MapperScan("com.huhy.web.mapper")
     9 public class DemoApplication {
    10 
    11     public static void main(String[] args) {
    12         SpringApplication.run(DemoApplication.class,args);
    13     }
    14 }

    controller  随意写诶,注意那几个注解就行

        

     1 package com.huhy.web.controller;
     2 
     3 import com.huhy.web.entity.User;
     4 import org.springframework.ui.ModelMap;
     5 import org.springframework.web.bind.annotation.RequestMapping;
     6 import org.springframework.web.bind.annotation.RestController;
     7 
     8 /**
     9  * Created by hhy_0 on 2017/7/7.
    10  */
    11 @RestController
    12 public class HelloController
    13 {
    14     @RequestMapping("/hello")
    15     public String index(){
    16 
    17         return "Hello World";
    18     }
    19 
    20     @RequestMapping("/")
    21     public String index(ModelMap map) {
    22         // 加入一个属性,用来在模板中读取
    23         map.addAttribute("host", "http://blog.didispace.com");
    24 
    25         // return模板文件的名称,对应src/main/resources/templates/index.html
    26         return "index";
    27     }
    28     @RequestMapping("/getUser")
    29     public User getUser() {
    30         User user = new User();
    31         user.setId("12");
    32         user.setName("hhy");
    33         user.setAge(21);
    34         return user;
    35     }
    36 
    37 }

    运行启动类就会看到启动信息

    我的是这样的

     最后几行有端口号,然后打浏览器访问就行了

    到这,简单的spring boot 已经可以跑起来了。

    banner的修改:

      实现的方式非常简单,我们只需要在Spring Boot工程的/src/main/resources目录下创建一个banner.txt文件,然后将ASCII字符画复制进去,就能替换默认的banner了。比如上图中的输出,就采用了下面的banner.txt内容:

      生成工具

        如果让我们手工的来编辑这些字符画,显然是一件非常困难的差事。所以,我们可以借助下面这些工具,轻松地根据文字或图片来生成用于Banner输出的字符画。

      介绍到这就不演示了,大家自己玩把------------------------------------

     spring boot 学习之路2(注解介绍)

    快速生成demo

  • 相关阅读:
    Study Plan The Twelfth Day
    Study Plan The Fifteenth Day
    Study Plan The Seventeenth Day
    Study Plan The Tenth Day
    Study Plan The Eighth Day
    Study Plan The Eleventh Day
    Study Plan The Sixteenth Day
    Study Plan The Thirteenth Day
    Study Plan The Fourteenth Day
    Study Plan The Ninth Day
  • 原文地址:https://www.cnblogs.com/huhongy/p/7412468.html
Copyright © 2011-2022 走看看