版權聲明:本文為 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>