本意使用lombok来优雅的编码(你懂的 懒得生成get set)
结果遇坑无语加上小白一个,浪费了半天时间:
当使用@Data注解POJO时:使用freemarker 模板发现无法遍历数据
提示:
DEBUG [freemarker.beans] - Key "text" was not found on instance of com.study.pojo.User.
..........巴拉巴拉巴拉...................
此时POJO
@Data
public class User implements Serializable {
.................
}
最后
去掉@Data
老老实实的生成get set 方法
解决模板标签使用错误问题。
-------------------------------------------------------------------------------------------------
备用:(参考)
<!-- 配置freeMarker视图解析器 --><bean class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.freemarker.FreeMarkerView"/>
<property name="contentType" value="text/html; charset=UTF-8"/>
<property name="exposeRequestAttributes" value="true" />
<property name="exposeSessionAttributes" value="true" />
<property name="exposeSpringMacroHelpers" value="true" />
<property name="suffix" value=".ftl"></property>
<property name="order" value="0"/>
</bean>
<!-- 配置freeMarker的模板路径 -->
<bean class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
<property name="templateLoaderPath" value="/WEB-INF/view/"/>
<property name="defaultEncoding" value="UTF-8"/>
<property name="freemarkerSettings">
<props>
<prop key="template_update_delay">3600</prop>
<prop key="locale">zh_CN</prop>
<prop key="datetime_format">yyyy-MM-dd HH:mm:ss</prop>
<prop key="date_format">yyyy-MM-dd</prop>
<prop key="number_format">#.##</prop>
<prop key="classic_compatible">true</prop>
</props>
</property>
</bean>
<!-- JSP試圖 -->
<bean id="jspviewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver"
p:prefix="/WEB-INF/view/" p:suffix=".jsp" p:order="1">
</bean>