每天记录学习,每天会有好心情。*^_^*
今天和一个朋友共同完成了一个名片管理系统项目,我们在开发时选用的框架是SSM(MYECLIPSE)框架。我这个朋友知识有限,只会这个框架,哈哈,都是为了方便他。和往常一样选用简单又便捷的MYECLIPSE作为开发工具,这是一个 后台项目。这个系统的介绍是这样的:本系统为名片管理系统,采用的开发工具是myeclipse.该系统用于名片信息的分类管理,可以辅助用户完成名片信息的浏览、输入,维护、查询、输出报表以及打印等操作,具有较高的可靠性.支持运行的环境win10,一个名片管理系统应包含用户角色有管理员。为了能让用户顺利登陆系统完成相关操作,需要为每种登陆角色设置账户和密码字段。
系统中名片之间存在关联关系,我们将其关联关系保存在联系记录表中。他们的关联关系是这样的联系记录的名片与名片的xingming字段对应、联系记录的名片id与名片的id字段对应
。
总结得出该系统所有数据为:管理员(admin)、名片(mingpian)、联系记录(lixnijilu)
管理员表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 管理员id username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码
名片表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 名片id xingming | VARCHAR(255) | | 姓名 lianxifangshi | VARCHAR(255) | | 联系方式 dizhi | VARCHAR(255) | | 地址 shuoming | VARCHAR(255) | | 说明
联系记录表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 联系记录id mingpian | VARCHAR(255) | | 名片 xingmingid | VARCHAR(255) | | 名片id shijian | VARCHAR(255) | | 时间
SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- ---------------------------- -- Table structure for ggmingpianguanli -- ---------------------------- 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 KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='管理员'; -- ---------------------------- DROP TABLE IF EXISTS `t_mingpian`; CREATE TABLE `t_mingpian` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '名片id',`xingming` VARCHAR(255) DEFAULT NULL COMMENT '姓名',`lianxifangshi` VARCHAR(255) DEFAULT NULL COMMENT '联系方式',`dizhi` VARCHAR(255) DEFAULT NULL COMMENT '地址',`shuoming` VARCHAR(255) DEFAULT NULL COMMENT '说明',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='名片'; -- ---------------------------- DROP TABLE IF EXISTS `t_lixnijilu`; CREATE TABLE `t_lixnijilu` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '联系记录id',`mingpian` VARCHAR(255) DEFAULT NULL COMMENT '名片',`xingmingid` INT(11) DEFAULT NULL COMMENT '名片id',`shijian` VARCHAR(255) DEFAULT NULL COMMENT '时间',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='联系记录';
添加名片模块:
在mingpianController中定义tianjiamingpianact接收页面传入的名片参数,定义为mingpian。其中mingpian包含字段:姓名,联系方式,地址,说明,使用tianjiamingpianact将该名片对象存入数据库中,在mingpianMapper中定义了insert方法,匹配数据库中的insert into mingpian语句实现将名片数据存入数据库的操作。该部分核心代码如下:
通过mingpiandao的insert方法将页面传输的名片添加到数据库中 mingpiandao.insert(mingpian);
将添加名片成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加名片成功");
返回名片管理界面
return "forward:/tianjiamingpian.action";
查询名片模块:
在后台中定义名片查询模块,在侧边栏中点击名片管理,可以跳转到名片管理界面。在该页面中通过mingpianController中定义mingpianguanli响应名片查询模块。在mingpianguanli中查询出所有信息,返回页面进行循环展示。查询方法为mingpiandao中的selectByexample方法。该部分核心代码如下:
生成名片样例类,通过example定义查询条件 MingpianExample example = new MingpianExample();
通过mingpiandao的selectByExample方法查询出所有的名片信息 List mingpianall = mingpiandao.selectByExample(example);
将名片信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("mingpianall", mingpianall);
返回名片管理界面
return "forward:/mingpianguanli.action";
修改名片模块:
点击修改按钮,可以跳转到名片修改页面。在名片修改页面中,将初始化该名片的所有信息,并将信息一一对应填充到对应编辑栏中。编辑完名片信息后,页面通过post方法将数据封装为一个名片实体,传入到mingpianController中。在xiugaimingpian中进行接收,接收完毕后,调用mingpianMapper中的updateByPrimaryKeySelective方法进行修改。该部分代码如下:
通过mingpiandao的修改方法根据id修改对应的名片 mingpiandao.updateByPrimaryKeySelective(mingpian);
将修改名片成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改名片信息成功");
返回名片管理界面
return "forward:/mingpianguanli.action";
删除名片模块:
在页面中通过a标签,shanchumingpian?id=将id传入到后台中,通过shanchumingpian接收名片id。使用deleteByid的方法
删除该名片,完成删除操作。定义删除成功提示信息,删除名片成功,并保存到request中,该部分代码如下:
通过mingpiandao的删除方法根据id删除对应的名片 mingpiandao.deleteByPrimaryKey(id);
将删除名片成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除名片成功");
返回名片管理界面
return "forward:/mingpianguanli.action";