SpringMVC+thymeleaf
原创
©著作权归作者所有:来自51CTO博客作者我是大头鸟的原创作品,请联系作者获取转载授权,否则将追究法律责任
这个也是配置了好久,对Spring也是似懂非懂,虽然可以简单的搭建出来项目,但是很多东西确实还是不太理解
但是最近公司的项目上是利用的SpringBoot这个框架,都是Spring啊,所以我自己练习的时候感觉Spring是否也是使用thymeleaf这个模板
比如在修改页面,之前我们需要做的事情是,从后台查询出来每一个字段,然后里面js给每一个控件进行赋值,讲数据回显到页面上,那么我们能不能在加载该页面的时候,一些变量自然的显示到页面上,如何实现这样的功能,这个就是需要我们用到的模板
1.模板的使用----pom.xml 中引入相关的jar
<dependency>
<groupId>org.thymeleaf</groupId>
<artifactId>thymeleaf-spring4</artifactId>
<version>3.0.11.RELEASE</version>
</dependency>
2.配置Spring视图利用thymeleaf实现返回视图的解析 SpringMVC-servlet.xml的配置
<!-- <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/pages/" />
<property name="suffix" value=".html" />
</bean> -->
<bean id="viewResolver" class="org.thymeleaf.spring4.view.ThymeleafViewResolver">
<property name="order" value="1"/>
<property name="characterEncoding" value="UTF-8"/>
<property name="templateEngine" ref="templateEngine"/>
</bean>
<bean id="templateEngine" class="org.thymeleaf.spring4.SpringTemplateEngine">
<property name="templateResolver" ref="templateResolver" />
</bean>
<bean id="templateResolver" class="org.thymeleaf.spring4.templateresolver.SpringResourceTemplateResolver">
<property name="prefix" value="/WEB-INF/pages/"/>
<property name="suffix" value=".html"/>
<property name="templateMode" value="HTML5"/>
<property name="characterEncoding" value="UTF-8" />
</bean>
这个里面有注释的部分,注释的部分是之前的视图解析用到的bean,这个bean仅仅是将后台返回的字符串映射到对应的html文件
没有实现数据渲染的效果
3.调用后台controller返回页面地址和要需要渲染的数据
@RequestMapping(value = "/useredit_init")
public String useredit_init(String rowguid,Model model) {
UserInfo user = userService.getUserByGuid(rowguid);
model.addAttribute("user", user);
return "userinfo/useredit";
}
4.改变html标签,实现数据的渲染功能
<div class="col-xs-6">
<label for="exampleInputPassword1">地址</label>
<input type="text" class="form-control" placeholder="地址" id="address"
required="true" th:value=${user.address}>
</div>
th:value=${user.address}
最后实现的效果就是我们一开始的那张图一样了
希望对你有所帮助