学习springboot


创建一个spingboot项目的链接

1 在templates文件夹中写index.html

![在这里插入图片描述](https://img-blog.csdnimg.cn/5fd96ed7a4f444068b6c6d1bcdfd5516.png在这里插入图片描述

1.1 编写index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h1>hello</h1>

</body>
</html>

1.2 编写application.yml

spring:
  web:
    resources:
      static-locations: classpath:/templates

1.3 编写HelloController类

package com.usc.demo01.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class HelloControl {
    @RequestMapping
    public String index(){
        return "index.html";
    }
}

1.4运行

在这里插入图片描述

运行后在浏览器输入 localhost:8080/
在这里插入图片描述

2 在test中写测试文件(有自动装配)

在这里插入图片描述

2.1 编写Person和Dog类

package com.usc.demo01.pojo;

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
import org.springframework.validation.annotation.Validated;

import javax.validation.constraints.NotNull;
import java.util.List;
import java.util.Map;

@Component
@ConfigurationProperties(prefix="person")
@Validated
public class Person {
    //@Email(message="name格式不正确")
    @NotNull(message = "不能为空")
    private String name;
    private int age;
    private Map<String,Object> maps;
    private List<Object> lists;
    private Dog dog;

    public Person() {
    }

    public Person(String name, int age, Map<String, Object> maps, List<Object> lists, Dog dog) {
        this.name = name;
        this.age = age;
        this.maps = maps;
        this.lists = lists;
        this.dog = dog;
    }

    public String getName() {
        return name;
    }

    public int getAge() {
        return age;
    }

    public Map<String, Object> getMaps() {
        return maps;
    }

    public List<Object> getLists() {
        return lists;
    }

    public Dog getDog() {
        return dog;
    }

    public void setName(String name) {
        this.name = name;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public void setMaps(Map<String, Object> maps) {
        this.maps = maps;
    }

    public void setLists(List<Object> lists) {
        this.lists = lists;
    }

    public void setDog(Dog dog) {
        this.dog = dog;
    }

    @Override
    public String toString() {
        return "Person{" +
                "name='" + name + '\'' +
                ", age=" + age +
                ", maps=" + maps +
                ", lists=" + lists +
                ", dog=" + dog +
                '}';
    }
}
package com.usc.demo01.pojo;

import org.springframework.stereotype.Component;

@Component
public class Dog {
    private String name;
    private int age;


    public Dog() {
    }

    public Dog(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public int getAge() {
        return age;
    }

    public void setName(String name) {
        this.name = name;
    }

    public void setAge(int age) {
        this.age = age;
    }

    @Override
    public String toString() {
        return "Dog{" +
                "name='" + name + '\'' +
                ", age=" + age +
                '}';
    }
}

2.2 编写pom.xml

修改版本

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

解决springboot配置注解处理器

 <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-configuration-processor</artifactId>
            <optional>true</optional>
        </dependency>

解决版本修改依赖

   <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.9.RELEASE</version>
        <type>pom</type>
    </dependency>

解决验证依赖

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

2.3 修改application.yml

person:
  name: wxy${random.uuid}
  age: ${random.int}
  maps: {k1: v1,k2: v2}
  lists:
    -java
    -c
    -python
  dog:
    name: qyq
    age: 87

2.4编写DemoApplicationTests类

package com.usc.demo;

import com.usc.demo.pojo.Person;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

@SpringBootTest
class DemoApplicationTests {

    @Autowired
    private Person person;
    @Test
    void contextLoads() {
        System.out.println(person);
    }

}

2.5运行

右键DemoApplicationTests类
这一行显示输出
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Boot MVC是一种基于Spring Boot框架的Web开发框架,它提供了一种简化和快速开发Web应用程序的方式。下面是学习Spring Boot MVC的一些步骤和内容: 1. 学习Spring Boot基础知识:在学习Spring Boot MVC之前,建议先掌握Spring Boot的基础知识,包括Spring Boot的核心概念、配置方式和常用功能等。 2. 理解MVC架构:MVC(Model-View-Controller)是一种常用的软件设计模式,它将应用程序分为模型、视图和控制器三个部分。在学习Spring Boot MVC时,需要理解MVC的基本原理和各个组件的作用。 3. 创建Spring Boot项目:使用Spring Initializr或者手动配置方式创建一个Spring Boot项目。确保项目包含了所需的依赖,如spring-boot-starter-web等。 4. 配置路由和控制器:在Spring Boot MVC,可以使用注解方式配置路由和控制器。通过@Controller注解定义控制器类,使用@RequestMapping注解定义请求路径和处理方法。 5. 处理请求和响应:学习如何处理不同类型的请求,如GET、POST等,并学习如何获取请求参数、处理表单提交、返回JSON数据等。 6. 视图解析和模板引擎:学习如何配置视图解析器,将控制器返回的逻辑视图名称解析为具体的视图模板。常用的模板引擎有Thymeleaf、Freemarker、JSP等。 7. 数据绑定和验证:学习如何进行数据绑定,将请求参数绑定到控制器方法的参数上,并学习如何进行数据验证,确保数据的有效性。 8. 异常处理:学习如何处理异常,包括全局异常处理和局部异常处理。可以通过@ControllerAdvice注解定义全局异常处理类,通过@ExceptionHandler注解定义局部异常处理方法。 9. 静态资源管理:学习如何配置和管理静态资源,如CSS、JavaScript、图片等。可以使用静态资源处理器来处理静态资源的访问。 10. 测试和调试:学习如何编写单元测试和集成测试,确保应用程序的正确性。可以使用Spring Boot提供的测试框架,如JUnit、MockMvc等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值