您的位置:首页 > 科技 > 能源 > 网页设计的岗位叫什么_如何建设网站论坛_广告推广免费发布_自动外链发布工具

网页设计的岗位叫什么_如何建设网站论坛_广告推广免费发布_自动外链发布工具

2024/9/23 3:30:50 来源:https://blog.csdn.net/2301_78714573/article/details/142407006  浏览:    关键词:网页设计的岗位叫什么_如何建设网站论坛_广告推广免费发布_自动外链发布工具
网页设计的岗位叫什么_如何建设网站论坛_广告推广免费发布_自动外链发布工具

Thymeleaf 是一种用于 Web 和独立环境的现代服务器端 Java 模板引擎,它能够处理 HTML、XML、JavaScript、CSS 等多种类型的文件。

构建项目:

 添加依赖:

<?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>3.3.3</version><relativePath/> <!-- lookup parent from repository --></parent><groupId>com.ktjiaoyu</groupId><artifactId>Spring-Thymeleaf</artifactId><version>0.0.1-SNAPSHOT</version><packaging>war</packaging><name>Spring-Thymeleaf</name><description>Spring-Thymeleaf</description><properties><java.version>21</java.version></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-jpa</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><scope>runtime</scope><optional>true</optional></dependency><dependency><groupId>com.mysql</groupId><artifactId>mysql-connector-j</artifactId><scope>runtime</scope></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.18</version></dependency><!-- 导入 mybatis-plus 包 --><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-spring-boot3-starter</artifactId><version>3.5.7</version></dependency><dependency><groupId>org.thymeleaf</groupId><artifactId>thymeleaf</artifactId><version>3.1.2.RELEASE</version></dependency><dependency><groupId>nz.net.ultraq.thymeleaf</groupId><artifactId>thymeleaf-layout-dialect</artifactId></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency></dependencies><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>

 application.yml

spring:# 热部署默配置devtools:restart:enabled: true # 热部署默认会重启additional-paths: src/main/java # 指定监控的路径exclude: static/**,public/**#配置数据源datasource:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://localhost:3306/crm?useUnicode=true&characterEncoding=utf-8username: rootpassword: 123456#  mvc:
#    view:
#      prefix: /templates/
#      suffix: .html#  profiles:#    active: devthymeleaf:cache: true# 检查模板是否存在,然后再呈现check-template: true# 检查模板位置是否正确(默认值:true)check-template-location: true# Context-Type的值(默认值:text/html)servlet:content-type: text/html# 开启MVC Thymeleaf视图解析(默认值:true)enabled: true# 模板编码encoding: UTF-8# 要被排除再解析之外的视图名称列表,用逗号分隔excluded-view-names:# 要运用于模板之上的模板模式。呈现StandardTemplate—ModeHandlers(默认值:HTML5)mode: HTML5# 在构建URL时添加导视图名称前的前缀(默认值:classpath:/templates/)prefix: classpath:/templates/# 在构建URL时添加导视图名称后的前缀(默认值:.html)suffix: .html# Thymeleaf模板解析器在解析器链中的顺序,默认情况下,它排第一位,顺序从1开始,只有在定义了额外的TemplateResolver Bean时才需要设置这个属性。template-resolver-order:# 可解析的视图名称列表,用逗号分隔
#    view-names:# 日志输出
logging:level:com.bdqn.mapper: traceroot: warnpattern:console: '%p%m%n'# THYMELEAF(ThymeleafAutoConfiguration)# 开启模板缓存(默认值:true)server:# 服务器端口port: 8080servlet:encoding:charset: UTF-8# contextPath一般不用配置#    context-path: /crm# 错误页,指定发生错误时,跳转的URLerror:path: /error# session最大超过时间(分钟),默认为30reactive:session:timeout: 60# tomcat最大线程数,默认为200tomcat:threads:max: 600# tomcat的URI编码uri-encoding: UTF-8# 存放Tomcat的日志、Dump等文件的临时文件夹,默认为系统的tmp文件夹basedir: /tmp/log# 打开Tomcat的Access日志,并可以设置日志格式# server.tomcat.access-log-enabled=true# server.tomcat.access-log-pattern=# accesslog 目录,默认再basedir/logs# server.tomcat.accesslog.directory=# 日志文件目录

Model准备 

package com.ktjiaoyu.crm.service;
import com.ktjiaoyu.crm.pojo.User;
import java.util.List;
public interface UserService {public User login(String usrName, String usrPassword);public User addUser(User user);public void deleteUser(Long usrId);public User updateUser(User user);public User getUser(Long usrId);public List<User> findAllUsers();
}

 控制器开发:

package com.ktjiaoyu.crm.controller;
import com.ktjiaoyu.crm.pojo.User;
import com.ktjiaoyu.crm.service.UserService;
import jakarta.annotation.Resource;
import jakarta.servlet.http.HttpServletRequest;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import java.util.Date;
import java.util.List;
@Controller
public class ExampleController {@Resourceprivate UserService userService;//for循环@GetMapping(value = "/list")public String list(Model model){List<User> list=userService.findAllUsers();model.addAttribute("users",list);return "demo/list";}//条件判断if/unless@GetMapping(value = "/if")public String ifunless(Model model){model.addAttribute("flag","yes");return "demo/if";}@GetMapping(value = "/hello/{id}")public String getUser(@PathVariable("id") Long usrId, Model model){User user = userService.getUser(usrId);model.addAttribute("user",user);return "demo/hello";}//@GetMapping(value = "/string")public String getString(Model model, HttpServletRequest request){//演示赋值,字符串拼接model.addAttribute("userName","ktjiaoyu");request.setAttribute("test","request");request.getSession().setAttribute("test","session");model.addAttribute("date",new Date());return "demo/string";}//内联@GetMapping(value = "/inline")public String inline(Model model){model.addAttribute("userName","ktjiaoyu");return "demo/inline";}}

 页面开发(这个自行编写就好)

这个是一个简单的示例,后续大家可以自己去试一试

总结:

Thymeleaf 的特点

  1. 自然模板

    • Thymeleaf 模板是自然的,因为它们可以直接作为 HTML 文件编写,不需要额外的标签库或特定的语法。开发人员可以使用熟悉的 HTML 标签和属性,同时在需要动态内容的地方插入 Thymeleaf 表达式。
    • 例如,在 HTML 中可以使用th:text属性来设置元素的文本内容:<span th:text="${message}">默认文本</span>。这里,${message}是 Thymeleaf 表达式,它将在运行时被动态的值替换。
  2. 强大的表达式语言

    • Thymeleaf 提供了强大的表达式语言,可以访问对象属性、集合、方法调用等。表达式可以用于设置文本内容、属性值、条件判断、循环遍历等。
    • 例如,可以使用th:ifth:unless属性进行条件判断:<div th:if="${user.isAdmin}">管理员内容</div>。这里,如果user对象的isAdmin属性为true,则显示该<div>元素。
  3. 易于集成

    • Thymeleaf 可以轻松集成到各种 Java Web 框架中,如 Spring MVC、Spring Boot 等。它也可以与其他技术栈一起使用,如 JavaScript 框架和前端构建工具。
    • 在 Spring Boot 项目中,只需添加 Thymeleaf 的依赖,配置好模板路径,就可以开始使用 Thymeleaf 模板进行页面渲染。
  4. 支持国际化

    • Thymeleaf 支持国际化,可以根据用户的语言偏好显示不同的文本内容。开发人员可以使用国际化资源文件来定义不同语言的文本,然后在模板中使用 Thymeleaf 的国际化表达式来引用这些文本。
    • 例如,使用th:text="#{message.key}"来引用国际化资源文件中的文本。

二、Thymeleaf 的用法

  1. 配置 Thymeleaf

    • 在 Maven 或 Gradle 项目中,添加 Thymeleaf 的依赖。
    • 在 Spring Boot 项目中,可以通过在application.propertiesapplication.yml文件中配置 Thymeleaf 的相关属性,如模板路径、缓存设置等。
  2. 创建模板文件

    • 创建 HTML 文件作为 Thymeleaf 模板,在文件中可以使用 Thymeleaf 的表达式和属性来插入动态内容。
    • 例如,可以使用th:each属性来循环遍历集合:<ul><li th:each="item : ${items}" th:text="${item}"></li></ul>
  3. 在控制器中返回模板

    • 在 Java 控制器类中,使用Model对象添加数据,并返回模板名称,以便 Thymeleaf 进行渲染。

 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com