zoukankan      html  css  js  c++  java
  • web广告留言系统

    每天记录学习,每天会有好心情。*^_^*

    最近了解了基于web的广告留言系统项目,在这个平台记录一下这个基于web的广告留言系统项目,方便以后再次使用或学习的时候能够及时的翻阅。在完成基于web的广告留言系统项目的时候,考虑了很多框架。最终决定选用SSM(MYECLIPSE),该框架具有极强的移植性,多平台性,便于操作性等优点。此框架能在MYECLIPSE开发工具中完美的编写和运行,基于web的广告留言系统为一个 后台项目。采用当前非常流行的B/S体系结构,以JAVA作为开发技术,主要依赖SSM技术框架,mysql数据库建立本系统。
    在对基于web的广告留言系统项目进行需求分析的时候,得出系统的登录角色包括了管理员、用户。对应用户可以通过登录自己的账号,进行入系统。系统对不同角色拥有不同权限。
    留言的存在是为了能更好的结合系统的功能。用户表的联系在这张表中得以体现,其关联关系为留言的用户名字与用户的mingzi字段对应、留言的用户id与用户的id字段对应

    总结得出基于web的广告留言系统项目所有数据为:管理员(admin)、用户(yonghu)、留言(liuyan)

    基于web的广告留言系统之管理员表

    字段名 | 类型 | 属性 | 描述
    id | INT(11) | PRIMARY KEY | 管理员id
    username | VARCHAR(255) | | 账号
    password | VARCHAR(255) | | 密码

    基于web的广告留言系统之用户表

    字段名 | 类型 | 属性 | 描述
    id | INT(11) | PRIMARY KEY | 用户id
    mingzi | VARCHAR(255) | | 名字
    username | VARCHAR(255) | | 账户
    password | VARCHAR(255) | | 密码

    基于web的广告留言系统之留言表

    字段名 | 类型 | 属性 | 描述
    id | INT(11) | PRIMARY KEY | 留言id
    yonghu | VARCHAR(255) | | 用户名字
    yonghuid | VARCHAR(255) | | 用户id
    shijian | VARCHAR(255) | | 留言时间
    neirong | VARCHAR(255) | | 内容
    SET FOREIGN_KEY_CHECKS=0;
    
    -- ----------------------------
    
    -- ----------------------------
    
    -- Table structure for ggjywebdgglyxt
    
    -- ----------------------------
    
    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_yonghu`;
    
    CREATE TABLE `t_yonghu` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '用户id',`mingzi` 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_liuyan`;
    
    CREATE TABLE `t_liuyan` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '留言id',`yonghu` VARCHAR(255) DEFAULT NULL COMMENT '用户名字',`yonghuid` INT(11) DEFAULT NULL COMMENT '用户id',`shijian` VARCHAR(255) DEFAULT NULL COMMENT '留言时间',`neirong` VARCHAR(5000) DEFAULT NULL COMMENT '内容',PRIMARY KEY (`id`)
    
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='留言';

    添加留言模块:

    系统中存在添加留言功能,通过点击添加留言可以跳转到该功能模块,在该功能模块中,填写对应的留言信息。留言包含信息用户名字,用户id,留言时间,内容,填写完所有信息后,通过post方法将数据提交到tianjialiuyan.action中,该地址将在服务器中liuyanController类中的tianjialiuyanact方法中进行响应。响应结果为,获取所有的留言信息,封装一个liuyan类,使用liuyanController类中定义的liuyandao的insert方法,将留言数据插入到数据库的liuyan表中。并给出用户提示信息,添加留言成功,将该信息保存到request的message中,该信息将在页面中进行展示。该部分核心代码如下:

    通过liuyandao的insert方法将页面传输的留言添加到数据库中 liuyandao.insert(liuyan);

    将添加留言成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加留言成功");

    返回留言管理界面

    return "forward:/tianjialiuyan.action";

    查询留言模块:

    在浏览器中进入留言查询页面时,此时浏览器的地址栏为liuyanguanli.action,该地址将响应liuyanController类中的liuyanguanli,在该方法中,通过selectByexample方法获取所有的留言信息,并将该信息保存到request中,在页面进行循环展示。该部分核心代码如下:

    生成留言样例类,通过example定义查询条件 LiuyanExample example = new LiuyanExample();

    通过liuyandao的selectByExample方法查询出所有的留言信息 List liuyanall = liuyandao.selectByExample(example);

    将留言信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("liuyanall", liuyanall);

    返回留言管理界面

    return "forward:/liuyanguanli.action";

    修改留言模块:

    在页面完成留言的修改信息填写后,将该部分数据传入xiugailiuyan.action地址,并通过post进行提交。提交后在liuyanController中通过xiugailiuyan进行接收,将所有字段封装为一个留言实体。并将该实体传入liuyandao中的updateByPrimaryKeySelective方法中,在该方法中定义了通过留言id更新其余留言的字段,该部分字段包括用户名字,用户id,留言时间,内容,该部分核心代码如下所示:

    通过liuyandao的修改方法根据id修改对应的留言 liuyandao.updateByPrimaryKeySelective(liuyan);

    将修改留言成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改留言信息成功");

    返回留言管理界面

    return "forward:/liuyanguanli.action";

    删除留言模块:

    删除留言功能的实现方式为,通过点击删除留言按钮,向服务器发起get请求。请求中包含留言的id信息,在liuyanController中使用int接受该id,并将该id传入liuyandao的deleteByPrimaryKey方法中。该方法的作用为根据id删除对应留言。最后将删除留言成功的信息返回页面,该部分核心代码如下:

    通过liuyandao的删除方法根据id删除对应的留言 liuyandao.deleteByPrimaryKey(id);

    将删除留言成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除留言成功");

    返回留言管理界面

    return "forward:/liuyanguanli.action";

    源码下载

  • 相关阅读:
    汉诺塔系列问题: 汉诺塔II、汉诺塔III、汉诺塔IV、汉诺塔V、汉诺塔VI、汉诺塔VII
    2014工大校赛题目以及解
    三国武将查询系统 //Java 访问 数据库
    LR(1)文法分析器 //c++ 实现
    维护前面的position+主席树 Codeforces Round #406 (Div. 2) E
    区间->点,点->区间,线段树优化建图+dijstra Codeforces Round #406 (Div. 2) D
    有向图博弈+出度的结合 Codeforces Round #406 (Div. 2) C
    树的性质和dfs的性质 Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) E
    还不会做! 树上的gcd 树分治 UOJ33
    树上的构造 树分治+树重心的性质 Codeforces Round #190 (Div. 2) E
  • 原文地址:https://www.cnblogs.com/hxlk/p/11626467.html
Copyright © 2011-2022 走看看