• web视频点播平台


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

    在学习基于web的视频点播平台项目的时候,方便日后能及时查阅,在本平台中记录一下基于web的视频点播平台的开发流程。在学习时候的选用了SSM(MYECLIPSE),这个框架不论是学习还是使用都非常方便,简单易上手。
    基于web的视频点播平台项目具有的用户角色包括了管理员、学生,每个角色都含有自己的登录账号和密码。
    在系统的功能中,视频是一个重要的表。这个表使得学生关联了起来。在视频表中视频的发布人与学生的mingzi字段对应、视频的发布人id与学生的id字段对应
    ,他们拥有关联关系。在系统的功能中,收藏是一个重要的表。这个表使得视频、学生关联了起来。在收藏表中收藏的视频与视频的biaoti字段对应、收藏的视频id与视频的id字段对应、收藏的学生与学生的mingzi字段对应、收藏的学生id与学生的id字段对应
    ,他们拥有关联关系。

    总结得出基于web的视频点播平台项目所有数据为:管理员(admin)、学生(xuesheng)、视频(shipin)、收藏(shoucang)

    基于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) | | 密码
    nianling | VARCHAR(255) | | 年龄

    基于web的视频点播平台之视频表

    字段名 | 类型 | 属性 | 描述
    id | INT(11) | PRIMARY KEY | 视频id
    biaoti | VARCHAR(255) | | 标题
    wenjian | VARCHAR(255) | | 文件
    jieshao | VARCHAR(255) | | 介绍
    xuesheng | VARCHAR(255) | | 发布人
    xueshengid | VARCHAR(255) | | 发布人id

    基于web的视频点播平台之收藏表

    字段名 | 类型 | 属性 | 描述
    id | INT(11) | PRIMARY KEY | 收藏id
    shipin | VARCHAR(255) | | 视频
    shipinid | VARCHAR(255) | | 视频id
    xuesheng | VARCHAR(255) | | 学生
    xueshengid | VARCHAR(255) | | 学生id
    SET FOREIGN_KEY_CHECKS=0;
    
    -- ----------------------------
    
    -- ----------------------------
    
    -- Table structure for ggjywebdspdbpt
    
    -- ----------------------------
    
    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_xuesheng`;
    
    CREATE TABLE `t_xuesheng` (`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 '密码',`nianling` VARCHAR(255) DEFAULT NULL COMMENT '年龄',PRIMARY KEY (`id`)
    
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='学生';
    
    -- ----------------------------
    
    DROP TABLE IF EXISTS `t_shipin`;
    
    CREATE TABLE `t_shipin` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '视频id',`biaoti` VARCHAR(255) DEFAULT NULL COMMENT '标题',`wenjian` VARCHAR(255) DEFAULT NULL COMMENT '文件',`jieshao` VARCHAR(255) DEFAULT NULL COMMENT '介绍',`xuesheng` VARCHAR(255) DEFAULT NULL COMMENT '发布人',`xueshengid` INT(11) DEFAULT NULL COMMENT '发布人id',PRIMARY KEY (`id`)
    
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='视频';
    
    -- ----------------------------
    
    DROP TABLE IF EXISTS `t_shoucang`;
    
    CREATE TABLE `t_shoucang` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '收藏id',`shipin` VARCHAR(255) DEFAULT NULL COMMENT '视频',`shipinid` INT(11) DEFAULT NULL COMMENT '视频id',`xuesheng` VARCHAR(255) DEFAULT NULL COMMENT '学生',`xueshengid` INT(11) DEFAULT NULL COMMENT '学生id',PRIMARY KEY (`id`)
    
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='收藏';

    添加视频模块:

    在shipinController中定义tianjiashipinact接收页面传入的视频参数,定义为shipin。其中shipin包含字段:标题,文件,介绍,发布人,发布人id,使用tianjiashipinact将该视频对象存入数据库中,在shipinMapper中定义了insert方法,匹配数据库中的insert into shipin语句实现将视频数据存入数据库的操作。该部分核心代码如下:

    通过shipindao的insert方法将页面传输的视频添加到数据库中 shipindao.insert(shipin);

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

    返回视频管理界面

    return "forward:/tianjiashipin.action";

    查询视频模块:

    在后台shipinguanli方法中,通过selectByexample方法获取所有的数据信息。将其保存到request中,在页面中通过foreach方法

    进行循环展示到table中。完成视频查询操作。具体代码如下:

    生成视频样例类,通过example定义查询条件 ShipinExample example = new ShipinExample();

    通过shipindao的selectByExample方法查询出所有的视频信息 List shipinall = shipindao.selectByExample(example);

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

    返回视频管理界面

    return "forward:/shipinguanli.action";

    修改视频模块:

    点击修改按钮,可以跳转到视频修改页面。在视频修改页面中,将初始化该视频的所有信息,并将信息一一对应填充到对应编辑栏中。编辑完视频信息后,页面通过post方法将数据封装为一个视频实体,传入到shipinController中。在xiugaishipin中进行接收,接收完毕后,调用shipinMapper中的updateByPrimaryKeySelective方法进行修改。该部分代码如下:

    通过shipindao的修改方法根据id修改对应的视频 shipindao.updateByPrimaryKeySelective(shipin);

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

    返回视频管理界面

    return "forward:/shipinguanli.action";

    删除视频模块:

    在管理页面中,点击删除。页面将通过a标签的href属性,使用get方法将该视频

    的id上传到服务器中,在服务器中通过shipinController类中的shanchushipin进行接收,之后调用shipinMapper中的deleteByPrimaryKey方法根据ID进行删除。将删除信息保存到request的message中,在页面给出用户删除成功的提示信息,该部分核心代码如下:

    通过shipindao的删除方法根据id删除对应的视频 shipindao.deleteByPrimaryKey(id);

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

    返回视频管理界面

    return "forward:/shipinguanli.action";

    源码下载

  • 相关阅读:
    【原创】python中文编码问题:控制窗口能输出中文,到文本文件里乱码
    【转载】在notepad++中直接运行python代码
    报错The reference to entity "characterEncoding" must end with the ';' delimiter
    原码, 反码, 补码 详解
    GC 过程图解
    Java NIO:浅析I/O模型
    Java类加载器的工作原理
    修改classloader的加载路径
    ThreadLocal 源码分析
    冒泡排序、快速排序、堆排序
  • 原文地址:https://www.cnblogs.com/hxlk/p/11666980.html
Copyright © 2020-2023  润新知