- 1、本文档共3页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Struts2的标签
Struts2的标签,valueStack,$ ,# ,% 的问题
struts2的标签是使用OGNL表达式语言访问数据,OGNL使用的是Context包含对象,而Context的根对象就是ValueStack,所以对于ValueStack中的属性可以直接访问。如下:?ValueStack中有属性name,则访问形式为:${name},或使用struts2标签:s:property?value=name?/但这种形式是不行的:s:property?value=${name}?/,将报错:According?to?TLD?or?attribute?directive?in?tag?file,?attribute?value?does?not?accept?any?expressions这是因为struts2标签将其认为是el标签,而struts2标签不接受el标签。对于这种形式:s:textfield?name=name?value=%{name}/s:textfield?value属性获取值name值时用到了%{name},这是因为不加%{}他就认为value的值就是name了,而不是name属性的值加了%{}后struts2标签才会认出是要name属性的值。其实我们可以直接这样写,而不用value属性s:textfield?name=name/s:textfield对于不是栈顶的对象的访问要使用#,看下面的例子:public?class?TestAction?extends?ActionSupport?{?private?String?name;?private?ExamType?examType;?public?String?execute()?{??this.setName(xian);??ExamType?et?=?new?ExamType();??et.setExam_Type(考试课);??et.setExamT_Id(12l);??et.setComments(考试课是要考试的);??this.setExamType(et);??Map?map?=?ActionContext.getContext().getSession();??map.put(str,?yesyesyes);??return?SUCCESS;?}?public?String?getName()?{??return?name;?}?public?void?setName(String?name)?{??this.name?=?name;?}?public?ExamType?getExamType()?{??return?examType;?}?public?void?setExamType(ExamType?examType)?{??this.examType?=?examType;?}?}页面的body部分bodys:debug/s:debug????//struts2的调试标签,很有用,能看到Context中的内容?s:textfield?name=name/s:textfieldbr?s:textfield?name=examType.exam_Type/s:textfieldbr?????s:property?value=examType.exam_Type/br?????s:property?value=name/br?????input?type=text?value=${examType.exam_Type}?${str}br?s:property?value=#session.str/br/body?打开debug后,可以看到下面这些信息???这里的属性就是属于根对象ValueStack的,可以直接访问?,如s:textfield?name=name/s:textfieldbr?这里的是不是根对象的属性,使用#访问,如?s:property?value=#session.str/br?即#key.proName若这样访问${str}也行,因为属性值是从栈顶一直向下比较而得出值来的
您可能关注的文档
- PCB板翘分析报告.ppt
- PCB 电路设计实验报告.doc
- PCB油墨检测作业指导书.doc
- PCM编码、解码实验.doc
- PCR技术在呼吸道病毒检测中的应用进展.doc
- PC日文输入法_免费下载.doc
- pdca戴明循环模式(精品ppt).ppt
- PC的共混改性研究进展.doc
- pdca管理循环于放射科初步应用的体会(ppt).ppt
- PEP人教版小学(小升初)英语单词归类汇总大全(精心整理,可直接打印).doc
- 220kV变电站主变压器泡沫喷淋灭火系统防误动控制方案研究.docx
- 2024消防水泵房施工方案.docx
- 密闭电石炉净化系操作说明--课件.ppt
- 小儿大动脉炎的科普知识.pptx
- 【备战25年高考数学】题型06 7类三角函数与三角恒等变换解题技巧(原卷版).docx
- 【备战25年高考数学】题型06 7类三角函数与三角恒等变换解题技巧(原卷版) (2).docx
- 2011年高考数学试卷(理)(天津)(空白卷).docx
- 【备战25年高考数学】题型08 10类球体的外接球及内切球解题技巧(解析版).docx
- 【备战25年高考数学】题型09 6类圆锥曲线离心率解题技巧(解析版).docx
- 【备战25年高考数学】题型08 10类球体的外接球及内切球解题技巧(原卷版).docx
文档评论(0)