每天记录学习,每天会有好心情。*^_^*
今天将为大家分析一个基于web的数字图书馆系统(本文以数字图书馆的概念介绍为切入点展开论述,接着简单论述数字图书馆建设的现状,然后从信息资源数字化虚拟化、信息使用网络化共享化、信息存取方便化自由化以及日常工作个性化专业化四个角度学习论述数字图书馆的设计特点,最后从信息输入、资源整合以及人员培训三个角度论述数字图书馆的科学建设。采用当前非常流行的B/S体系结构,以JAVA作为开发技术,主要依赖SSM技术框架,mysql数据库建立本系统。
基于web的数字图书馆系统项目使用框架为SSM(MYECLIPSE),选用开发工具为MYECLIPSE。基于web的数字图书馆系统为一个 后台项目。
为了完成基于web的数字图书馆系统,我们首先需要对该系统进行需求分析。一个基于web的数字图书馆系统应包含用户角色有管理员、用户。为了能让用户顺利登陆系统完成相关操作,需要为每种登陆角色设置账户和密码字段。
在系统的功能中,查询是一个重要的表。这个表使得资源关联了起来。在查询表中查询的名字与资源的mingzi字段对应
,他们拥有关联关系。
总结得出基于web的数字图书馆系统项目所有数据为:管理员(admin)、用户(yonghu)、资源(ziyuan)、信息输出(xinxishuru)、查询(chaxun)
基于web的数字图书馆系统之管理员表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 管理员id username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码 quanxian | VARCHAR(255) | | 权限
基于web的数字图书馆系统之用户表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 用户id xingming | VARCHAR(255) | | 姓名 xingbie | VARCHAR(255) | | 性别 nianling | VARCHAR(255) | | 年龄 username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码
基于web的数字图书馆系统之资源表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 资源id zhonglei | VARCHAR(255) | | 种类 nierong | VARCHAR(255) | | 内容 mingzi | VARCHAR(255) | | 名字 guige | VARCHAR(255) | | 规格
基于web的数字图书馆系统之信息输出表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 信息输出id shangchuanshijian | VARCHAR(255) | | 上传时间 neirong | VARCHAR(255) | | 内容 guige | VARCHAR(255) | | 规格 mingzi | VARCHAR(255) | | 名字
基于web的数字图书馆系统之查询表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 查询id mingzi | VARCHAR(255) | | 名字 zhonglei | VARCHAR(255) | | 种类 guige | VARCHAR(255) | | 规格
SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- ---------------------------- -- Table structure for ggjywebdsztsgxt -- ---------------------------- DROP TABLE IF EXISTS `t_admin`; CREATE TABLE `t_admin` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '管理员id',`username` VARCHAR(255) DEFAULT NULL COMMENT '账号',`password` VARCHAR(255) DEFAULT NULL COMMENT '密码',`quanxian` VARCHAR(255) DEFAULT NULL COMMENT '权限',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='管理员'; -- ---------------------------- DROP TABLE IF EXISTS `t_yonghu`; CREATE TABLE `t_yonghu` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '用户id',`xingming` VARCHAR(255) DEFAULT NULL COMMENT '姓名',`xingbie` VARCHAR(255) DEFAULT NULL COMMENT '性别',`nianling` VARCHAR(255) DEFAULT NULL COMMENT '年龄',`username` VARCHAR(255) DEFAULT NULL COMMENT '账号',`password` VARCHAR(255) DEFAULT NULL COMMENT '密码',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='用户'; -- ---------------------------- DROP TABLE IF EXISTS `t_ziyuan`; CREATE TABLE `t_ziyuan` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '资源id',`zhonglei` VARCHAR(255) DEFAULT NULL COMMENT '种类',`nierong` VARCHAR(255) DEFAULT NULL COMMENT '内容',`mingzi` VARCHAR(255) DEFAULT NULL COMMENT '名字',`guige` VARCHAR(255) DEFAULT NULL COMMENT '规格',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='资源'; -- ---------------------------- DROP TABLE IF EXISTS `t_xinxishuru`; CREATE TABLE `t_xinxishuru` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '信息输出id',`shangchuanshijian` VARCHAR(255) DEFAULT NULL COMMENT '上传时间',`neirong` VARCHAR(255) DEFAULT NULL COMMENT '内容',`guige` VARCHAR(255) DEFAULT NULL COMMENT '规格',`mingzi` VARCHAR(255) DEFAULT NULL COMMENT '名字',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='信息输出'; -- ---------------------------- DROP TABLE IF EXISTS `t_chaxun`; CREATE TABLE `t_chaxun` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '查询id',`mingzi` VARCHAR(255) DEFAULT NULL COMMENT '名字',`zhonglei` VARCHAR(255) DEFAULT NULL COMMENT '种类',`guige` VARCHAR(255) DEFAULT NULL COMMENT '规格',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='查询';
添加信息输出模块:
从页面中通过post方法,将信息输出信息传入到后台服务器中,在tianjiaxinxishuruact
中接收,字段包括上传时间,内容,规格,名字使用insert方法添加数据,将数据同步到
数据库中,完成添加操作。定义添加成功提示信息,添加信息输出成功,并保存到request中具体代码如下:
通过xinxishurudao的insert方法将页面传输的信息输出添加到数据库中 xinxishurudao.insert(xinxishuru);
将添加信息输出成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加信息输出成功");
返回信息输出管理界面
return "forward:/tianjiaxinxishuru.action";
查询信息输出模块:
在浏览器中进入信息输出查询页面时,此时浏览器的地址栏为xinxishuruguanli.action,该地址将响应xinxishuruController类中的xinxishuruguanli,在该方法中,通过selectByexample方法获取所有的信息输出信息,并将该信息保存到request中,在页面进行循环展示。该部分核心代码如下:
生成信息输出样例类,通过example定义查询条件 XinxishuruExample example = new XinxishuruExample();
通过xinxishurudao的selectByExample方法查询出所有的信息输出信息 List xinxishuruall = xinxishurudao.selectByExample(example);
将信息输出信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("xinxishuruall", xinxishuruall);
返回信息输出管理界面
return "forward:/xinxishuruguanli.action";
修改信息输出模块:
在页面填写完修改信息后,点击修改按钮,将数据提交到xiugaixinxishuru中,封装为一个信息输出
,使用update方法修改该信息输出信息,将数据同步到数据库,完成修改操作。
定义修改成功提示信息,修改信息输出成功,并保存到request中具体代码如下:
通过xinxishurudao的修改方法根据id修改对应的信息输出 xinxishurudao.updateByPrimaryKeySelective(xinxishuru);
将修改信息输出成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改信息输出信息成功");
返回信息输出管理界面
return "forward:/xinxishuruguanli.action";
删除信息输出模块:
在页面中通过a标签,shanchuxinxishuru?id=将id传入到后台中,通过shanchuxinxishuru接收信息输出id。使用deleteByid的方法
删除该信息输出,完成删除操作。定义删除成功提示信息,删除信息输出成功,并保存到request中,该部分代码如下:
通过xinxishurudao的删除方法根据id删除对应的信息输出 xinxishurudao.deleteByPrimaryKey(id);
将删除信息输出成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除信息输出成功");
返回信息输出管理界面
return "forward:/xinxishuruguanli.action";