>  기사  >  Java  >  Java API 개발에서 웹 템플릿 엔진 처리를 위해 Thymeleaf 사용

Java API 개발에서 웹 템플릿 엔진 처리를 위해 Thymeleaf 사용

WBOY
WBOY원래의
2023-06-18 09:02:381146검색

웹 개발에서 템플릿 엔진은 동적 HTML을 생성하는 데 사용되는 도구로, 데이터를 HTML 템플릿과 결합하여 최종 HTML 페이지를 생성합니다. Thymeleaf는 Java 템플릿 엔진으로서 HTML, XML, JSP, JavaScript 및 CSS를 지원하므로 데이터와 템플릿을 분리하여 HTML 생성을 더욱 유연하고 쉽게 유지할 수 있습니다.

이 글에서는 주로 Java API 개발에서 Thymeleaf를 사용하여 웹 템플릿 엔진을 처리하는 방법을 소개합니다.

1. Thymeleaf 소개

Thymeleaf는 웹 환경과 웹이 아닌 환경에서 사용할 수 있는 Java 템플릿 엔진입니다. 개발자를 위한 템플릿 엔진인 Thymeleaf는 Spring과 같은 프레임워크와의 통합을 통해 개발 주기 단축, 코드 양 감소, 외부 종속성 감소, 유지 관리성 향상 등 일련의 이점을 얻을 수 있습니다.

2. 템플릿 엔진 처리에 Thymeleaf 사용

  1. Thymeleaf 종속성 소개

pom.config에 종속성 추가:

<dependency>
    <groupId>org.thymeleaf</groupId>
    <artifactId>thymeleaf-spring5</artifactId>
    <version>3.0.12.RELEASE</version>
</dependency>
  1. Thymeleaf 템플릿 작성

src/main/resources/templates에 HTML 파일 생성 디렉터리:

@Configuration
public class ThymeleafConfig {
    @Autowired
    private ApplicationContext applicationContext;

    @Bean
    public ITemplateResolver templateResolver() {
        SpringResourceTemplateResolver resolver = new SpringResourceTemplateResolver();
        resolver.setApplicationContext(applicationContext);
        resolver.setPrefix("classpath:/templates/");
        resolver.setSuffix(".html");
        resolver.setCharacterEncoding("UTF-8");
        resolver.setCacheable(false);
        return resolver;
    }

    @Bean
    public SpringTemplateEngine templateEngine() {
        SpringTemplateEngine engine = new SpringTemplateEngine();
        engine.setTemplateResolver(templateResolver());
        return engine;
    }

    @Bean
    public ViewResolver viewResolver() {
        ThymeleafViewResolver resolver = new ThymeleafViewResolver();
        resolver.setTemplateEngine(templateEngine());
        resolver.setCharacterEncoding("UTF-8");
        return resolver;
    }
}
    그 중 xmlns:th="http://www.thymeleaf.org" 는 Thymeleaf 태그를 사용한다는 의미이고, ${name}은 전달된 매개변수입니다. .
    1. 템플릿 처리

    컨트롤러에서 요청을 처리하고 Thymeleaf 방식으로 템플릿을 렌더링합니다.

    <!DOCTYPE html>
    <html xmlns:th="http://www.thymeleaf.org">
    <head>
      <title>Thymeleaf Example</title>
    </head>
    <body>
      <p th:text="'Hello, ' + ${name} + '!'" />
    </body>
    </html>
    xmlns:th="http://www.thymeleaf.org" 表示使用 Thymeleaf 标记,${name} 是传递过来的参数。

    1. 处理模板

    在 Controller 中处理请求,并以 Thymeleaf 的方式渲染模板:

    @Controller
    public class HelloController {
        @GetMapping("/hello")
        public String hello(Model model) {
            model.addAttribute("name", "World");
            return "hello";
        }
    }

    其中,"hello" 参数表示处理完请求后需要渲染的模板。

    1. 运行程序

    在浏览器中输入 http://localhost:8080/hello,可以看到输出结果:Hello, World!그 중 "hello" 매개변수는 다음을 나타냅니다. 렌더링할 요청 템플릿을 처리하는 중입니다.

      프로그램 실행

      브라우저에 http://localhost:8080/hello를 입력하면 Hello, World!가 출력되는 것을 볼 수 있습니다. . 🎜🎜3. 결론🎜🎜 Thymeleaf의 단순성과 사용 편의성으로 인해 웹 개발에 널리 사용됩니다. 본 글은 주로 Java API 개발에서 웹 템플릿 엔진 처리를 위해 Thymeleaf를 활용하는 방법을 소개하는 글입니다. 🎜

    위 내용은 Java API 개발에서 웹 템플릿 엔진 처리를 위해 Thymeleaf 사용의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

    성명:
    본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.