Spring boot杂谈

1.Spring boot常用注解介绍:

  1. @SpringBootApplication: 这是一个组合注解,用于标记主应用程序类。它包括@Configuration@EnableAutoConfiguration@ComponentScan注解注解作用包括:@Configuration:标识该类是一个配置类,定义配置信息。@ComponentScan:启用组件扫描,自动发现和注册Bean。@EnableAutoConfiguration:启用自动配置,根据项目的依赖和配置,自动配置Spring应用。

  2. @RestController: 用于标记RESTful风格的控制器类,它结合了@Controller@ResponseBody注解。

  3. @RequestMapping: 用于映射HTTP请求到处理方法上,注解可以指定处理请求的 URL 路径、HTTP 方法、请求参数、请求头等信息,从而告诉 Spring MVC 如何匹配和处理特定的请求。

  4. @Autowired: 自动装配注解,用于自动注入依赖关系。注解可以用在字段、构造方法、Setter 方法上,它会尝试将匹配的 bean 自动注入到标注了 @Autowired 的地方。

  5. @Value: 用于从配置文件中读取属性值,并将其注入到字段或方法参数中,在使用 @Value 注解注入属性值时,可以这样写:另外,@Value 注解也可以直接作用在方法参数上,用来注入特定值,例如:

  6. @Configuration: 是 Spring 框架中用于定义配置类的注解。通过使用 @Configuration 注解,我们可以将一个普通的 Java 类标记为配置类,并在其中声明 bean、配置组件扫描、定义属性源等。

  7. @Data:@Data是Lombok库中提供的一个注解,它可以帮助我们自动化生成 Java 类的一些标准方法,如 toString()equals()hashCode() 和所有属性的 gettersetter 方法。属于常见的注解。

  8. @Bean:@Bean用于将一个方法标记为Bean的定义方法。在Spring中,通过@Bean注解可以自定义配置和创建Bean,并将其添加到应用程序的上下文中。

  9. @ImportResource:@ImportResource用于将外部的 XML 配置文件导入到当前的 Spring 配置中。通过这个注解,我们可以在使用注解驱动开发的同时,仍然能够使用传统的 XML 配置文件。

 2.前端模板引擎Thymeleaf的整合和使用

   1.使用Thymeleaf前端模板引擎需要四个步骤

1.引入依赖:使用InteliJ IDEA可以在创建项目时在Spring Initializr中直接添加依赖项,如果没有,则需要在pom.xml文件中输入

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

2.修改配置信息: 在application.Properties中输入

spring.thymeleaf.cache=false
spring.thymeleaf.mode=HTML5
spring.thymeleaf.encoding=UTF-8
spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.suffix=.html

3.在HTML中加入引用

        创建一个模板文件,放置在指定的模板目录下,添加命名空间引入:

<html lang="zh" xmlns:th="http://www.thymeleaf.org">

4.使用"th:*"的格式应用各类标签属性

@Controller
public class HelloController{
    @GetMapping("/test")
    public String test1(Model model){
        model.addAttribute("message","新闻");
        return "test1";
    }
}

2.Thymeleaf的基本语法 

        1.常用标签

标签名说明
th:text将标签中的文本内容设置为指定的值
th:if/th:unless分别用于条件判断,如果满足条件就会渲染对应的HTML代码块
th:each循环遍历集合或数组中的元素,生成对应的HTML代码块
th:href用于指定链接地址,可以直接写URL地址或者使用表达式动态地生成链接
th:src用于指定图片资源或者其他静态资源的地址,同样也可以使用表达式动态地生成资源路径
th:class用于设置HTML元素的class属性,可以使用字符串或者表达式动态地修改class
th:style用于设置HTML元素的样式属性,可以使用字符串或者表达式动态地修改样式
th:object用于设置表单中对象数据模型的属性,这个属性会在表单绑定时使用。
th:attr添加或者移除指定的HTML属性,例如:th:attr="disabled=${isDisabled}"会在表单元素上添加或者移除disabled属性
th:value设置表单元素的值,例如:th:value="${user.name}"会为input元素设置value属性
th:selected在下拉菜单中选中指定的选项,例如:th:selected="${color == 'red'}"会将下拉菜单中:value为"red"的选项设置为选中状态
th:replace用于替换整个HTML元素,例如:<div th:replace="fragments/menu :: menu"></div>会将模板片段fragments/menu中定义的menu标签替换为当前标签
th:include用于在当前标签中引入另一个页面或者模板,例如:<div th:include="header.html"></div>会在当前位置引入header.html文件的内容
th:block定义一个块表达式,比如在if语句中需要重新定义局部变量或者添加新的属性,可以使用th:block包裹要执行的代码块
th:fragment声明一个模板片段,常用于定义被其它模板引用的可复用的HTML代码块
th:with用于局部定义变量,可以在当前标签和标签中的各种属性、方法中直接使用定义的变量。例如:th:with="articles=${articleService.getAllArticles()}"
th:switch用于定义一个条件判断块。它需要一个表达式作为参数,并将根据这个表达式的值进行分支判断。
th:case用于定义具体的分支情况。它需要一个参数来指定分支的条件。参数可以是任何表达式,也可以是字符串字面量。

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值