周粉妹, 吴仁平, 钱荣华, 陈 思
(1.扬州职业大学, 江苏 扬州 225009; 2.江苏省华扬太阳能有限公司, 江苏 扬州 225009)
领养流浪动物可唤起人们关爱动物、关注动物生存环境的意识,目前实体宠物领养站点领养渠道较为单一。利用互联网技术开发网上宠物领养平台,可以实现更有效、更方便的宠物领养,有利于对流浪动物的管理。本文运用SSM框架,设计了宠物领养网站。
Java Server Pages(简称JSP)是建立在Servlet规范之上的动态网页开发技术[1]。在JSP文件中,运用HTML语言实现网页中静态内容的显示,Java程序段实现网页中动态内容的显示,并嵌入
SSM框架即SpringMVC、Spring与Mybatis三大框架的统称[2],三大框架利用Spring容器框架的特性, 将Mybatis和SpringMVC通过XML文件的形式整合, 形成SSM框架,见图1。
图1 SSM架构图
Spring是在J2EE技术基础上发展起来的一个开源框架,不仅支持J2EE的所有技术,而且还提供许多额外的功能。Spring让数据层、业务层和表示层的耦合大大降低,因为包含的控制反转(IOC)功能支持依赖注入(DI),所以程序员只需要针对接口编程就可以。Spring就像是整个应用的管理者,管理着整个程序的运行。
SpringMVC框架是以请求为驱动,围绕Servlet设计,将请求发给控制器,然后通过模型对象,分派器来展示请求结果视图。其中核心类是DispatcherServlet,它是一个Servlet,顶层是实现的Servlet接口。
MyBatis的前身是apache的一个名为iBatis的开源项目。2010年iBatis由apache软件基金会迁移到google code,并且更名为MyBatis,2013年又迁移到Github。它是一个基于Java的优秀持久层框架,支持存储过程、自定义SQL和高级映射。
系统开发的总体任务是实现宠物信息系统化,方便管理员管理和用户查询领养宠物等。本系统用户根据操作权限的不同分为管理员、会员和游客,实现的主要功能如下:
管理员登录后台,主要包括会员信息的添加维护、管理员信息的管理、宠物信息的发布管理、各种宠物服务信息的发布、宠物食物信息的发布、处理会员订单、查看回复留言建议及咨询问题、发布公告信息、管理会员评论。
会员登录前台,主要包括在线注册登录、领养宠物、购买宠粮、预定宠物服务,在生成相应的订单后可以进行查看收货、评价订单信息等操作,以及向管理员留言咨询,浏览新闻公告。
游客可以浏览本网站的首页信息,但不具有领养宠物、预订服务等权限。
宠物领养系统功能模块分为前台功能模块和后台功能模块,见图2。
图2 系统功能模块
用户进入系统可以浏览部分内容,若需要领养宠物、预定宠物服务、购买宠粮等,则必须注册成为网站的会员,并正确登录才可以实现。在登录时,系统将用户填写的用户名和密码与数据库中查找到的用户信息进行匹配,输入正确才能完成登录,否则登录失败。
个人资料模块:用户登录系统后,可以更改电话、地址等个人资料。
信息咨询模块:用户登录系统后,可以向客服询问与领养相关的问题,或者给出自己的建议,也可以查看、回复、删除消息。
订单查看模块:会员在个人主页能够查看宠粮订单、宠物洗澡等宠物服务订单。订单显示订单类别、下单日期、订单总账、服务时间、订单状态以及评价信息。
用户评论模块:展示所有用户对购买后生成的订单进行评价的内容。
领养宠物模块:用户登录系统后,可以按照宠物类别查看所有宠物,领养自己喜爱的宠物。
预定宠物服务模块:用户登录系统后,可以浏览管理员发布的所有服务信息(包括宠物洗护、摄影等),选择宠物所需要的服务,并在线预订生成订单,模拟支付。
购买宠粮模块:领养中心同时售卖宠物食物(按照主粮、零食划分不同的模块),用户根据需要加入购物车(可以更改数量、自动计算总价、清空购物车),可在线预订生成订单,模拟支付,并在个人主页查看自己的订单信息。
新闻公告模块:呈现最新的新闻公告信息。
管理员登录进入系统后台,实现对系统前台所有信息的管理及数据库的管理。
会员信息管理模块:数据库中保存着用户注册时填写的信息,管理员可以查看、修改和删除,如:删除违反协议的会员,添加新的用户。
管理员信息管理模块:可以添加新的管理员,删除违反规定的管理员,也可以管理管理员的个人信息,如修改密码。
宠物信息管理模块:及时发布新宠物信息,对已发布的信息进行管理,包括修改、删除宠物信息以及根据宠物类别(小型、中型、大型)查询宠物。
宠物服务信息管理模块:主要实现宠物服务的动态管理,包括宠物洗护、宠物美容、宠物摄影等服务,方便用户在领养宠物后快速定位宠物服务。
宠粮信息管理模块:发布宠粮信息,对宠粮数量进行更新、库存查询等。
订单信息管理模块:能够对已经生成的各项订单信息进行在线管理,包括确认订单、查看订单信息和删除订单,可以根据会员ID、订单类别(包括宠物类、主粮类、零食类、服务类)查询订单。
留言信息管理模块:可以查看会员的留言信息,并给出回复。
新闻公告管理模块:针对领养宠物的相关信息,进行在线发布。
评论信息管理模块:会员可以对已经完成的订单进行评价,管理员可以查看、删除评论内容。
本系统使用Navicat for MySQL数据库管理器作为开发数据库的工具[3],数据库的名称设置为db-pethotel,其中一共有6张表。数据库表的名称及功能如表1所示。
表1 数据库表的名称及功能
本宠物领养系统在部署过程中,采用Java程序设计语言[4]、Eclipse开发工具,可以实现系统编程和运行任务。系统实现环境如表2所示。
表2 系统实现环境
在使用该框架前需要在本项目的web.xml文件中进行一些配置。在web.xml文件中注册UTF-8编码过滤器来解决编码一致问题,加载Spring配置文件,将所有的请求都过滤给Spring MVC来处理。
除了配置web.xml外,还需要进行Spring和Spring MVC两个框架的配置,在本项目中两个配置文件名分别为springMvc-servlet.xml和applicationContext.xml。在applicationContext.xml文件中主要进行DAO接口的扫描、Spring的事务管理和数据源的配置,以及扫描MyBatis的一些相关配置文件。
在springMvc-servlet.xml配置文件中主要进行日期转换器配置、静态资源的配置、视图解析器配置、文件上传的最大值设置、JSON转换器配置和引用消息转换器配置。
在Web项目中,通常将数据库连接的IP、账号和密码等信息单独放在一个数据库配置文件中,本系统将该配置文件命名为database.properties。
为了方便调试,在Web项目中一般使用log日志来输出信息,log4j日志是一个开源项目,本系统配置文件为log4j.properties。
网站首页的背景图片通过img设置url地址来实现,动态伸缩效果使用JS脚本完成,最上方的导航栏设置网站首页、宠物心语、宠物相册、新闻公告、用户评论等链接,最下方设置了登录等按钮,网站主界面如图3所示。
图3 网站主界面
由于篇幅关系,其它设计界面就不一一介绍了。
本文基于SSM设计宠物领养网站,使用Spring MVC 网站开发模式及持久化开发工具MyBatis,轻量级的数据库管理系统MySQL。该设计模式适合小型店铺配套网站的设计,具有一定的实用和推广价值。