• SpringBoot入门 (一) HelloWorld


    一 什么是springboot

      springboot是一个全新的框架,它设计的目的简化spring项目的初始环境的搭建和开发,主要有以下几个特点:

      1、简化初始配置 ,可与主流框架集成;

      2、内置Servlet容器,无需在打War包;

      3、使用了Starter(启动器)管理依赖并版本控制;

      4、大量的自动配置,简化开发,方便集成第三方;

      5、提供准生产环境运行时的监控,如指标,健康,外部配置等;

      6、无需XML配置,减少冗余代码 。

      未使用springboot时,如果我们要搭建一个springweb项目环境,我们需要配置web.xml及各种xml的配置文件来集成其他第三方的框架,而这些springboot已经帮我们做了集成,我们不再需要去配置。

    二 入门实例

      创建springboot项目有2中方式,1种是通过ide来创建,一种是官方网站创建(https://start.spring.io创建完成后会将工程下载到本地)然后导入ide即可,本文我们通过idea创建项目。

      1 在idea的工具栏 file-->new project 如下图

    会弹出选择工程类型的框,如下图

    这个时候我们有2种选择,一种是使用Spring Initializr创建,一种是使用Maven或者Gradle创建。这两种方式的不同的地方是使用方法二创建的是空项目,我们需要自己去修改添加所需要的依赖,方式一在创建的过程中,我们可以在ide中直接选择需要的依赖且会生成一个项目的根启动类。本文我们使用Spring Initializr来创建项目。点击上图的Next

    输入Group、Artifact、Package的对应的信息,再点击next

    这是我们可以选择我们的项目要运行的springboot的版本和需要的依赖包(本文我们只选择依赖web),然后点击Next

    这是弹框会显示我们项目的名称及项目的路径,点击Finish。初始时会下载springboot默认依赖的一些jar包,需要一会时间,我们等待它下载完成。之后我们可以看到项目的结构

    pom.xml内容如下,2.0.8版本不是一个发布版本,在我们的实际项目中,最好还是要引用release版本的。

    <?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>org.allen.demo</groupId>
        <artifactId>springboot-helloworld</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <packaging>jar</packaging>
    
        <name>springboot-helloworld</name>
        <description>Demo project for Spring Boot</description>
    
        <parent>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>2.0.8</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>
            <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>

    生成的启动类,一个可执行的main方法。

    package org.wl.demo;
    
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    
    @SpringBootApplication
    public class HelloWorldApplication {
    
        public static void main(String[] args) {
            SpringApplication.run(HelloWorldApplication.class, args);
        }
    }

    默认在类上边使用了@SpringBootApplication注解,这个注解是一个符合注解,相当于同时使用

    @SpringBootConfiguration  指定类为配置类
    @EnableAutoConfiguration  开启自动配置
    @ComponentScan 指定扫描路径

    下来创建一个可以访问的控制器,使用@RestController注解,它是一个复合注解,相当于同时使用了@Controller和@ResponseBody注解

    package org.wl.demo.web;
    
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    @RestController
    public class HelloController {
    
        @RequestMapping("/hello")
        public String hello(){
            return "hello world";
        }
    
    }

    执行main方法,启动项目,在控台可可以看到启动的日志信息

    [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8080 (http) with context path ''
    [           main] org.wl.demo.HelloWorldApplication     : Started HelloWorldApplication in 3.591 seconds (JVM running for 4.784)

    内嵌的tomcat服务器已经启动,启动端口是8080,更路径是'',我们访问控制器的hello方法

    这样一个web项目环境就搭建成功了,使用起来还是很简单方便的。

    在上边的日志信息中,默认启动端口是8080,访问根路径是‘’,如果我们希望修改的话也是可以的,只需要在application.properties中修改

    修改端口,从默认的8080修改为8090

    server.port=8090

    修改根路径 修改前是‘’,修改后为‘/helloworld’

    server.servlet.context-path=/helloWorld

     

  • 相关阅读:
    微信JS SDK Demo
    微信jssdk常见错误及解决方法
    多机定时任务处理
    python zip压缩文件 并移动到指定目录
    Nginx + Uswgi + Django的部署
    pycharm 安装第三方库报错:AttributeError: 'module' object has no attribute 'main'
    zabbix监控
    转:老张喝茶 教你同步异步 阻塞与非阻塞
    odoo开发笔记 -- 多对多字段追加数据
    xml文件对比工具推荐:Altova XMLSpy 2013
  • 原文地址:https://www.cnblogs.com/love-wzy/p/10303697.html
Copyright © 2020-2023  润新知