版权声明:本文为 testcs_dn(微wx笑) 原创文章,非商用自由转载-保持署名-注明出处,谢谢。 https://blog.csdn.net/testcs_dn/article/details/81018472
最近用到freeMarker, 也用到了布尔值,看到一篇文章中这样描述:
在后台逻辑里,定义了布尔类型的变量
将该变量放进ModelMap model
Boolean isAct = false;
model.addAttribute("isACt", isAct);
在前端页面读取该值:
<input type="text" id="isAct" value="${isAct?string ("true","false")}">
var isAct = $('#isAct').val();
[#if isAct == false]
判断时是以 字符串 的形式来判断的
“判断时是以 字符串 的形式来判断的”,这种理解是不对的,至少这种说法表述有问题。
我们可以看到:
<input type="text" id="isAct" value="${isAct?string ("true","false")}">
是通过内建函数“?string ("true","false")”将其转换为了字符串,所以判断的时候需要以字符串的形式来判断。
但是写法又有问题,应该是:
<#if isAct == "false">something</#if>
而直接从实体类中取是怎么用的呢?
比如实体类中的定义:
public class Column {
/**
* True if the column is nullable
*/
private final boolean _isNullable;
/**
* Gets the Nullable attribute of the Column object
*
* @return The Nullable value
*/
public final boolean isNullable() {
return _isNullable;
}
}
而在使用的时候应该是这样的:
<#if column.nullable == true>something</#if>
或者:
<#if column.nullable>something</#if>