4.2 WEB应用的配置
限于篇幅,仅列出部分关键配置信息。基于J2EE规范,本系统的目录规划如下(表1):
|
父目录 |
子目录 |
描述 |
|
/ |
src |
Java类源代码 |
|
/ |
lib |
系统需要的第三方类库文件 |
|
/ |
docs |
系统开发文档 |
|
/ |
ROOT |
WEB应用根目录 |
|
/ROOT |
WEB-INF |
WEB应用配置目录 |
|
/ROOT/
WEB-INF |
classes |
Java类字节码文件目录 |
|
/ROOT |
_decorators |
sitemesh装饰器页面 |
表1 系统目录结构
在/ROOT/WEB-INF中,存放web.xml、sitemesh.xml、decorators.xml等配置文件。
WEB视图层的配置:
本系统设计了多个装饰页面,下面列出主装饰页面在/WEB-INF/decorators.xml中的配置信息:
在主装饰页面main.jsp中进行页面的布局,形成较为流行的“上-左中右-下”的页面结构,上部显示系统标识及首页链接、各主要子系统链接,下部显示版权申明及联系方式,左部及右部显示常用模块,中部为当前页面的主功能操作区。其JSP页面主体部分列出如下:
|
page="/sitemesh/left.jsp"/> |
|
page="/sitemesh/middle_top.jsp"/>
page="/sitemesh/middle_bottom.jsp"/> |
|
page="/sitemesh/right.jsp"/> |
持久层Hibernate的配置:
首先通过classes/hibernate.cfg.xml文件配置Hibernate的数据库连接信息。然后在每个需要持久化的类二进制文件的所在目录中建立与类同名的.hbm.xml文件配置该类属性与数据表中字段的对应关系以及类之间的映射关系。以下是Customer.hbm.xml的内容。
在需要将Customer对象持久化时,使用如下代码:
SessionFactory sf =
new Configuration().configure().buildSessionFactory();
Session session = sf.openSession();
Transaction tx = session.beginTransaction();
Customer customer = new Customer();
customer.setUsername("customername");
customer.setPassword("customerpassword");
session.save(customer);
tx.commit();
session.close();
4.3业务逻辑层的实现
以交易系统为例,该子系统实现的主要类列出如下(表2):
|
类名 |
主要功能 |
|
IProduct |
产品类接口,规范产品类的主要操作,适应不同企业对产品类的要求。 |
|
Product |
产品类,实现了Iproduct接口。各企业可继承该类,实现对各自产品的管理 |
|
EccCart |
交易中心购物车类,可管理多种交易类型。 |
|
EccCartItem |
购物车子项类 |
|
EccOrder |
订单类 |
|
EnpOptions |
企业选项类,管理业务规则 |
表2 交易系统主要类列表
通过以上类的协作实现了交易系统的主要业务逻辑。
5 结束语
总体上看,采用开源技术设计电子商务实验模拟系统具有开发周期短、系统灵活性高、易于开发及维护等优点,较大程度上降低了系统开发的复杂程度和开发费用,可适应多变的用户需求,具备广阔的应用前景。
参考文献
[1] Java Open Source Programming.Joe Walnes,Ara Abrahamian,Mike Cannon-Brookes,Pat Lightbody.Indianapolis,Indiana:Wiley Publishing,Inc.2004.
[2] 张向先,魏革.电子商务模拟实验系统的商务模式构建.情报科学,2003(12)
[3] 戴 庆,司国海,李鹏飞.基于J2EE 的网上书店的构建技术及应用.大庆石油学院学报.2003(3)