FreeMarker 對null值的處理技巧

2021-09-13 01:35:53 字數 722 閱讀 1754

1.判斷是否存在,通過exists關鍵字或者"??"運算子。都將返回乙個布林值 

user.name?exists 

user.name??

<#if user.name?exists>

//to do

<#if user.age??>

//to do

2.忽略null值 

假設前提:user.name為null 

$,異常 

$,顯示空白 

$,若user.name不為空則顯示本身的值,否則顯示vakin 

$,同上 

$,同上

! :default value operator,語法結構為:unsafe_expr!default_expr,

比如 $ 當mouse不存在時,返回default value;

(product.color)!"red"  這種方式,能夠處理product或者color為miss value的情況; 

而product.color!"red"將只處理color為miss value的情況

?? : missing value test operator ,測試是否為missing value 

unsafe_expr?? :product.color??將只測試color是否為null

(unsafe_expr)??:(product.color)??將測試product和color是否存在null 

FreeMarker內建外掛程式對序列

內建外掛程式對序列 一 first 序列的第乙個值,如果序列為空,模板處理時會拋異常 assign maple hhh bbb ccc ddd eee ttt hhh 將輸出hhh 二 last 序列的最後乙個值,如果序列為空,也會拋異常 將輸出hhh 三 seq contains 判斷乙個序列中是...

mysql 對null的處理

首先null並不是空,而表示 沒有值 或 未知值 null不屬於任何型別 1.當建立乙個表,字段約束沒有指定為not null時,沒有新增資料時預設為null,不管是整型還是字元型別 如.create table test arg1 varchar 30 arg2 int select from t...

oracle 對 Null的處理

1 預設處理 oracle在order by 時預設認為null是最大值,所以如果是asc公升序則排在最後,desc降序則排在最前 2 使用nvl函式 nvl函式可以將輸入引數為空時轉換為一特定值,如 nvl employee name,張三 表示當employee name為空時則返回 張三 如果...