SpringBoot注解以及Web应用开发

14 篇文章 0 订阅
6 篇文章 0 订阅

SpringBoot的注解

  • @SpringBootApplication :与@ComponentScan、@Configuration、@EnableAutoConfiguration三个注解等价
  • @ComponentScan :用于扫描组件,可以自动发现和装配Bean且在发现和装配Bean时把Bean加入程序的上下文
  • @Configuration :标注于类上,等同于Spring的XML文件的一个<Bean>
  • @EnableAutoConfiguration : 启动自动装配
  • @RestController :是@Controller(注解一个控制器)和@ResponseBody(改变Springmvc路由)的合集
  • @Bean: 标注在方法上,等同于Spring的XML文件中配置的Bean
  • @Value :用来注入SpringBoot配置文件application.properties中配置的属性值
  • @ControllerAdvice: 包含了@Component,可以被扫描到,统一处理异常
  • @Resource: 可以用在字段、构造方法、方法,并进行自动注入。 和@Autowire不同的是 @Autowired按类型自动注入,@Resource按名称进行注入
  • @Service :标注在类上 表示被标注的类是一个Component 位于服务层
  • @Repository :标注在类 表示被标注的类是一个Component 位于数据存储层
  • @Component: 标注在类上 是一种泛指 表示被标注的对象是组件

SpringBoot的Web应用开发

SpringBoot中的静态页面

在SpringBoot中,默认把静态资源(html文件,图片、css、js)放在src/main/resources/static下;可以看作是默认首页
在这里插入图片描述

实现基于Thymeleaf的Web应用

Thymeleaf是springBoot推荐的动态Web页面的模板引擎

添加Thymeleaf依赖

也可以在创建时勾选Thymeleaf;也可以在pom.xml文件中导入依赖

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

在src/main/resources/templates下创建Web页面(.html),在页面中添加thymeleaf的命名空间

在这里插入图片描述

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta http-equiv="Content-Type" content="text/html" charset="UTF-8">
    <title>主页</title>
</head>
<body>
<h1>
    这是一个页面
</h1>
<p th:text="'hello,'+${ userName }"></p>
<!--"${}"相当于表达式,可以传参-->

</body>
</html>

创建Controller

使用@Controller标注控制器;
@RequestParam参数:
name :参数名
required :是否必要
defaultValue :默认值

package com.example.demo.controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
/**
 * @author Una
 * @date 2022/8/20 17:39
 * @description:
 */

@Controller
public class HelloController {
    @GetMapping(value = "/hello")
    public String getHello(@RequestParam(name = "userName",required = false,defaultValue = "World") String UserName, Model model){
        model.addAttribute("userName" ,UserName);
        return "hello";
    }
}

运行效果

在这里插入图片描述
在这里插入图片描述

实现基于RESTful风格的Web应用

什么是RESTful风格

  1. REST(Representational State Transfer):描述了一个架构样式的网络系统,是一组架构约束条件和使用原则,凡是满足了这些约束条件和使用原则的应用程序或设计就是RESTful
  2. REST原则:
  • a、客户端和服务器之间的交互是无状态的;即使用http协议进行交互
  • b、客户端的无状态请求可以由任意可用的服务器来应答
  • c、服务器端的应用程序状态和功能可以分为各种资源,每个资源都使用URI得到一个唯一的地址
  • d、客户端和服务器端在进行交互时使用的传输方法是标准的http方法(get、post、put、delete等)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值