基于SSM框架下的BS社区图书馆管理系统
每天记录学习,每天会有好⼼情。*^_^*
今天和⼀个朋友共同完成了⼀个社区图书馆管理系统的设计与实现项⽬,我们在开发时选⽤的框架是SSM(MYECLIPSE)框架。我这个朋友知识有限,只会这个框架,哈哈,都
是为了⽅便他。和往常⼀样选⽤简单⼜便捷的MYECLIPSE作为开发⼯具,这是⼀个后台项⽬。这个系统的介绍是这样的:随着时代的发展和科技的进步,⼈类知识量呈爆发式增
长,⼤量书籍出版,图书馆规模也因此不断扩⼤。不仅如此,由于城市规模增长,⼈⼝众多,⼈们不再希望必须亲临图书馆才能查询书籍,进⾏续借等操作。为了管理⼤量图书,在员⼯精
简的条件下为服务⼤量读者,提⾼管理效率,需要以信息化、⽹络化的图书馆管理系统代替传统的⼿⼯管理,利⽤计算机技术为读者服务。社区图书馆规模较⼩,藏书量往往在数千⾄
数万,可是传统的⼿⼯⽅式也已不能适应现代社会的需要。⽽与此同时,市⾯上现存的图书馆管理系统要么规模庞⼤、结构复杂、功能过多⽽冗余,要么价格超过社区图馆的承受能
⼒。本⽂利⽤免费的JSP技术和MySQL数据库,针对社区图书馆的特殊需要,设计并实现了⼀套基于B/S模式的图书馆管理系统,同时满⾜功能精简、实⽤以及低成本的要求。,⼀
个社区图书馆管理系统的设计与实现应包含⽤户⾓⾊有管理员、会员。为了能让⽤户顺利登陆系统完成相关操作,需要为每种登陆⾓⾊设置账户和密码字段。
系统中社、会员、社员之间具有较强的联系性。他们之间的关系为社员的社与社的mingcheng字段对应、社员的社id与社的id字段对应、社员的会员与会员的mingzi字
段对应、社员的会员id与会员的id字段对应
。在社员表中可以体现出这种关系。
总结得出该系统所有数据为:管理员(admin)、社(shequn)、社员(sheyuan)、会员(huiyuan)
管理员表
字段名|类型|属性|描述
id |INT(11) |PRIMARY KEY|管理员id
username |VARCHAR(255) ||账号
password |VARCHAR(255) ||密码
社表
字段名|类型|属性|描述
id |INT(11) |PRIMARY KEY|社id
mingcheng |VARCHAR(255) ||名称
社员表
字段名|类型|属性|描述
id |INT(11) |PRIMARY KEY|社员id
shequn |VARCHAR(255) ||社
shequnid |VARCHAR(255) ||社id
huiyuan |VARCHAR(255) ||会员
huiyuanid |VARCHAR(255) ||会员id
会员表
字段名|类型|属性|描述
id |INT(11) |PRIMARY KEY|会员id
mingzi |VARCHAR(255) ||名字
username |VARCHAR(255) ||账号
password |VARCHAR(255) ||密码
jieshao |VARCHAR(255) ||介绍
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- ----------------------------
-- Table structure for gg
-
- ----------------------------
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 '密码',PRIMARY
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='管理员';
-- ----------------------------
DROP TABLE IF EXISTS `t_shequn`;
CREATE TABLE `t_shequn` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '社id',`mingcheng` VARCHAR(255) DEFAULT NULL COMMENT '名称',PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='社';
-- ----------------------------
DROP TABLE IF EXISTS `t_sheyuan`;
CREATE TABLE `t_sheyuan` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '社员id',`shequn` VARCHAR(255) DEFAULT NULL COMMENT '社',`shequnid` INT(11) DEFAULT NULL COMMENT '社id',`huiyuan` VARCHAR
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='社员';
-- ----------------------------
DROP TABLE IF EXISTS `t_huiyuan`;
CREATE TABLE `t_huiyuan` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '会员id',`mingzi` VARCHAR(255) DEFAULT NULL COMMENT '名字',`username` VARCHAR(255) DEFAULT NULL COMMENT '账号',`password` VARCHAR ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='会员';
添加社模块:
在shequnController中定义tianjiashequnact接收页⾯传⼊的社参数,定义为shequn。其中shequn包含字段:名称,使⽤tianjiashequnact将该社对象存⼊数据库中,在
shequnMapper中定义了insert⽅法,匹配数据库中的insert into shequn语句实现将社数据存⼊数据库的操作。该部分核⼼代码如下:
通过shequndao的insert⽅法将页⾯传输的社添加到数据库中 shequndao.insert(shequn);
将添加社成功信息,保存到request的message中,在页⾯中给出⽤户提⽰ request.setAttribute("message", "添加社成功");
返回社管理界⾯
return "forward:/tianjiashequn.action";
查询社模块:
社的查询模块实现⽅式为,在页⾯中发起shequnguanli.action请求。通过该请求,响应服务器shequnController类中的shequnguanli,在该⽅法中通过selectByexample进⾏数据的查询操作。将所有的社信息查询后,保存到request中的shequnall中,在页⾯中进⾏展⽰,返回shequnguanli.jsp,该部分核⼼代码如下所⽰:
⽣成样例类,通过example定义查询条件 ShequnExample example = new ShequnExample();
通过shequndao的selectByExample⽅法查询出所有的社信息 List shequnall = shequndao.selectByExample(example);
将社信息,保存到request中,在页⾯通过foreach⽅法进⾏展⽰ request.setAttribute("shequnall", shequnall);
返回社管理界⾯
return "forward:/shequnguanli.action";
修改社模块:
在页⾯填写完修改信息后,点击修改按钮,将数据提交到xiugaishequn中,封装为⼀个社
,使⽤update⽅法修改该社信息,将数据同步到数据库,完成修改操作。
定义修改成功提⽰信息,修改社成功,并保存到request中具体代码如下:
通过shequndao的修改⽅法根据id修改对应的社 shequndao.updateByPrimaryKeySelective(shequn);
将修改社成功信息,保存到request的message中,在页⾯中给出⽤户提⽰ request.setAttribute("mess
age", "修改社信息成功");
返回社管理界⾯
return "forward:/shequnguanli.action";
删除社模块:
在管理页⾯中,点击删除。页⾯将通过a标签的href属性,使⽤get⽅法将该社
的id上传到服务器中,在服务器中通过shequnController类中的shanchushequn进⾏接收,之后调⽤shequnMapper中的deleteByPrimaryKey⽅法根据ID进⾏删除。将删除信息保存到request的message中,在页⾯给出⽤户删除成功的提⽰信息,该部分核⼼代码如下:
通过shequndao的删除⽅法根据id删除对应的社 shequndao.deleteByPrimaryKey(id);
将删除社成功信息,保存到request的message中,在页⾯中给出⽤户提⽰ request.setAttribute("message", "删除社成功");
返回社管理界⾯
return "forward:/shequnguanli.action";
ssm框架实现登录功能