前言
使用thymeleaf模板引擎,首先是pom.xml添加依赖,接着是application.properties对thymeleaf进行配置(可选),最后就是添加Control和html进行使用了。下面通过网页登陆界面进行演示。
添加依赖和配置
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
spring.thymeleaf.cache=false
spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.check-template-location=true
spring.thymeleaf.suffix=.html
spring.thymeleaf.encoding=UTF-8
spring.thymeleaf.servlet.content-type=text/html
spring.thymeleaf.mode=HTML5
spring.thymeleaf.enabled=true
工程结构图,基于之前建立的工程。
LoginControl.java
package com.net.web;
import javax.servlet.http.HttpSession;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
@Controller
public class LoginControl {
private static Logger LOGGER = LoggerFactory.getLogger(LoginControl.class);
@RequestMapping(value="/login")
public ModelAndView login(String username,String password,ModelAndView mv,HttpSession session)
{
LOGGER.info("请求登陆系统!");
LOGGER.info(username);
LOGGER.info(password);
if((username==null) || (password==null))
{
mv.addObject("message","error");
mv.setViewName("login");
LOGGER.info("用户名或密码为空!");
return mv;
}
else
{
mv.addObject("message","success");
mv.setViewName("login");
LOGGER.info("登陆成功");
return mv;
}
}
}
login.html
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>登陆</title>
</head>
<body>
<h4>用户登陆<font color="red"><span> </span><span th:text="${message}"></span></font></h4>
<form class="" action="login" method="post">
<i>用户名</i><input name="username" type="text" id="username"/>
<br>
<i>密<span> </span>码</i><input name="password" type="password" id="password"/>
<br>
<br>
<label><input type="checkbox" class="ace"><span>保存密码</span><span> </span></label>
<button type="submit" id="login_btn">登<span> </span>陆</button>
</form>
</body>
</html>
Control里面指定了浏览器输入login,刚开始用户名和密码为空,通过mv.setViewName("login");设置跳转到login.html,同时mv.addObject("message","error");传递变量名称为message,变量内容为error的内容到网页显示。
网页端通过<form>里的action指定处理点击button的post的网页,也就是login.html。如果通过还是返回login.html,不过这时传递出来的是success。
最后测试结果如下:
结束。