收藏 分销(赏)

jsp新闻发布系统专业课程设计.doc

上传人:快乐****生活 文档编号:2727275 上传时间:2024-06-05 格式:DOC 页数:47 大小:655.54KB 下载积分:12 金币
下载 相关 举报
jsp新闻发布系统专业课程设计.doc_第1页
第1页 / 共47页
jsp新闻发布系统专业课程设计.doc_第2页
第2页 / 共47页


点击查看更多>>
资源描述
课 程 设 计 课程名称 WEB技术 题 目 新闻管理网站 系 部 专 业 班 级 学 号 学生姓名 任课老师  年 12 月 18 日 摘要 大数据时代,能否正确快速掌握更多信息是事半功倍关键。网络普及给大家值天下事提供了特殊便利渠道。 本新闻管理系统重视和新闻浏览者互操作性和对新闻信息资源管理操作性,采取JSP+MySQL数据库架构实现。 新闻系统分为两大模块,分别是用户管理模块和管理员管理模块。用户管理是友好操作界面,供用户浏览、查询使用。包含:浏览新闻、查询新闻、评论新闻等功效;管理员模块是提供给管理员,其中包含:删除新闻、编辑新闻管理、添加新闻管理等。使管理员从繁琐手工操作中解脱出来,并提升了办公效率。 目录 第一章 需求分析 1 1.1 JSP介绍 1 1.2 功效需求 1 1.3 开发及运行环境 1 1.3.1 硬件平台 1 1.3.2 软件要求 1 第二章 新闻公布网站 3 2.1网站结构设计 3 2.2目标设计 3 2.3系统功效分析和设计 4 第三章 数据库结构设计 5 3.1 数据库需求分析 5 3.2数据库逻辑设计 5 3.2.1用户注册信息表user_reg 5 3.2.2新闻列表news 5 3.2.3评论信息表leaveword 6 第四章 一般用户模块 7 4.1 注册index.jsp 8 4.2 注册不成功regsubmit.jsp 9 4.3 注册成功regok.jsp 10 4.4 登录logland.jsp 11 4.5 checkuser.jsp 13 4.6 登录成功succ.jsp 13 4.7 用户界面userMain.jsp 14 4.8 评论leaveword.jsp 16 4.9 登录失败fail.jsp 18 4.10 注销logout.jsp 19 第五章 新闻管理模块 20 5.1登录adminlogin.jsp 21 5.2审核adminpass.jsp 22 5.3管理manegerMain.jsp 23 5.4添加新闻add.jsp 24 5.5 padd 27 5.6删除delete.jsp 28 5.7编辑edit.jsp 29 5.2 update.jsp 31 5.3查看show.jsp 32 总结 34 JSP课程设计评分表 35 第一章 需求分析 1.1 JSP介绍 Java Sever Page(简称JSP)是基于Java技术,用于创建可支持跨平台及跨Web服务器Web服务器端应用程序(即所谓动态网页)。它是由Sun Microsystem企业提倡,由多家企业合作而建立一个动态网页技术标准,其网址为: JSP正式公布于1999年6月,是基于Java Servlet和整个Java体系Web开发技术。在传统网页(即扩展名为.html文件)中加入Java程序片(Scriplet)和JSP标识(tag)即可组成一个常规JSP网页(其扩展名为.jsp)。 1.2 新闻网站功效需求分析 在线新闻网站是现在广泛用于网上新闻工具之一。互联网新闻方便快捷,不受地域、时间限制。大数据时代,能否正确快速掌握更多信息是事半功倍关键。网络普及给大家值天下事提供了特殊便利渠道,新闻网站正是迎合这一社会需求应运而生。 新闻网站关键提供了基础用户注册,用户登录,浏览新闻,评论新闻等功效。用户在使用浏览新闻,能够方便使用这些简易功效。也为管理者提供了添加新闻、删除新闻、编辑新闻等功效使管理者能简单方便有效管理新闻公布。 1.3 开发及运行环境 1.3.1 硬件平台 CPU: Pentium 4 2.0GHz以上 内存:512MB以上容量 显卡:32MB或以上显存之AGP接口显卡 1.3.2 软件要求 操作系统:Windows 7 旗舰版 运行环境:Tomcat/ jdk1.6 开发工具:MyEclipse / MySQL Sever 5.0 第二章 新闻公布网站 2.1 网站结构设计 一个新闻网站应包含用户注册、管理员管理新闻两种功效。网站设计结构图2.1-1所表示。 图2.1-1 2.2目标设计 在线新闻网站所要实现功效以下。 l 用户注册 u 用户注册信息 u 用户登录验证 u 用户查看新闻 u 用户评论新闻 u 用户注销 l 管理员管理新闻网站 u 管理员登录 u 管理员查看新闻 u 添加新闻 u 编辑新闻 u 删除新闻 2.3系统功效分析和设计 在线新闻网站共分为两个模块:用户查看模块和管理员修改模块,其功效模块划分图2.3-1所表示: 新闻网站 管理员管理新闻 用户查看新闻 管理员登录 编辑新闻 添加新闻 添加新闻 评论新闻 用户登录 用户注册 删除新闻 浏览新闻 图2.3-1 第三章 数据库结构设计 依据系统功效设计要求和模块划分,本网站数据库关键存放用户注册信息、新闻信息和评论信息。 3.1 数据库需求分析 新闻网站关键包含以下数据项和数据结构。 1.用户注册信息:user_id(自动编号)、用户名、密码。 2.新闻列表:id(自动编号)、标题、作者、内容。 3 .评论信息:word_id(自动编号)、评论者姓名、评论内容、评论时间、所评新闻id和留言者id。 3.2 数据库逻辑设计 3.2.1、用户注册信息表user_reg 图3.2-1所表示: 图3.2-1 3.2.2、新闻列表news 图3.2-2所表示: 图3.2-2 3.3.3、评论信息表 图所表示: 图3.3-3 第四章 一般用户模块 网友注册模块包含一下多个子模块。 l 用户注册: u index.jsp u checkuser.jsp l 用户登录验证: u logland.jsp u succ.jsp u userMain.jsp u leaverword.jsp u fail.jsp u logout.jsp 已经有账号,直接登录 各页面直接关系图: Logland.jsp 用户登录 index.jsp 用户注册 checkuser.jsp 是否登录成功 check.jsp 是否注册成功 是 否 是 否 regsubmit.jsp 注册不成功 regok.jsp 注册成功 fail.jsp 登录不成功 succ.jsp 登录成功 show.jsp 阅读新闻 Leaveword.jsp 评论新闻 userMain.jsp 用户主页面 图4-1 4.1 index.jsp 4.1.1 页面示例 图4.1-1为用户注册第一步所看到页面 图4.1-1 4.1.2 页面中需要填写HTML表单元素 该页面中有2个需要填写表单元素,如表4.1-1所表示 名称 表单元素类型 含义 最大长度 user_name text 用户登录名称 16 password password 用户登录密码 16 表4.1-1 4.1.3 页面所包含数据库表信息 此页面仅向系统提交用户注册名称和代码,并没有包含到数据库表操作。 4.1.4 页面代码分析 <!-- 首先导入部分必需packages --> <%@page import="java.sql.*" %> <%String user_id=(String)session.getValue("user_id"); String user_id1="1"; //假如管理员名称为空session.getValue("user_id")不等于1说明用户已经登录过,不能再注册用户 if(!user_id.equals(user_id) && user_id !=null){ response.sendRedirect("havereg.htm"); } %> 4.2 regsubmit.jsp 4.2.1 页面示例 图4.2-1为用户注册不成功看到界面: 图4.2-1 4.2.2 页面中需要填写HTML表单元素 页面中无需填写HTML表单元素。 4.2.3 页面所包含数据库表信息 页面中包含到用户数据库表user_reg操作。 4.2.4 页面代码分析 <% //转换由表单读取数据内码到GB2312 request.setCharacterEncoding("GB2312"); //取得提交表单用户名和密码 String user_name = request.getParameter("user_name"); String pword=request.getParameter("passssword"); //假如提交密码为空提醒错误,终止程序实施 if(pword==null){ out.print("数据有错!"); }else{ String sql="select *frorm scott.user_reg where user_name='"+user_name+"'"; //创建统计集对象,在用户表中查询用户是否存在 ResultSet rs=stmt.executeQuery(sql); //在用户表中查询用户不存在 if(!rs.next()){ //添加一条统计 stmt.executeUpdate("INSERT INTO scott.user_reg(user_id,user_name,pword) VALUES(scott.user_regid.nextval,'"+user_name+"','"+pword+"')"); String sql1="select *from scott.user_reg where user_name='"+user_name+"'"; //取得用户ID号 Result rs1=stmt.executeQuery(sql1); if (rs1.next()){ //将用户ID给予session("user_id") session.putValue("user_id",rs1.getString("user_id")); response.sendRedirect("regok.jsp"); } }else{ %> } 4.3 regok.jsp 4.3.1 页面示例 图4.3-1为用户注册成功所看到页面 图4.3-1 4.3.2 页面中需要填写HTML表单元素 页面中无需填写HTML表单元素。 4.3.3 页面所包含数据库表信息 此页面并没有包含到数据库表操作。 4.3.4 页面代码分析 <form action="userMain" method="get" name="" id="""> <p></p> <label style="background-color:#660033"><h1>欢迎进入湖南商学院新闻网站 </h1> </label> <br /> <textarea rows="15" cols="50"><h2>恭喜您,您已经成功提交申请!</h2> <br /> 请点击[继续]以浏览新闻 </textarea> <br /> <span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>&nbsp;<span class="STYLE3"><a href="userMain.jsp">继续</a></span></strong></span><span class="STYLE3">&nbsp;</span>&nbsp;&nbsp;<span class="STYLE5"><a href="index.jsp">退出</a></span> </form> 4.4 logland.jsp 4.4.1 页面示例 图4.4-1为用户登录时所看到界面。 图4.4-1 4.4.2页面中需要填写HTML表单元素 页面中有两个需要用户填写填写HTML表单元素,如表4.4-1。 名称 表单元素类型 含义 最大长度 user_name text 用户登录名称 16 password password 用户登录密码 16 表4.4-1 4.4.3 页面所包含数据库表信息 此页仅向系统提交用户登录名称和密码,并没有包含到数据库表操作。 4.4.4 页面代码分析 <form action="checkuser.jsp" method="post"> <fieldset style="width:350px; height:auto;text-align:left;background-color:skyblue"> <legend><span class="STYLE2">用户登录</span></legend> <br /> <span style="text-align:right">还没有账号?<a href="usezhuce.jsp">注册</a>&nbsp;&nbsp;</span> <p></p> &nbsp;<label><span class="STYLE3">帐号:</span></label> <br /> &nbsp;&nbsp;<input type="text" tabindex="2" accesskey="z" value="请在这里输入" size="20" style="width:200px" maxlength="6"/><span style="color:red;font-size:12px">* 帐号只为6位 </span> <p></p> &nbsp;<label><span class="STYLE3">密码:</span></label> <br /> &nbsp;&nbsp;<input type="password" tabindex="1" accesskey="m" size="20" style="width:200px" maxlength="12"/> <br /> <center> <hr /> <input type="submit" style="height:30px;font-size:16px" value=" 登录 "/> <input type="reset" style="height:30px;font-size:16px" value=" 重置 "/> </center> </fieldset> </form> 4.5 checkuser.jsp 4.5.1 页面示例 此页为登录中转页面,无页面示例。 4.5.2 页面中需要填写HTML表单元素 此页为检验用户是否输入正确账号和密码登录,没有需要填写HTML元素。 4.5.3 页面所包含数据库表信息 此页是用户登录后进入数据库判定,没有包含到数据库表操作。 4.5.4 页面代码分析 <% String uname = request.getParameter("username"); String upwd = request.getParameter("password"); String sql = "select * from usinfo where username='" + uname + "' and password='" + upwd + "'"; %> <% String driver = "com.mysql.jdbc.Driver"; String url = "jdbc:mysql://localhost:3306/test"; try { Class.forName(driver); Connection conn = DriverManager.getConnection(url, "root", "123456"); Statement smt = conn.createStatement(); ResultSet rs=smt.executeQuery(sql); if (rs.next()) { session.setAttribute("user", uname); response.sendRedirect("userMain.jsp"); } else response.sendRedirect("fail.jsp"); } catch (Exception e) { out.print(e.getMessage()); } %> 4.6 succ.jsp 4.6.1 页面示例 此页为登录中转页面,无页面示例。 4.6.2 页面中需要填写HTML表单元素 此页为用户查看新闻页面,没有需要填写HTML元素。 4.6.3 页面所包含数据库表信息 此页是用户登录后进入新闻列表,没有包含到数据库表操作。 4.6.4 页面代码分析 <from action=userMain.jsp" method="post"> <% if(session.getAttribute("user")==null){ %> 您没有登录,请<a href="index.jsp">登录</a> <%}else{ %> 欢迎您, <%=session.getAttribute("user")%>                <a href="logout.jsp">注销</a> <%} %> <% if(session.getAttribute("user")==null){ %> 您没有登录,请<a href="index.jsp">登录</a> <%}else{ %> 欢迎您, <%=session.getAttribute("user")%>                <a href="logout.jsp">注销</a> <%} %> 4.7 userMain.jsp 4.7.1 页面示例 图4.7-1为登录成功后所看到页面效果 图4.7-1 4.7.2 页面中需要填写HTML表单元素 此页为用户查看新闻页面,没有需要填写HTML元素。 4.7.3 页面所包含数据库表信息 此页是用户登录后进入新闻列表,没有包含到数据库表操作。 4.7.4 页面代码分析 <body class="STYLE5"> <span align="left">&nbsp;&nbsp;<span class="STYLE8">&nbsp;<span class="STYLE8">欢迎进入湖南商学院新闻网站</span></span></span> <p></p> <img src="file:///E:\JSP课程设计\CPweb\图片\myLOGO.jpg" style="width: 400px; height: 165px;"><img src="file:///E:\JSP课程设计\CPweb\图片\myLOGO.jpg" style="width: 400px; height: 165px;"><img src="file:///E:\JSP课程设计\CPweb\图片\myLOGO.jpg" style="width: 400px; height: 165px;"><br> <center> <p class="STYLE1">新闻列表</p> <br> </center> 欢迎您, <%=session.getAttribute("user")%> <hr> <% String driver = "com.mysql.jdbc.Driver"; String url = "jdbc:mysql://localhost:3306/test"; String sql = "select * from news"; try { Class.forName(driver); Connection conn = DriverManager.getConnection(url, "root", "123456"); Statement smt = conn.createStatement(); ResultSet rs = smt.executeQuery(sql); while (rs.next()) { %><table> <tr> <td> <a href="show.jsp?id=<%=rs.getInt(1)%>" class="STYLE7"><%=rs.getString("title")%></a></td> <td><a href="leaveword.jsp?id=<%=rs.getInt(1)%>" class="STYLE7">评论</a></td> </tr> </table> <br> <% } %> <% } catch (Exception e) { out.println(e.getMessage()); } %><form action="logout.jsp" method="post" "> <input type="submit" name="Submit" value="注销" style="width:100px;heigth:50px"/> </body> 4.8 leaveword.jsp 4.8.1 页面示例 图4.8-1为用户评论新闻界面。 图4.8-1 4.8.2 页面中需要填写HTML表单元素 该页面中有2个HTML表单元素需要用户填写,如表4.8-1所表示。 名称 表单元素类型 含义 最大长度 word text 评论内容 500 表4.8-1 4.8.3 页面所包含数据库表信息 此页包含到数据库表leaveword操作。 4.8.4 页面代码分析 <%request.setCharacterEncoding("GB2312") ; String user_id1 = (String)session.getValue("user_id"); //判定Session变量是否超时 if((user_id1==null)|(user_id1=="")){ response.sendRedirect("timeout.htm"); } //判定此用户是否已经注册,session("user_id1")为1说明没有,则不能留言 String user_id2="1"; if(user_id1.equals(user_id2)){ response.sendRedirect("notreg.htm"); } String user_id=request.getParameter("user_id"); String netname=request.getParameter("netname"); //取得取得用户档案具体信息 String sql="select * from student.sno where user_id='"+user_id1+"' "; ResultSet rs_lar=stmt.executeQuery(sql); if(rs_lar.next()){ netname = rs_lar.getString("netname"); String word =request.getParameter("word"); //假如留言内容不为空 if (word!=null){ //添加一条留言统计 stmt.executeUpdate("INSERT INTO scott.leaveword(id,netname,word,for_id,user_id)VALUE(scott.leavewordid.nextval,'"+netname+"','"+word+"','"+user_id+"''"+user_id1+"') "); out.print("<script language='javascript'>"); out.print("history.go(-2);"); out.print("</script>"); } } %> 4.9 fail.jsp 4.9.1 页面示例 用户登录失败界面图4.9-1所表示 图4.9-1 4.9.2页面中需要填写HTML表单元素 页面中有两个需要用户填写填写HTML表单元素,如表4.9-1所表示。 名称 表单元素类型 含义 最大长度 user_name text 用户登录名称 16 password password 用户登录密码 16 表4.9-1 4.9.3 页面所包含数据库表信息 此页仅向系统提交用户重新登录名称和密码,并没有包含到数据库表操作。 4.9.4 页面代码设计 <body> <center> <form action="checkuser.jsp" method="post"> <fieldset style="width:350px; height:auto; text-align:left; background-color:skyblue"> <legend><span class="STYLE2">用户登录</span></legend> <br /> <span style="text-align:right">还没有账号?<a href="../../0_/">注册</a>&nbsp;&nbsp;</span> <center><p class="STYLE4">登录失败,请重新登录!</p></center>  <label><span class="STYLE3">帐号:</span></label> <br /> &nbsp;&nbsp;<input type="text" tabindex="2" accesskey="z" value="请在这里输入" size="20" style="width:200px" maxlength="6"/><span style="color:red;font-size:12px">* 帐号只为6位 </span> <p></p> &nbsp;<label><span class="STYLE3">密码:</span></label> <br /> &nbsp;&nbsp;<input type="password" tabindex="1" accesskey="m" size="20" style="width:200px" maxlength="12"/> <br /> <center> <hr /> <input type="submit" style="height:30px;font-size:16px" value=" 登录 "/> <input type="reset" style="height:30px;font-size:16px" value=" 重置 "/> </center> </fieldset> </form> </center> </body> 4.10 logout.jsp 4.10.1 页面示例 此页为用户注销页面,注销后跳转到登录页面,无页面示例。 4.10.2 页面中需要管理者用户填写HTML表单元素 页面中无需填写HTML表单元素。 4.10.3 页面包含到数据库表信息 此页仅用户注销,没有包含到数据库表操作。 4.10.4 页面代码分析 <% session.invalidate(); response.sendRedirect("logland.jsp"); %> 第五章 新闻管理模块 新闻管理模块包含一下多个子模块 l 管理员登录模块: u 管理员登录:adminlogin.jsp u 审核账号:adminpass.jsp u 管理员管理页面:manegerMain.jsp u 重新登录:adminlogin.jsp l 管理新闻模块: u 添加新闻:add.jsp、 padd.jsp u 删除新闻:delete.jsp u 编辑新闻:edit.jsp、update.jsp u 查看新闻:show.jsp 各个页面之间关系图5-1所表示: adminlog.jsp 管理员登录 adminpass.jsp 审核 不经过 经过 adminlogin.jsp 重新登录 manegerMain.jsp 管理界面 show.jsp 查 看 新 闻 edit.jsp 编 辑 新 闻 delete.jsp 删 除 新 闻 add.jsp 添 加 新 闻 图5-1 5.1 adminlogin.jsp 5.1.1 页面示例 管理员登录页面效果图5.1-1所表示。账号和密码全部为admin。 图5.1-1 5.1.2 页面中需要管理者用户填写HTML表单元素 该页面中有2个需要用户填写表单元素,如表5.1-1所表示 名称 表单元素类型 含义 最大长度 admin_name text 用户登录账号 12 admin_password password 用户登录密码 12 表5.1-1 5.1.3 页面所包含数据库表信息 此页仅向系统提交管理员用户账号和密码,没有包含到数据库表操作。 5.1.4 页面代码分析 此处仅提供用户输入账号信息,在下一页会判定用户提交账号和信息是否正确。 <form action="manegerMain.jsp" method="post" name="" id="" > <fieldset style="width:350px; height:auto;text-align:left;background-color:#0066FF"> <legend><span class="STYLE2">管理用户登录</span></legend> <p></p> &nbsp;<label><span class="STYLE3">超级用户帐号:</span></label> <br /> &nbsp;&nbsp;<input type="text" tabindex="2" accesskey="z" value="请在这里输入" size="20" style="width:200px" maxlength="6"/><span style="color:red;font-size:12px">* 帐号只为6位 </span> <p></p> &nbsp;<label><span class="STYLE3">超级用户密码:</span></label> <br /> &nbsp;&nbsp;<input type="password" tabindex="1" accesskey="m" size="20" style="width:200px" maxlength="12"
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服