陕西理工学院毕业设计
org.springframework.web.context.ContextLoaderListener ③ 在source中的和之间添加代码。为了防止冲突,删除/Web
Root/WEB-INF/Lib中的cglib_2.1.3.jar。 ④ 添加服务器。在“New Deployment”中选择“Tomcat 6.X”版本,点击确定,成功运行。 ⑤ 继续添加其他包,组件。
(4) 在src目录下新建包com.enterprise.bean。 (5) 在MyEclipse database explorer自己的表上建立hibernate reverse engineering。完成后,
会在src目录下生成hibernate.reveng.xml文件。与此同时,在applicationContext.xml文件中会自动加入如下代码:
这段代码就完整的显示出来了连接数据库时候都要用到的参数和数据。 (6) 继续为“Web project”添加dao、dao.impl、action、service.impl、service、xml包以及相
应的类文件。 (7) 为各个包完成类接口的配置。
到此,系统的基本框架搭建完成。如图5.4所示。 在图5.4中src源文件夹下的各个包的含义如下: com.enterprise.dao:各种操作中的数据接口类;
com.enterprise.dao.impl: 数据接口的实现包,用于存放实现com.enterprise.dao包中接口类的接口具体实现类;
com.enterprise.action: 事件处理类的存放包;
com.enterprise.service:用于存放数据服务层的接口类;
com.enterprise.service.impl:数据接口的实现包,用于存放实现com.enterprise.service包中接口类的接口具体实现类;
com.enterprise.xml:存放各个具体的action具体对应的strusts配置文件,即(.xml)文件; com.enterprise.util:存放了strusts拦截的实现类; struts-xml是系统的struts总体配置文件;
hibernate.reveng.xml 则是整个系统的hibernate反向生成的配置文件。
WebRoot目录下则是存放了各个前台和后台页面的文件,主要包括页面文件,页面设计的CSS文件,图片文件以及相应的Spring配置文件。
第 29 页 共 86 页
陕西理工学院毕业设计
图5.4 SSH的目录结构图
5.2系统前台的设计与实现 5.2.1 网站首页的设计与实现
网站的首页是一个综合性的展示页面,主要包括了导航,网站主要页面的缩影,系统风格的构建等方面。所以首页的设计是一个系统不可或缺的部分,也是很重要的部分。
经过对一些企业网站的观察和学习,结合自己所学的,做了以下设计:
第 30 页 共 86 页
陕西理工学院毕业设计
图5.5 网站首页
在此页面的设计中,分别列出了系统的大体框架和简单的页面导航,主要包括了网站首页,公司简介,新闻动态,产品展示,招商项目,诚聘英才,技术服务,联系我们等几个模块。
模块的分割采用了表格的形式,在设计版面,有软件提供的表格标签
,这样可以很轻松的将页面划分。标签中的行标签和列标签可以清楚的标注各个模块所在的位置,因此,选择表格布局的模式可以很大程度上的避免因显示设备分辨率的不同而造成的页面布局混乱。图片则是通过标签实现引用的,将相应的图片列入相应的表格中,使得画面看上去也十分的有条理,不杂乱。其次页面中多引用的是简单的JavaScript语言来控制页面导航的显示,同时也做一些简单的页面校验。 在设计的时候,也采用了分层的方式,这样可以提高代码的重复利用率。 由于整个页面的设计是动态的JSP页面,所以,页面上的大部分数据都是从数据库中读取出来的,这也为系统的实时性提供了实现方式。可以即时更新,即时显示,提高了网站的工作效率。 在页面初始化显示的时候,是通过web.xml中设置的默认主页进行初始化的。在一般的程序中,只需要在其中指定需要加载的jsp页面就可以了,但本系统的首页是需要动态的加载从数据库获取的内容的,所以此时在web.xml中做了如下改动: /initAll.action 此时,当启动服务器后,页面首先会加载initAll.action,这个action通过与其自身的spring配置 第 31 页 共 86 页 陕西理工学院毕业设计 文件的关联,会找到自己相应的方法执行相应的查询和结果返回。在主页面中,主要是返回的新闻,公告,友情链接,产品,通过ActionContent.getContent().getSession().put()方法,将所得到的集合分别存入各自的session中,以便在页面取出显示。具体的代码实现会在各个页面展示的时候详解。 具体的实现是引用了struts框架中的标签,通过标签的迭代,将页面上所需要的内容从数据库中一一检索出来,并在页面中使用标签的属性显示出来。当然,在显示的时候是以一个java的实体类型作为基础的,这里页面上所显示的属性也就是java实体中的属性,这两者的名称必须一致,否则页面将不能正常显示内容。 设计的邮箱登陆,是为了方便企业客户登陆自己的邮箱,及时与企业联系的一个邮件接口,这里暂时没有实现其功能。 公告版面展示的是系统后台数据库中的内容,这个是由系统的管理员通过系统后台添加的内容。信息内容一般短小,但也提供了一个快速的信息发布模块,便于客户知道企业最新最即时的信息。信息的即时显示主要通过以下代码实现。 联系方式则提供一种简单的联系信息,这样,也方便了客户能更快捷的通过多种信息渠道联系到企业的服务人员,更加提高了企业的工作效率和信息采集率。 另外在页面设计的时候,为了方便客户的快速留言和企业的人才信息收集,在主页面的右上方提供了留言板和人才招聘的快速入口,使得客户能快速找到相应的画面,更加快捷方便,同时,也能使企业更快一步得到相应的信息,以便于调整自身的产品设计和内部结构,以更好的适应市场和客户需要。 企业新闻和产品展示是首页中的重点部分,这部分的设计,关系着一个企业中最核心的部分,它不但向客户展示出企业的消息动态,同时,也为客户展示出企业的最新产品信息,更加体现出一个企业适应市场,并快速反应响应市场的运行机制,提高了企业在相同领域的竞争能力。 5.2.2 产品展示的设计与实现 这个模块是一个企业门户网站必不可少的部分,它展示出企业中产品的简略信息,给客户提供了产品信息查看的相关功能,页面的基本框架仍然采用首页的设计风格,在展示产品的时候,只是将产品作为重点展示。如图5.6所示。 程序实现是以Product实体为基本类型,通过其属性的set和get方法进行操作。产品展示作为前台的页面,主要通过struts的标签配合从initAction中获取到的session中保存ProductList在前台页面显示的。利用标签对session中的ProductList进行迭代,从而得到所有的产品信息,并且通过的value属性将对应的产品名称和图片显示出来。这个也是struts中最基本的标签应用,比起传统的<%%>方式要好的多。 第 32 页 共 86 页
|