创建第一个springboot项目、用springboot实现页面跳转、@Controller和@RestController的区别

简介: 这篇文章介绍了如何创建第一个Spring Boot项目,实现页面跳转,以及`@Controller`和`@RestController`的区别,并提供了代码示例和配置说明。

文章目录

  • 一、第一个spring boot项目
  • 二、spring boot跳转到指定页面
  • 三、怎样将后台的信息传递到前台
  • 四、 @Controller和@RestController的区别?
  • 5、重点提示(如果创建的项目没有pom文件)

一、第一个spring boot项目

在这里插入图片描述

在这里插入图片描述
这个一定要勾选上。spring boot使用的是内置服务器
在这里插入图片描述
目录结构
在这里插入图片描述

package com.zheng.Controller;

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

@RestController
public class HelloSpringBoot {

    @RequestMapping("/hello")
    public String hello(){
        return "hello springboot";
    }
}

在这里插入图片描述
测试结果:
在这里插入图片描述

二、spring boot跳转到指定页面

在创建springboot项目的时候,勾选这个选项、模板渲染器。里边有定义好的指定页面路径的配置
在这里插入图片描述
如果在创建项目的时候没有勾选这个选项、也可以后来通过添加maven依赖的形式
这个很重要、关系到页面能否跳转成功。(我当时就是不知道有这个玩意,页面老是出错、烦死个人)

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

未添加thyme leaf 依赖
在这里插入图片描述
添加了thyme leaf依赖
在这里插入图片描述
目录结构就是这个样子的、一样的
在这里插入图片描述
HelloSpringBoot.java

package com.zheng.Controller;

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

@Controller
public class HelloSpringBoot {

    @RequestMapping("/hello")
    public String hello(){
        return "index";
    }
}

简单的前端页面 index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>首页</title>
</head>
<body>
这边是跳转后的地址
</body>
</html>

测试结果
在这里插入图片描述

三、怎样将后台的信息传递到前台

package com.zheng.Controller;

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

@Controller
public class HelloSpringBoot {

    @RequestMapping("/hello")
    public String hello(Model model){
        model.addAttribute("info","hello springboot");
        return "index";
    }
}
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>首页</title>
</head>
<body>
这边是跳转后的地址<br>

接受的信息:<p th:text="${info}"></p>
</body>
</html>

在这里插入图片描述

四、 @Controller和@RestController的区别?

知识点:@RestController注解相当于@ResponseBody + @Controller合在一起的作用。

  1. 如果只是使用@RestController注解Controller,则Controller中的方法无法返回jsp页面,或者html,配置的视图解析器 InternalResourceViewResolver不起作用,返回的内容就是Return 里的内容。

  2. 如果需要返回到指定页面,则需要用 @Controller配合视图解析器InternalResourceViewResolver才行。
    如果需要返回JSON,XML或自定义mediaType内容到页面,则需要在对应的方法上加上@ResponseBody注解。

5、重点提示(如果创建的项目没有pom文件)

在创建项目的时候、type要选择Maven选项、默认是Gradle
在这里插入图片描述

相关文章
|
6月前
|
Java API 网络架构
深入理解 Spring Boot 中的 @RestController 注解:概念与实践
【4月更文挑战第20天】在现代Web开发中,创建RESTful服务已成为常态。Spring Boot通过提供@RestController注解,极大简化了REST API的开发过程。本篇博客旨在详细介绍@RestController的概念、优势以及在Spring Boot项目中的具体应用方法。
316 8
|
JSON Java API
Spring Boot 中的 @RestController 注解是什么,原理,如何使用
Spring Boot 中的 @RestController 注解是什么,原理,如何使用
|
JSON 前端开发 Java
Springboot 中@Controller 和 @RestController 的区别
简述 Springboot 中@Controller 和 @RestController 的区别。
|
Java Spring 前端开发
【spring Boot】Spring中@Controller和@RestController之间的区别
spring Boot入手的第一天,看到例子中的@RestController ............. 相同点:都是用来表示Spring某个类的是否可以接收HTTP请求 不同点:@Controller标识一个Spring类是Spring MVC controller处理器     @RestController:  a convenience annotation that does nothing more than adding the@Controller and @ResponseBody annotations。
1420 0
|
1月前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 实现动态路由和菜单功能,快速搭建前后端分离的应用框架
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 实现动态路由和菜单功能,快速搭建前后端分离的应用框架。首先,确保开发环境已安装必要的工具,然后创建并配置 Spring Boot 项目,包括添加依赖和配置 Spring Security。接着,创建后端 API 和前端项目,配置动态路由和菜单。最后,运行项目并分享实践心得,包括版本兼容性、安全性、性能调优等方面。
145 1
|
19天前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个具有动态路由和菜单功能的前后端分离应用。
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个具有动态路由和菜单功能的前后端分离应用。首先,创建并配置 Spring Boot 项目,实现后端 API;然后,使用 Ant Design Pro Vue 创建前端项目,配置动态路由和菜单。通过具体案例,展示了如何快速搭建高效、易维护的项目框架。
95 62
|
17天前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个前后端分离的应用框架,实现动态路由和菜单功能
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个前后端分离的应用框架,实现动态路由和菜单功能。首先,确保开发环境已安装必要的工具,然后创建并配置 Spring Boot 项目,包括添加依赖和配置 Spring Security。接着,创建后端 API 和前端项目,配置动态路由和菜单。最后,运行项目并分享实践心得,帮助开发者提高开发效率和应用的可维护性。
35 2
|
20天前
|
JavaScript Java 项目管理
Java毕设学习 基于SpringBoot + Vue 的医院管理系统 持续给大家寻找Java毕设学习项目(附源码)
基于SpringBoot + Vue的医院管理系统,涵盖医院、患者、挂号、药物、检查、病床、排班管理和数据分析等功能。开发工具为IDEA和HBuilder X,环境需配置jdk8、Node.js14、MySQL8。文末提供源码下载链接。
|
2月前
|
前端开发 JavaScript Java
基于Java+Springboot+Vue开发的大学竞赛报名管理系统
基于Java+Springboot+Vue开发的大学竞赛报名管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Java编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Java的大学竞赛报名管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。
219 3
基于Java+Springboot+Vue开发的大学竞赛报名管理系统