锁定老帖子 主题:提炼并修改的 jodd formTag
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2006-11-11
觉得很不错 立即就去下了一个来用 但是它的jar包含的内容比较多 很多我们用不上 我对他进行了提炼 同时增强了一些功能 1 现在不仅仅支持bean,还支持map了 2 jsp页面的表单区域名可以是标准的bean属性名了 (原先必须要大写字母开头) 大家说说 这里改为忽略大小写 会不会更好呢? 3 支持boolean类型的bean属性了 (以前不处理isXXX方法) 4 beans和scopes属性内的内容数量不一定非要匹配了 <jodd:form beans="bean1,bean2,bean3" scopes="session,request"> 此时 bean2,bean3 都是从 request 中取 以前必须要写成 <jodd:form beans="bean1,bean2,bean3" scopes="session,request,request"> 5 更主要的是 只要两个java文件就搞定 以下出自 SpringSide 手册 Jodd Form taglib 简介 Jodd Form的使用极其简单,因为太简单了,才会名不见经传而被我们选用,让我们罔顾各大Framework的Form Tag. 他只要把<form>的头尾以<jodd:form bean= "mybean">包住即可,就会自动绑定mybean的所有同名属性到普通html标记--input, selectbox, checkbox,radiobox.....在这些input框里不用再写任何代码 可见,它的好处一是节约代码,二是保留了html版的form tag, 不需要用一套taglib来代替 而且支持内嵌对象的绑定,如book.category.name。 比那些需要使用非纯html标记的<ww:input>,逐个绑定input框,select框的Form Tag,虽减了些许灵活性,但实在方便得太厉害。 如果属性来自于request,而不是某个java bean,写<jodd:form bean= "request"> jodd采用的是普通的bean反射,调用所有属性的toString()函数。 注意,jodd在html tag不含value="xxx"属性时才会自动绑定。如果某个input框你不希望jodd自动绑定,或者默认的toString()不能满足要求时,可以手工为该input框写上 value="xxxx",jodd看到你已经定义了属性值,就会自动绕开。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2006-11-14
这个标签好像还是04年的吧,为啥好的表单标签都是很老的呢,不知道大家是除了使用struts的form标签外还使用什么样的form标签呢,哪个最好用呢?
|
|
返回顶楼 | |
发表时间:2006-11-14
这个标签好像还是04年的吧,为啥好的表单标签都是很老的呢,不知道大家是除了使用struts的form标签外还使用什么样的form标签呢,哪个最好用呢?
|
|
返回顶楼 | |
发表时间:2006-11-14
呵呵 其实我也觉得这个小东西很有用
做"编辑"页面的时候超帅啊(尤其是没有使用el的话) 可不知道为什么 用的人这么少啊?? |
|
返回顶楼 | |
发表时间:2006-11-15
checkbox 和 radiobox 绑定不了,
其实数据绑定还可以在客户端进行,高起来也很爽的(虽然不大喜欢用JS) |
|
返回顶楼 | |
发表时间:2006-11-15
checkbox 和 radiobox 绑定不了?
还真没试验 有机会再完善一下 呵呵 确实可以用js 事实上我也用的是js 尤其一些复杂的表单有关联的 或者是有很多其他特殊性的 但是对于大多数form来说 这个还是够用而且好用的 |
|
返回顶楼 | |
发表时间:2006-11-16
可以绑定的,springside也做了个提炼,提炼为springside-joddform-2.0.jar
http://www.springside.org.cn/maven2/springside/springside/springside-joddform/2.0/springside-joddform-2.0.jar 还做了一些扩展,比如支持bean="request" |
|
返回顶楼 | |
发表时间:2006-12-03
这个东东有问题的:
如果在spring项目中,在spring配置文件中加入了 代码一: <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"/> 并且在类中使用 代码二: jodd.servlet.MultipartRequest mrequest = new jodd.servlet.MultipartRequest(request, "UTF-8"); Film film = new Film(); BeanUtil.load(film, mrequest); 这个时候,在tomcat中运行会导致cpu 100%,并且程序一直不停. 我用的是原始的包 不知是怎么回事 通过调试发现,代码一和代码而不能并存. |
|
返回顶楼 | |
发表时间:2006-12-04
之前我不知道 springside里已经提炼了这个jodd form
知道后 我就没在动过我自己写的这个jodd了 事实上我也不建议大家在使用我提炼的这个了 用springside那个吧 楼上的反映的bug在springside-jodd里也有吗?? |
|
返回顶楼 | |
发表时间:2006-12-04
springside的版本达不到只要两个java文件的水平:)
|
|
返回顶楼 | |