论坛首页 Java企业应用论坛

web开发中Velocity的应用

浏览 16245 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-07-26  
补充一下,ddandyy,

1. 你确定上面回复的“用equals”,可以使用在int型上?

2. 你确定你用过Velocity?  算了,给你见识个东东吧。
ERROR 2007-07-26 11:43:54,656 CommonsLoggingLogSystem:logVelocityMessage - Right side ($user.ACCEPT_EMAIL) of '==' operation has null value. If a reference, it may not be in the context. Operation not possible. /WEB-INF/view/test/testVar.vm [line 4, column 13]

没有实践就没有发言权,velocity到底怎么样,只有亲身用过的才知道。
0 请登录后投票
   发表时间:2007-07-26  
sg552 写道
不是差了些,而是差很多。

对于数字, == 和equals 的实际效果是一样的。

JSP的灵活,在其中写JAVA代码是表现之一。你不能一棒子打死。如你不愿意写代码,写个tag出来也可以啊。或者用JSTL。

对于velocity,如果context中没有那个变量,就用不了。还不能判断null, 只能建立基本变量类型和Array, 1.4和以下的连Map, Set都建立不了。可能你认为这些都不是大问题,但是开发的时候就够让人头疼的了。



#if ($obj)  ##true或者不为null
0 请登录后投票
   发表时间:2007-07-26  
楼上的方法不错,试过了,效果很好。
0 请登录后投票
   发表时间:2007-07-26  
如果前面是int当然不行 int有equals方法么  难道你就不会转一下么

#set($sss = "$person.getStatus()")  
#if ($sss.equals())

没怎么多用过   从接触到现在也就只有两年而已

........   看来上面都帮我说过了  我也不多说了   不知道你到底好好看过文档没有.....  唉....



@_@   先看后面再看前面的习惯不好  看来得改改了.........

我前面说的对数字支持不好不是指单纯的符号应用

你是否试过 if ($num + 1 > 3)
0 请登录后投票
   发表时间:2007-07-26  
想输出 ($num + 1)的值必须借助中间变量,这个很郁闷.
还有对float类型好像不支持.
0 请登录后投票
   发表时间:2007-07-26  
如果前面有 #set($num = 1) 还好
如果是直接从request中拿出来就 ($num + 1) .........  唉.......

还好这种东西我们业务中遇到的比较少
0 请登录后投票
   发表时间:2007-07-26  
$num是int,输出是1+1,并不是想要的2,所以想得到2,就必须#set ($num = $num + 1) 然后 $num
0 请登录后投票
   发表时间:2007-07-26  
我说的就是你写的这种   直接从request中拿出来就这么写  也不行
#set ($num = $num + 1)  
直接这么写  后面算完就已经错了  不管放不放到前面都没意义的
0 请登录后投票
   发表时间:2007-07-27  
jsp太灵活, 导致不能从架构上约束程序员.
有些开发者习惯将业务逻辑扩散到页面上, 怎么办?

另, "( $linkFile"  为什么很多人喜欢在"("与"$linkFile"之间加个空格, 看到过很多这样的代码了, 按照checkstyle代码规则,这里是不能加空格的.
0 请登录后投票
   发表时间:2007-07-27  
个人感觉Velocity 作为数据显示模板是挺不错的...语法简单易用..而且引用Java对象只需要前面对象名后面加点还有属性名..确实挺方便的..
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics