0、效果展示

1、概述

该系统分为后台管理员登录、前台用户,具体功能描述如下所示:

管理员(后台用户)

系统管理:该模块实现的功能有公告管理、发布公告、友情链接、网站留言管理、管理员设置、后台登录日志。

会员管理:对注册的用户进行管理,包括删除、修改等操作,可按日期、会员名进行搜索。

视频点播管理:可对视频点播进行分类,在每个分类下,可进行视频点播的添加、删除、修改等操作。并提供多种条件的查询。

视频点播资讯管理:该模块实现的功能有管理视频点播资讯、发布视频点播资讯,如标题、是否显示等。

注册会员管理:该模块是对注册会员的信息管理,如会员名、注册时间、登录次数、上次登录时间等。

会员(前台用户)

注册、登录界面:用户通过填写自己的个人信息进行注册。注册后的用户可以通过会员登录界面进行登录,登录后可以进行相应的操作,如下载视频点播,评论视频点播等。

主界面:包括系统公告,视频点播资讯、视频点播列表、热点视频点播、网站投票、视频点播查询、留言板等。

系统公告:用户可在主界面查看公告。

搜索视频点播:可按照视频点播类型、地区、歌名、歌手名等条件进行搜索。

视频点播下载:注册的用户可对视频点播进行下载。

留言板:会员登录网站后可以查看网站留言和在线留言等。

2、搭建环境

本文以实现一个视频点播网站-视频播放网站-电影在线观看网站-电视剧在线欣赏网站为目标,从环境搭建到编码实现全过程讲述

我们使用javaweb、J2EE来构建视频点播网站-视频播放网站-电影在线观看网站-电视剧在线欣赏网站,环境使用最新版jdk和tomcat,配合mysql数据库

开发工具使用idea(也可以使用eclipse),数据库管理工具使用Navicat Premium

开发框架使用JavaBean Servlet MVC结构;

没有使用SSH(Struts+Spring+Hibernate)或SSM(Spring+SpringMVC+MyBatis),这两个框架我们在别的项目中再介绍开发过程

在项目中会引入My97DatePicker作为前端日期时间选择工具,使用fckeditor作为富媒体编辑器(也可以使用百度的ueditor)

使用DWR(Direct Web Remoting)用于改善web页面与Java类交互,实现远程服务器端AJAX读取登录数据。

使用JSTL(Java server pages standarded tag library,即JSP标准标签库),此库是由JCP(Java community Proces)所制定的标准规范,它主要提供给Java Web开发人员一个标准通用的标签库,并由Apache的Jakarta小组来维护。开发人员可以利用这些标签取代JSP页面上的Java代码,从而提高程序的可读性,降低程序的维护难度。

3、数据表结构

字段名称

自动增长

字段类型

说明

id

-

int

-

title

-

varchar

标题

content

-

varchar

内容

addtime

-

datetime

日期

adder

-

varchar

发布人

ifhide

-

int

-

​4、后端代码示例

package com.action;/*** 网站公告* @author Administrator**/import java.io.IOException;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;import com.bean.AfficheBean;
import com.bean.SystemBean;
import com.util.Constant;
import com.util.Filter;public class AfficheServlet extends HttpServlet {/*** Constructor of the object.*/public AfficheServlet() {super();}/*** Destruction of the servlet. <br>*/public void destroy() {super.destroy(); // Just puts "destroy" string in log// Put your code here}/*** The doGet method of the servlet. <br>** This method is called when a form has its tag value method equals to get.* * @param request*            the request send by the client to the server* @param response*            the response send by the server to the client* @throws ServletException*             if an error occurred* @throws IOException*             if an error occurred*/public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {doPost(request, response);}/*** The doPost method of the servlet. <br>** This method is called when a form has its tag value method equals to* post.* * @param request*            the request send by the client to the server* @param response*            the response send by the server to the client* @throws ServletException*             if an error occurred* @throws IOException*             if an error occurred*/public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {response.setContentType(Constant.CONTENTTYPE);request.setCharacterEncoding(Constant.CHARACTERENCODING);String sysdir = new SystemBean().getDir();HttpSession session = request.getSession();try {String username2 = (String) session.getAttribute("user");if (username2 == null) {request.getRequestDispatcher("error.jsp").forward(request, response);} else {AfficheBean afficheBean = new AfficheBean();String method = request.getParameter("method").trim();if (method.equals("addAffiche")) {// 增加公告String title = Filter.escapeHTMLTags(request.getParameter("title").trim());String content = Filter.escapeHTMLTags(request.getParameter("content").trim());String adder = username2;String ifhide = Filter.escapeHTMLTags("1");int flag = afficheBean.addAffiche(title, content, adder, ifhide);if (flag == Constant.SUCCESS) {request.setAttribute("message", "操作成功!");request.getRequestDispatcher(sysdir + "/affiche/index.jsp").forward(request, response);} else {request.setAttribute("message", "系统维护中请稍后再试!");request.getRequestDispatcher(sysdir + "/affiche/index.jsp").forward(request, response);}} else if (method.equals("editAffiche")) {// 修改公告String id = Filter.escapeHTMLTags(request.getParameter("id").trim());String title = Filter.escapeHTMLTags(request.getParameter("title").trim());String content = Filter.escapeHTMLTags(request.getParameter("content").trim());String adder = username2;String ifhide = Filter.escapeHTMLTags(request.getParameter("ifhide").trim());int flag = afficheBean.updateAffiche(Integer.parseInt(id), title, content, adder, ifhide);if (flag == Constant.SUCCESS) {request.setAttribute("message", "操作成功!");request.getRequestDispatcher(sysdir + "/affiche/index.jsp").forward(request, response);} else {request.setAttribute("message", "系统维护中请稍后再试!");request.getRequestDispatcher(sysdir + "/affiche/index.jsp").forward(request, response);}} else if (method.equals("hideAffiche")) {String id = Filter.escapeHTMLTags(request.getParameter("id").trim());int flag = afficheBean.hideAffiche(Integer.parseInt(id));if (flag == Constant.SUCCESS) {request.getRequestDispatcher(sysdir + "/affiche/index.jsp").forward(request, response);} else {request.setAttribute("message", "系统维护中,请稍后再试!");request.getRequestDispatcher(sysdir + "/affiche/index.jsp").forward(request, response);}} else if (method.equals("delaffiche")) {// 删除公告String id = Filter.escapeHTMLTags(request.getParameter("id").trim());int flag = afficheBean.delAffiche(Integer.parseInt(id));if (flag == Constant.SUCCESS) {request.getRequestDispatcher(sysdir + "/affiche/index.jsp").forward(request, response);} else {request.setAttribute("message", "系统维护中,请稍后再试!");request.getRequestDispatcher(sysdir + "/affiche/index.jsp").forward(request, response);}}}} catch (Exception e) {e.printStackTrace();request.getRequestDispatcher("error.jsp").forward(request, response);}}/*** Initialization of the servlet. <br>** @throws ServletException*             if an error occure*/public void init() throws ServletException {// Put your code here}}

5、前端代码示例

<%@ page language="java" import="java.util.*,com.util.*" contentType="text/html;charset=gb2312" %><jsp:useBean id="sn" scope="page" class="com.bean.SystemBean"/>
<jsp:useBean id="ab" scope="page" class="com.bean.AfficheBean"/>
<%String path = request.getContextPath();%><!DOCTYPE html>
<html>
<head><meta name="viewport"content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"><title>后台管理</title><link href="<%=path%>/admin/css/bootstrap.min.css" rel="stylesheet"><!--bootstrap框架--><link href="<%=path%>/admin/css/font-awesome.min.css" rel="stylesheet"><!--图标字体框架--><link href="<%=path%>/admin/css/style.min.css" rel="stylesheet"><!--后台管理样式主文件--><link href="<%=path%>/admin/css/bootstrap-table.min.css" rel="stylesheet"><!--bootstrap-table表格插件-->
</head>
<body class="gray-bg">
<div class="wrapper wrapper-content animated fadeInRight"><div class="row"><div class="col-sm-12"><div class="ibox float-e-margins"><!--标题栏开始--><div class="ibox-title"><h5>公告管理</h5></div><!--标题栏结束--><div class="ibox-content"><script language=Javascript src="<%=path%>/admin/js/Common.js"></script><%String message = (String) request.getAttribute("message");if (message == null) {message = "";}if (!message.trim().equals("")) {out.println("<script language='javascript'>");out.println("alert('" + message + "');");out.println("</script>");}request.removeAttribute("message");%><%String username = (String) session.getAttribute("user");if (username == null) {response.sendRedirect(path + "/error.jsp");} else {%><div class="table-responsive"><table id="datalist"><thead><tr><th data-halign="center" data-align="center">ID</th><th data-halign="center" data-align="center">标题</th><th data-halign="center" data-align="center">发布时间</th><th data-halign="center" data-align="center">发布人</th><%--    <th data-halign="center" data-align="center">是否显示</th>--%>    <th data-halign="center" data-align="center">删除</th></tr></thead><%List pagelist3 = ab.getAllAfficheManage();%><%if (!pagelist3.isEmpty()) {for (int i = 0; i < pagelist3.size(); i++) {List pagelist2 = (ArrayList) pagelist3.get(i);%><tr><td><%=i + 1 %></td><td><a href="<%=path%>/admin/affiche/edit.jsp?method=editAffiche&id=<%=pagelist2.get(0).toString()%>"><%=pagelist2.get(1).toString() %></a></td><td><%=Validate.datemmdd(pagelist2.get(2).toString())%></td><td><%=pagelist2.get(3).toString() %></td><%-- <td><a href="<%=path%>/Affiche.shtml?method=hideAffiche&id=<%=pagelist2.get(0).toString()%>"><%=Integer.parseInt(pagelist2.get(4).toString()) == 1 ? "显示" : "隐藏" %></a></td>--%><td><a href="<%=path%>/Affiche.shtml?method=delaffiche&id=<%=pagelist2.get(0).toString()%>" onclick="return confirm('你真的确定要删除吗?');">删除</a></td></tr><%}}%></TBODY></TABLE></div></div><%} %><!--表格数据区------------结束--></div></div></div></div><script src="<%=path%>/admin/js/jquery.min.js"></script><!--jquery框架-->
<script src="<%=path%>/admin/js/bootstrap.min.js"></script><!--bootstrap框架 -->
<script src="<%=path%>/admin/js/content.min.js"></script><!--后台网站主框架使用--><!--表格-->
<script src="<%=path%>/admin/js/plugins/bootstrap-table/bootstrap-table.min.js"></script>
<script src="<%=path%>/admin/js/plugins/bootstrap-table/bootstrap-table-mobile.min.js"></script>
<script src="<%=path%>/admin/js/plugins/bootstrap-table/locale/bootstrap-table-zh-CN.min.js"></script>
<script src="<%=path%>/admin/js/bootstrap-table.js"></script><!--表格--><!--导出-->
<script src="<%=path%>/admin/js/plugins/bootstrap-table/bootstrap-table-export.js"></script>
<script src="<%=path%>/admin/js/plugins/bootstrap-table/tableExport.js"></script><!--弹窗插件-->
<script src="<%=path%>/admin/js/plugins/layer/layer.min.js"></script></body>
</html>

SSM框架视频点播网站-视频播放网站-电影在线观看网站-电视剧在线欣赏网站 (idea开发javaweb-php-asp.netC#-j2ee-springboot)相关推荐

  1. 基于ssm框架的同城物流配送网站系统

    本文介绍了同城物流配送管理设计方案,该网站采用目前JSP中最流行的SSM框架和Eclipse编辑器.MySQL数据库设计并实现的.网站功能包含系统用户管理.新闻数据管理.商品管理.下单管理.物流订单管 ...

  2. SSM框架在线拍卖系统项目

    文章目录 前言 一.项目设计具体任务和要求 二.数据库设计 三.页面效果及功能展示 1. 拍卖系统登录页面 2.拍卖系统注册页面 3.拍卖系统登录后主页面 4.拍卖系统游客浏览拍卖商品页面 5.拍卖系 ...

  3. 基于SSM框架的图书馆借阅管理系统

    该图书馆管理系统采用JSP中最流行的SSM框架和Eclipse编辑器.MySQL数据库设计并实现的.网站功能包含系统用户管理.图书管理.用户管理.借书管理.续借管理.违章缴款管理等模块.概述了整个系统 ...

  4. 汽车维修管理系统汽车维修管理系统采用B / S架构,主要使用Java技术进行开发,结合最新流行的java和mysql的SSM框架技术。

    摘 要 21世纪是一个知识大爆炸的时代,互联网拉近了人们的距离,信息化革命席卷了各个行业.物质生活水平的提高使得人们的消费观念悄然发生改变,人们对汽车维修管理系统的要求越来越高,这对于传统汽车维修管理 ...

  5. ssm框架requestmapping找不到_框架学习,就是介么简单

    框架学习 程序员凯小白 最近实训ssm框架,SSM框架,是Spring + Spring MVC + MyBatis的缩写,这个是继SSH之后,目前比较主流的Java EE企业级框架,适用于搭建各种大 ...

  6. SSM框架项目:米米商城后台管理系统

    SSM框架项目[米米商城]-Java项目实战教程(涵盖技术点:Java零基础.数据库.前端.SSM框架)打通JavaEE的任督二脉_哔哩哔哩_bilibili你的三连就是创作的动力!一定不要忘记收藏. ...

  7. JavaWeb开发:历史变更记录(基于SSM框架)

    目录 一.效果展示 二.实现 1.表单提交 2.Controller层 3.Service层 4.ServiceImplement层 (1)记录下修改前的表单内容 (2)记录修改后的数据 (3)记录下 ...

  8. 初学者SSM框架的创建过程

    搭建jdk.myeclipse等环境的过程网上资源很多,这里也给出一个链接供大家参考:http://blog.csdn.net/zhshulin/article/details/30779873 搭建 ...

  9. 世恒易语言百集教程在线观看.非常好的易语言入门教程哦

    世恒易语言百集教程.非常好的易语言教程.唯一在线可以看的地址是biliblili.一般都要下载的啊.并且是exe格式.不方便观看.这套可以在线看. 世恒易语言百集教程在线观看 点击在线观看 https ...

最新文章

  1. go 变量在其中一个函数中赋值 另一个函数_go 学习笔记之仅仅需要一个示例就能讲清楚什么闭包...
  2. 单核7:全景闹钟和单核工作法
  3. 深入理解Spark 2.1 Core (十三):sparkEnv类源码分析
  4. SSH三大框架的知识题
  5. SSH中设置字符编码防止乱码
  6. SOLO参赛,赛道二周冠军“达尔文”分享上分秘诀
  7. 为什么天才容易患阅读障碍症_患了慢阻肺为什么容易日渐消瘦?
  8. 彻底搞懂 Git 进阶用法
  9. 服装行业RFID智能管理系统方案详解
  10. Android开发从0到1学习(知识+路线)
  11. ubuntu kernel panic查看源文件
  12. 计算机网络八大性能指标
  13. java 请假系统_JAVA 师生请假系统 课程设计
  14. 结对编程——自动生成数学试卷的系统(javaswing,mysql)by 陈松刘宇航
  15. 仿照中国银行页面进行编写,主要涉及到float,定位
  16. 华为全连MGRE与星型拓扑MGRE(全网状与非全网状)
  17. maven项目编译中文乱码和myeclipse中文乱码和电脑乱码?
  18. MAVROS的plugin到底是什么意思?plugin中文意思是插件
  19. 本周AI热点回顾:和欧阳娜娜一起搞研发?强大的神经网络新算子involution,超越卷积、自注意力机制!...
  20. 建筑施工复习资料-立杆基础

热门文章

  1. 真正的摄影高手,构图高手
  2. 程序员不得不知的软技能
  3. IT常用软件下载与安装
  4. 冰岛人 (25 分)
  5. 哪些四拼域名更具商业价值?
  6. LeetCode T45 Jump Game II
  7. 山石防火墙做OSPF负载实例
  8. 商务信函-传统英文信件范文
  9. “用户密码”形同虚设,“多因素认证”势在必行
  10. csdn-Python 技能树体验评测