SpringBoot学习日志(一)第一个springboot程序

什么是Spring

  • Spring是为了解决企业级应用开发的复杂性而创建的,为了简化开发的框架

Spring是如何简化开发

  1. 基于pojo的轻量级和最小侵入性编程
  2. 通过控制反准(IOC,Inversion of Control),依赖注入(DI,dependence inject),面向接口实现松耦合
  3. 基于切面(AOP,Aspect Oriented Programming)和惯例进行声明式编程
  4. 通过切面和模板(Template)减少样式代码

什么是SprirngBoot

Springboot基于Spring开发,本事不提供Spring框架的核心特性及扩展功能,只是用于快速、敏捷的开发新一代基于Spring框架的应用程序

特点

  • Java企业级应用->J2EE->Spring->SpringBoot

  • 约定大于配置

  • 默认帮我们配置

  • 默认了很多框架的使用方式

优点

  • 入门快,但深入难
  • 用默认配置来简化配置
  • 内嵌容器简化Web项目
  • 没有冗余代码生成和XML配置的要求

第一个SpringBoot程序

配置要求

  • JDK 8以上
  • maven
  • springboot
  • IDEA

创建项目

  1. 创建新项目

2.设置项目信息

3.选择你需要的依赖

4.选择文件位置

5.删除3个文件后,就是熟悉的java web项目了

理解Spring项目的基本构成

1.HelloworldApplication文件,SpringBoot项目的主入口

2.application.properties文件,项目的核心配置文件

3.HelloworldApplicationTests文件,用于进行单元测试

maven配置

<?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>
    <!-- 父项目 -->
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.3.1.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.ximate</groupId>
    <artifactId>helloworld</artifactId>
    <version>1.0.0</version>
    <name>helloworld</name>
    <description>First Project for Spring Boot</description>

    <properties>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>

        <!-- 所有springboot依赖都是以spring-boot-starter开头的 -->

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
            <optional>true</optional>
        </dependency>
        <!-- 单元测试 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
            <exclusions>
                <exclusion>
                    <groupId>org.junit.vintage</groupId>
                    <artifactId>junit-vintage-engine</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <!-- WEB依赖,用于实现http接口:tomcat默认嵌入,dispatcherServelet,xml -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>

    <build>
        <!-- 打包插件 -->
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>

右侧为maven的工具栏

代码编写

注意 包需要建在和主入口同一目录下

1.同一目录创建controller包

2.创建Helloworld.java文件

package com.ximate.helloworld.controller;

import org.springframework.web.bind.annotation.RestController;

//@RestController注解,相当于@Controller+@ResponseBody两个注解的结合返回json数据不需要在方法前面加@ResponseBody注解了
//但使用@RestController这个注解,就不能返回jsp,html页面,视图解析器无法解析jsp,html页面
@RestController
public class HelloWorld {
    //RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上。
    @RequestMapping("/hello")
    public String Hello(){
        //接口业务,接受前端参数
        return "hello world";
    }
}

如若想要多级url

一般项目中我们的url一般不会只有一层,一般是,一个url下面套多层,通过嵌套@RequestMapping来实现

//多级url
@RestController
@RequestMapping("/hello")
public class HelloWorld {
    //RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上。
    //接口:http://localhost:8080/hello
    @RequestMapping("/helloworld")
    public String Hello(){
        //接口业务,接受前端参数
        return "hello world";
    }
}

代码运行

1.直接点击右上角的运行符号

2.maven点击package打包,不同于mvc的war包,springboot默认打成jar包,可在maven中配置

  • 打包完成后,jar包会在target目录下
  • jar包运行代码:
java -jar helloworld-1.0.0.jar

第一个程序运行成功!

原文地址:https://www.cnblogs.com/ximate/p/13228428.html