1.8.3 信息发布实现过程
信息发布用到的数据表:tb_info。
用户通过单击页面顶部的“发布信息”超链接,进入信息发布页面,在该页面中填写发布信息后,提交表单,在InfoAction处理类中获取表单数据进行验证,验证成功后向数据表中插入数据,完成信息的发布。下面按照这个操作流程,介绍信息发布的实现过程。
1.实现页面顶部的“发布信息”超链接
在view目录下的top.jsp文件中实现进入信息发布页面的“发布信息”超链接。代码如下:
例程41 代码位置:光盘\TM\01\view\top.jsp
<a href="info_Add.action?addType=linkTo" |
该超链接请求的路径为info_Add.action,根据在Struts配置文件中的配置,由InfoAction类中的Add()方法处理该请求,参数addType通知Add()方法当前请求的操作,其值为linkTo表示仅仅是连接到信息发布页面;若为add,则表示向数据表中插入记录。
2.创建发布信息的addInfo.jsp页面
在信息发布页面中包含一个表单,该表单中的元素如表1.12所示。
表1.12 信息发布页面所涉及的表单元素
|
名 称 |
元 素 类 型 |
重 要 属 性 |
含 义 |
|
addType |
<input type="hidden"> |
name |
通过该表单元素, |
|
infoSingle.infoType |
<s2:select> |
name、list |
信息类别下拉列表框 |
|
infoSingle.infoTitle |
<s2:textfield> |
name |
信息标题 |
|
infoSingle.infoContent |
<s2:textarea> |
name |
信息内容 |
|
infoSingle.infoPhone |
<s2:textfield> |
name |
联系电话 |
|
infoSingle.infoLinkman |
<s2:textfield> |
name |
联系人 |
|
infoSingle.infoEmail |
<s2:textfield> |
name |
E-mial地址 |
addInfo.jsp页面的关键代码如下:
例程42 代码位置:光盘\TM\01\pages\add\addInfo.jsp
<%@ taglib prefix="s2" uri="/struts-tags" %> |
代码贴士
select标签用来实现下拉列表框,emptyOption属性取值为true,表示第一个下拉列表项为空白,取值为false或省略该属性,则不生成空白列表项;list属性则指定用来生成下拉列表项的数据源,若该数据源是一个Map对象,则默认的会将该Map对象的key值作为列表项的值(在程序中使用),将value值作为列表项的标签(显示给用户);name 属性指定了与表单的处理类中对应的setXXX()与getXXX()方法。
fielderror标签用来输出通过Action类的addFieldError()方法保存的信息,param标签则指定要输出保存的哪条信息。如果要输出保存的全部信息,可使用<s2:fielderror/>。“%{}”用来计算表达式,被计算的表达式写在“{}”中,如<s2:property value="%{100+1}"/>,将输出“101”,所以,代码中为param标签的value属性指定的是字符串值typeError,若写为<s2:param value="typeError"/>,则此时的typeError相当于一个页面变量。例如:<s2:set name="myError" value="%{'typeError'}"/><s2:param value="myError"/>与<s2:param value="%{'typeError'}"/>实现的功能是相同的。
3.在InfoAction类中实现处理信息发布请求的方法
例程42中指定表单所触发的请求为info_Add.action,根据例程34中cityinfo.xml文件的配置,表单将被提交到InfoAction类的Add()方法中进行处理,在这之前需要进行表单验证。下面先来创建验证表单的方法。
创建验证表单的validateAdd()方法。
在该方法中,先获取表单数据,然后依次进行验证。首先验证用户输入是否为空,在都不为空的情况下,再来验证输入的“联系电话”和E-mail格式是否正确。在验证过程中,若验证失败,则调用addFieldError()方法保存提示信息。validateAdd()方法的代码如下:
例程43 代码位置:光盘\TM\01\src\com\yxq\action\InfoAction.java
public void validateAdd(){ |
创建处理请求的Add()方法。
表单验证成功后,调用Add()方法处理请求。在该方法中先获取表单数据,然后生成SQL语句,最后调用OpDB类对象的OpUpdate()方法向数据表中插入记录,完成信息发布。Add()方法的代码如下:
例程44 代码位置:光盘\TM\01\src\com\yxq\action\InfoAction.java
public String Add(){ |
4.配置cityinfo.xml文件
对信息发布请求的配置,与列表显示某类别中所有信息请求的配置是同一个配置,可参看例程34。
| 回书目 上一节 下一节 |
|
· 最新Linux认证复习题模.. · 第六章 你能帮我吗?.. · Linux笔试面试题选摘测.. · 08年5月软考网管上午真.. · 性能测试从零开始 目录 · 08年5月软考网工上午真.. |
· 上周拒绝服务攻击(DDo.. · 08年5月各大网上书店及.. · 2008年5月24日软考试题.. · 软件设计师专家临考模.. · 上周网络管理员专家自.. · 网络工程师自测获奖名.. |
|
||||
| · CCNA备考指南与满分攻略 · 浏览器的战国时代 · 世纪枭雄比尔盖茨的王.. · 路由器设置与口令恢复 · 微软出价446亿美元收购.. · IT工程师该不该考CCIE.. · 2008年上半年IT新闻热.. · 反垃圾邮件技术应用 |
· Windows远程桌面应用 · 运营商封堵ADSL共享 中.. · Vista SP1对决XP SP3 · 珊瑚虫QQ作者被判侵权.. · 勇闯IT培训黑色围城 · 2008年上半年IT技术图.. · 华为路由器配置 · 隐私保护技术探讨 |
|||
|
||||
| · SOA 面向服务架构 · SQL Server 2008/2005.. · Apache技术专题 · 三层交换技术专题 · SQL Server入门到精通 · Windows远程桌面应用 · C#技术开发指南 · Apache技术专题 |
· Windows集群服务应用 · C#技术开发指南 · 文档格式标准开战 OOXM.. · 路由器设置与口令恢复 · Linux 集群技术专题 · PHP开发应用手册 · SOA 面向服务架构 · 企业数据恢复指南 |
|||
|
||||
| · SQL Server入门到精通 · SQL Server 2008/2005.. · SOA 面向服务架构 · Apache技术专题 · C#技术开发指南 · 三层交换技术专题 · Apache技术专题 · C#技术开发指南 |
· Windows远程桌面应用 · 企业数据恢复指南 · Windows集群服务应用 · 路由器设置与口令恢复 · Linux 集群技术专题 · SOA 面向服务架构 · 了解统一威胁管理(UTM).. · 反垃圾邮件技术应用 |
|||