`
zhoutianzhe
  • 浏览: 48743 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

使用struts1应注意的几点

阅读更多
  1:formbean中定义了一个私有变量Varia,jsp页面中有一个标签元素对象的id=“Varia”,结果在action中进行数据填充或取值时报错的问题:


  以在action中进行取值为例:一般情况下都是通过form.getVaria() 这一句直接获取jsp页面中的id为varia的标签元素对象的value值。struts的工作原理是:根据getVaria()方法名,截取到get关键字后面的字符串Varia,然后将其第一个字母转为小写,即变成varia,然后去页面中寻找id=varia的标签对象。因此,如果我们要填充页面数据,form.setVaria("varia"),那么struts也会解析set方法名,截取其后面的字符串Varia,然后将该字符串第一个字母转为小写得到varia,然后去页面中寻找id=varia的标签对象,赋值。因此,jsp页面中的标签元素对象的id属性值的第一个字母必须小写。同时,在formbean中定义私有变量时,也要尽量遵循规范进行首字母小写,例如:private String varia是规范的,但private String Varia则是不规范的。


  不知道在struts2.x的工作原理是否相同?但想想应该也差不多吧。




  2:ActionForm中不能定义Date型的变量,因为jsp页面中的所有数据都是字符串型。这个问题曾经困扰了我整整半天的时间,当时是将一个字段放在表单里提交,结果表单死活不提交,也不显示到底是哪里的错。那个无语呀!

  3:在HTML页面中定义各个标签元素的name、id、property等属性时,千万不要与关键字雷同,否则,页面也是死活不执行。例如:我曾经做文件上传,在表单里这样写:<input type="file" name="file" property="file" contentEditAble="false" /> ,结果表单死活无法提交!最后将属性改为name=files property=files,表单这才变成个小乖乖。


  4:写js代码时,函数的命名也不能与关键字相冲突。我在做表单提交时,没有用type="submit"的按钮来提交,而是使用的普通的type="button"按钮来提交,是这样写的:<input type="button" value="提交" onclick="javascript: submit()" />,结果点击这个按钮,死活不执行submit()函数。后来经理一看,说submit是关键字,于是我将该函数名改为Submit(),就一切恢复正常了!




  5:如果在页面中使用了struts的标签,而struts标签中一般都会通过一个name属性来指向后台的一个formbean,此时,例如在页面中有这样一句:


  资源ID:<input type="text" name="rsrcId" value="<bean:write name='AdvSearch' property='rsrcId' />">

  这里有struts标签的<bean:write>标签,如果此时后台的name为 AdvSearch的formbean中尚未声明名为该标签的property属性所指向的值rsrcId的字段,则项目将无法运行。


分享到:
评论

相关推荐

    struts2_jar.zip

    下面就介绍我自己觉得容易疏漏的几点 第一、struts2很多网上的人都说只添加 struts2-core-2.0.6.jar xwork-2.0.4.jar ognl-2.6.11.jar freemarker-2.3.8.jar commons-logging-1.0.4.jar 这几个jar包,或许在2.0.6...

    (3.0版本)自己写的struts2+hibernate+spring实例

    jar包:项目中除了使用了struts2,hibernate3.0和spring1.8以外(用spring2.0的包也可以.不能低于1.8的包.)还是用了junit,ajax,第三方的table组件.等等.所以需要下载相对应的包. 为了上传jar.我专门申请了一个网盘.所有...

    Extjs Tree + JSON + Struts2 示例源代码

    有几点事项请大家注意 1、blogjava的文件上载要求单个文件不能超过4M,所以,我把web-inf目录下的所有jar文件删除了。 所有jar文件的列表是: commons-beanutils-1.7.0.jar commons-collections-3.2.jar commons-...

    一个简单的主从表的增删改 采用struts+hibernate

    网上有关主从表提交的资料...用了以下包 dom4j,hibernate3,struts1.2,junit,几个常用apache-commons包,cglib,ehcache,mysql-connector,附件代码里面没有把这些库打包,如果要运行请自己网上下载吧,反正都是开源的

    外文翻译 stus MVC

    1:外文原文 Struts——an open-source MVC implementation This article introduces Struts, a Model-View-Controller implementation that uses servlets and JavaServer Pages (JSP) technology. Struts can help...

    FreeMark学习笔记

    在FreeMarker表达式中使用数值需要注意以下几点: 1,数值不能省略小数点前面的0,所以".5"是错误的写法 2,数值8 , +8 , 8.00都是相同的 3,布尔值 直接使用true和false,不使用引号. 4,集合 集合以方括号包括,各集合...

    SSH辅助教学系统jsp开发语言mysql数据库myeclipse设计java编程

    JSP SSH辅助教学系统 是一套完善的WEB设计系统(struts2+spring+hibernate),对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。 二、功能介绍 系统主要有三类用户角色...

    整理后java开发全套达内学习笔记(含练习)

    以“%”开头,[第几个数值$][flags][宽度][.精确度][格式] printf()的引入是为了照顾c语言程序员的感情需要 格式化输出 Formatter;格式化输入 Scanner;正则表达式 输出格式控制: 转义符: \ddd 1到3位8...

    Java面试宝典2020修订版V1.0.1.doc

    使用时候还应注意什么? 14 6、short s1=1;s1=s1+1;有什么错?short s1 = 1;s1+=1 有什么错? 14 7、char为什么能存贮一个汉字? 15 9、final关键字的用法? 15 10、静态变量和实例变量的区别? 15 11、面向对象的...

    ssh(structs,spring,hibernate)框架中的上传下载

    Struts+Spring+Hibernate实现上传下载    本文将围绕SSH文件上传下载的主题,向您详细讲述如何开发基于SSH的Web程序。SSH各框架的均为当前最新版本:  •Struts 1.2  •Spring 1.2.5  •Hibernate 3.0  本文...

    freemarker总结

    在表达式中使用算术运算符时要注意以下几点: 1,运算符两边的运算数字必须是数字 2,使用+运算符时,如果一边是数字,一边是字符串,就会自动将数字转换为字符串再连接,如:${3 + "5"},结果是:35 使用内建的int函数可...

    JspPageControlor分页插件

    &lt;br&gt;运行使用具体案例时,须注意以下几点: 1、运行环境为jdk(1.4以上),Tomcat(5.0以上),mysql(5.0.x); 2、运行时须改动init.properties,把数据库名,用户名和密码改称自己数据库的设置; 3、将...

    java命名规范 开发规范

    1. 模块命名、数据库表命名、域模型命名、各分层的类/方法命名、页面的命名; 模块命名: a. 包命名:com.project_name.module_name.action/service/dao/ws; service的实现都置于...

    ARCH4系统开发指南

    ARCH4系统开发指南 1 ARCH4开发小组 1 1 前言 7 1.1 文档编写目的 7 1.2 文档适用范围 7 1.3 修订历史 8 1.4 参考资料 8 2 常用功能处理方式 9 2.1 如何执行条件查询 9 2.1.1 查询示例 9 2.1.2 查询限制 9 2.1.2.1 ...

    JAVA面试题最全集

    15.MVC (Struts的工作流程) 16.什么是MDA 17.tcp与udp的区别 18.链表与散列表和数组的区别 19.堆和栈的区别 20.ejb的分类及区别 21.你对现在软件业以及国内软件业的看法 22.谈谈java多线程 23.谈谈文件...

    最新Java面试题视频网盘,Java面试题84集、java面试专属及面试必问课程

    │ Java面试题20.jsp和Servlet的相同点和不同点?.mp4 │ Java面试题21.内置对象和四大作用域和页面传值.mp4 │ Java面试题22.Session和Cookie的区别.mp4 │ Java面试题23.mvc模式和mvc各部分的实现.mp4 │ Java面试...

    学生成绩信息管理系统论文 JSP 完整版

    (1)系统应具有实用性、可靠性和适用性,同时注意到先进性。 (2)对各个数据库进行动态管理,防止混乱。 (3)不同用户有不同的查询和修改权限,防止非法查询,非法修改。 (4)能够对查询结果进行分类汇总,...

Global site tag (gtag.js) - Google Analytics