Spring Initializr方式构建Spring Boot项目


一,创建Spring Boot项目

创建项目,选择项目类型 - Spring Initializr
在这里插入图片描述

单击【Next】按钮
在这里插入图片描述
添加Spring Web依赖(先选2.7.12,后续修改pom.xml文件为2.7.11)
在这里插入图片描述
单击【Create】按钮
在这里插入图片描述
查看自动生成的pom.xml文件
在这里插入图片描述
代码如下:

<?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.7.11</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>net.army.boot</groupId>
    <artifactId>helloworld02</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>HelloWorld02</name>
    <description>HelloWorld02</description>
    <properties>
        <java.version>11</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>

修改后并刷新依赖后,还是有报红,没有解决选择忽略
在这里插入图片描述

二,创建控制器

在net.army.boot包里创建controller子包,然后在子包里创建HelloController
在这里插入图片描述
添加如下代码:

package net.army.boot.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ResponseBody;

/**
 * 作者:梁辰兴
 * 日期:2023/5/23
 * 功能:Hello控制器
 */
@Controller
public class HelloController {
    @ResponseBody
    @GetMapping("/hello")
    public String hello() {
        return "<h1 style='color: red; text-align: center'>你好,Spring Boot世界~</h1>";
    }
}

三,运行入口类

运行入口类 - HelloWorld02Application
在这里插入图片描述

四,访问Web页面

在浏览器里访问:http://localhost:8080/hello

在这里插入图片描述

五,修改访问映射路径

修改控制器HelloController
在这里插入图片描述

修改代码如下:

package net.army.boot.controller;

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

/**
 * 作者:梁辰兴
 * 日期:2023/5/23
 * 功能:Hello控制器
 */
@Controller
@RequestMapping("/lzy") // 主映射路径
public class HelloController {
    @ResponseBody
    @GetMapping("/hello") // 子映射路径,拼接而成 "/lzy/hello"
    public String hello() {
        return "<h1 style='color: red; text-align: center'>你好,Spring Boot世界~</h1>";
    }
}

重启入口类,在浏览器里访问:http://localhost:8080/hello
在这里插入图片描述
在浏览器里访问:http://localhost:8080/lzy/hello
在这里插入图片描述

总结:使用Spring Boot框架实现Web功能,比在Spring框架里使用Spring MVC实现Web功能简洁很多,不需要Spring配置文件、Spring MVC配置文件,也不需要配置web.xml文件,只要添加了Web依赖,直接就可以使用控制器来进行相应的处理,比如返回字符串数据。

六,利用控制器返回页面

1、添加thymeleaf依赖

在pom.xml文件里添加thymeleaf依赖
在这里插入图片描述
添加内容如下:

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

2、准备图片作为静态资源

在static目录里创建images目录,然后在images目录里放一张图片 - bear.jpg
在这里插入图片描述

3、创建样式表作为静态资源

在static目录里创建css目录,在css目录里创建index.css样式表文件
在这里插入图片描述

添加如下代码:

body{
    background-color: pink;
    text-align: center;
}

4、创建首页

在templates目录里创建index.html页面
在这里插入图片描述

添加如下代码:

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>首页</title>
    <link href="/css/index.css" rel="stylesheet", type="text/css">
</head>
<body>
<h1>Welcome to Spring Boot World~</h1>
<h3 th:text="${#dates.format(today,'yyyy年MM月dd日 HH:mm:ss')}">2023-05-10</h3>
<img src = "/images/bear.jpg" width="300" height="250">
</body>
</html>

注意:today变量是由控制器通过Model对象的属性传到前端的。

5、修改控制器

添加映射方法index(),负责返回首页
在这里插入图片描述
修改代码如下:

package net.army.boot.controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import java.util.Calendar;

/**
 * 作者:梁辰兴
 * 日期:2023/5/23
 * 功能:Hello控制器
 */
@Controller
@RequestMapping("/lzy") // 主映射路径
public class HelloController {
    @ResponseBody
    @GetMapping("/hello") // 子映射路径,拼接而成 "/lzy/hello"
    public String hello() {
        return "<h1 style='color: red; text-align: center'>你好,Spring Boot世界~</h1>";
    }

    @GetMapping("/index")
    public String index(Model model) {
        model.addAttribute("today", Calendar.getInstance());
        return "index"; // 返回逻辑视图名
    }
}

6、启动应用,访问首页

重启程序,访问:http://localhost:8080/lzy/index
在这里插入图片描述

七,一个控制器方法配多个映射路径

1、给hello()方法设置三个映射路径

@GetMapping({“/hello”, “/hi”, “/hey”})
在这里插入图片描述

2、启动应用,测试效果

访问:http://localhost:8080/lzy/hello
在这里插入图片描述

访问:http://localhost:8080/lzy/hi
在这里插入图片描述

访问:http://localhost:8080/lzy/hey
在这里插入图片描述

八,课后练习

任务1、创建Spring Boot项目输出学生信息

创建Spring Boot项目StudentInfo

创建控制器StudentInfoController

运行入口类,在浏览器访问http://localhost:8080/student

任务2、让HelloWorld02实现页面跳转功能

创建登录页面login.html

在首页index.html添加跳转到登录页面的超链接

在控制器里编写负责页面跳转的映射方法

启动应用,查看效果

Spring Initializr是一个由Spring官方提供的快速创建Spring项目的脚手架工具。它可以帮助开发者快速创建项目,并提供了可视化的界面来选择项目构建工具、打包方式Spring版本、语言等。使用Spring Initializr,开发者可以省去手动创建项目和添加集成配置项的繁琐步骤,简化了项目的搭建过程。 你可以通过访问Spring官网(https://spring.io/)或者GitHub上的Spring Initializr项目(https://github.com/spring-io/initializr/)来获取更多关于Spring Initializr的详细信息和文档。在Spring Initializr的界面上,你可以直接创建项目,并选择适合你的配置项,然后进行打包和下载。如果在使用过程中遇到问题,你可以通过在GitHub上提交ISSUE或在公众号「杨同学technotes」后台留言来寻求帮助。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [Spring Initializr](https://blog.csdn.net/qq_26012495/article/details/129227034)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [spring initializr脚手架搭建详解](https://blog.csdn.net/BASK2311/article/details/128092245)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梁辰兴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值