在使用velocity的時候,vm模版中,我們通常會做這樣的#if($!status.value==$departmentType.id)判斷,在這種情況下,如果傳過來的$!status.value為空就會報一個null value operation ‘==’不合法,如果是這個值和$department.id的資料類型不一緻,比如說前面是String類型的,而後面id顯然是很可能就和穿過來的formBean中的類型不一樣,就可能出現在控制台輸出left side and right side 的兩倍類型不一樣的情況,這種雖然是velocity頁面模版報的小錯誤,甚至不影響我們資料的顯示和判斷,但是畢竟是我們沒有按照規範來寫才打出來的錯誤,是以我們就得盡量避免這種情況發生,如果發生第一種情況,一般都是我們建立和修改頁面是同一個頁面,是以有些值要初始化的時候一些值為空,我們可以在對頁面初始化的時候,對formBean進行一些值的初始化設定,比如部門類型,員工性别之類的,我們都可以給他一個預設的值,進來的時候就不會再報錯,第二種情況是挺有意思的,解決方法也不一樣,其中一種當然是從根部抓起,要保證明體類中屬性的類型和formBean中的屬性的資料類型保持一緻,第二種就是,vm也提供資料類型轉換,比如,id的話是Integer的,但是比較的前半部分是字元串的,這個時候,用id.toString(),這樣的方法來弄,不過這個治标不治本,最好還是推薦第一種的解決方法
第二個問題要說的就是,跟很多别的模版一樣,vm也有dateformat這個功能
$dateFormatter.format("yyyy-MM-dd HH:mm:ss",$!department.gmtCreated),
這樣用來格式化日期格式的資料