jsp新闻发布系统课程设计

更新时间:2024-04-10 22:51:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

课 程 设 计

课程名称 题 目 系 部 专 业 班 级 学 号 学生姓名 任课教师

2015 年 12 月 18 日

WEB技术 新闻管理网站

摘要

大数据时代,能否准确快速的掌握更多的信息是事半功倍的关键。网络的普及给人们值天下事提供了特殊便利的渠道。

本新闻管理系统注重与新闻浏览者的互操作性以及对新闻信息资源管理的操作性,采用JSP+MySQL数据库的架构实现。

新闻系统分为两大模块,分别是用户管理模块和管理员管理模块。用户管理是友好的操作界面,供用户浏览、查询使用。包括:浏览新闻、查询新闻、评论新闻等功能;管理员模块是提供给管理员的,其中包括:删除新闻、编辑新闻管理、添加新闻管理等。使管理员从繁琐的手工操作中解脱出来,并提高了办公效率。

目录

第一章 需求分析 ..................................................................................................... 错误!未定义书签。

1.1 JSP简介 ........................................................................................................ 错误!未定义书签。 1.2 功能需求 ........................................................................................................................................ 1 1.3 开发及运行环境 ............................................................................................................................ 1

1.3.1 硬件平台 ............................................................................................................................. 1 1.3.2 软件要求 ............................................................................................................................. 1

第二章 新闻发布网站 ................................................................................................................................. 3

2.1网站结构设计 ................................................................................................................................. 3 2.2目标设计 ....................................................................................................... 错误!未定义书签。 2.3系统功能分析与设计 ..................................................................................................................... 4 第三章 数据库结构设计 ............................................................................................................................. 5

3.1 数据库需求分析 ............................................................................................................................ 5 3.2数据库逻辑设计 ........................................................................................... 错误!未定义书签。 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 ...................................................................................... 错误!未定义书签。3 4.7 用户界面userMain.jsp ................................................................................................................ 14 4.8 评论leaveword.jsp ...................................................................................................................... 16 4.9 登录失败fail.jsp .......................................................................................................................... 18 4.10 注销logout.jsp ........................................................................................................................... 19 第五章 新闻管理模块 ............................................................................................... 错误!未定义书签。

5.1登录adminlogin.jsp .................................................................................... 错误!未定义书签。1 5.2审核adminpass.jsp ....................................................................................... 错误!未定义书签。 5.3管理manegerMain.jsp .................................................................................. 错误!未定义书签。 5.4添加新闻add.jsp ........................................................................................ 错误!未定义书签。4 5.5 padd ............................................................................................................... 错误!未定义书签。 5.6删除delete.jsp .............................................................................................. 错误!未定义书签。 5.7编辑edit.jsp ................................................................................................ 错误!未定义书签。9 5.2 update.jsp ...................................................................................................................................... 31 5.3查看show.jsp .............................................................................................. 错误!未定义书签。2 总结 ............................................................................................................................................................ 34 JSP课程设计评分表 ................................................................................................ 错误!未定义书签。5

第一章 需求分析

1.1 JSP简介

Java Sever Page(简称JSP)是基于Java的技术,用于创建可支持跨平台及跨Web服

务器的Web服务器端应用程序(即所谓的动态网页)。它是由Sun Microsystem公司倡导,由多家公司合作而建立的一种动态网页技术标准,其网址为:

http://www.javasoft.com/product/jsp

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 旗舰版

第 1 页 共 35 页

运行环境:Tomcat/ jdk1.6

开发工具:MyEclipse / MySQL Sever 5.0

第 2 页 共 35 页

第二章 新闻发布网站

2.1 网站结构设计

一个新闻网站应包含用户注册、管理员管理新闻两种功能。网站设计结构如图2.1-1所示。

图2.1-1

2.2

目标设计

在线新闻网站所要实现的功能如下。 ? 用户注册 ? 用户注册信息 ? 用户登录验证 ? 用户查看新闻 ? 用户评论新闻 ? 用户注销 ? 管理员管理新闻网站 ? 管理员登录 ? 管理员查看新闻 ? 添加新闻 ? 编辑新闻 ? 删除新闻

第 3 页 共 35 页

2.3系统功能分析与设计

在线新闻网站共分为两个模块:用户查看模块和管理员修改模块,其功能模块划分如图2.3-1所示: 用户 注册

管理员登录 新闻网站 用户查看新闻 管理员管理新闻 用户登录 浏览新闻 评论新闻 添加新闻 删除新闻 添加新闻 编辑新闻 图2.3-1

第 4 页 共 35 页

第三章 数据库结构设计

根据系统功能设计要求和模块划分,本网站的数据库主要存储用户注册信息、新闻信息和评论信息。

3.1 数据库需求分析

新闻网站主要包括以下数据项和数据结构。

1.用户注册信息:user_id(自动编号)、用户名、密码。 2.新闻列表:id(自动编号)、标题、作者、内容。

3 .评论信息:word_id(自动编号)、评论者姓名、评论内容、评论时间、所评新闻id和留言者id。

3.2 数据库逻辑设计 3.2.1、用户注册信息表 如图3.2-1所示:

user_reg

图3.2-1

3.2.2、新闻列表

news

如图3.2-2所示:

图3.2-2

第 5 页 共 35 页

3.3.3、评论信息表

如图所示:

图3.3-3

第 6 页 共 35 页

第四章 普通用户模块

网友注册模块包括一下几个子模块。

? 用户注册: ? index.jsp ? checkuser.jsp ? 用户登录验证: ? logland.jsp ? succ.jsp ? userMain.jsp ? leaverword.jsp ? fail.jsp ? logout.jsp

各页面直接的关系如图: regsubmit.jsp 注册不成功 regok.jsp 注册成功 succ.jsp 登录成功 fail.jsp 登录不成功 否 check.jsp 是否注册成功 是 是 index.jsp 用户注册 已有账号,直接登录 Logland.jsp 用户登录 checkuser.jsp 是否登录成功 否

第 7 页 共 35 页

userMain.jsp 用户主页面 Leaveword.jsp 评论新闻 show.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 password 表单元素类型 text password 含义 用户登录名称 用户登录密码 表4.1-1

4.1.3 页面所涉及的数据库表信息

此页面仅向系统提交用户注册名称和代码,并没有涉及到数据库表的操作。 4.1.4 页面代码分析

<%@page import=\ %>

<%String user_id=(String)session.getValue(\); String user_id1=\;

//如果管理员名称为空session.getValue(\不等于1说明用户已经登录过,不能再注册用户

if(!user_id.equals(user_id) && user_id !=null){ response.sendRedirect(\);

} %>

第 8 页 共 35 页

最大长度 16 16

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(\); //取得提交表单的用户名和密码

String user_name = request.getParameter(\); String pword=request.getParameter(\); //如果提交的密码为空提示错误,终止程序执行 if(pword==null){ out.print(\数据有错!\); }else{

String sql=\+user_name+\; //创建记录集对象,在用户表中查询用户是否存在 ResultSet rs=stmt.executeQuery(sql); //在用户表中查询用户不存在 if(!rs.next()){ //添加一条记录

stmt.executeUpdate(\

第 9 页 共 35 页

VALUES(scott.user_regid.nextval,'\+user_name+\+pword+\);

String sql1=\+user_name+\; //取得用户的ID号

Result rs1=stmt.executeQuery(sql1); if (rs1.next()){

//将用户ID赋予session(\

session.putValue(\,rs1.getString(\)); response.sendRedirect(\); } }else{ %> }

4.3 regok.jsp 4.3.1 页面示例

如图4.3-1为用户注册成功所看到的页面

图4.3-1

4.3.2 页面中需要填写的

HTML表单元素

页面中无需填写HTML表单元素。

4.3.3 页面所涉及的数据库表信息 此页面并没有涉及到数据库表的操作。

第 10 页 共 35 页

4.3.4 页面代码分析

4.4 logland.jsp 4.4.1 页面示例

如图4.4-1为用户登录时所看到的界面。

图4.4-1

4.4.2

页面中需要填写的HTML表单元素

页面中有两个需要用户填写的填写HTML表单元素,如表4.4-1。

第 11 页 共 35 页

名称 user_name password 表单元素类型 text password 含义 用户登录名称 用户登录密码 最大长度 16 16 表4.4-1

4.4.3 页面所涉及的数据库表信息

此页仅向系统提交用户登录名称和密码,并没有涉及到数据库表的操作。 4.4.4 页面代码分析

\/>

第 12 页 共 35 页

4.5 checkuser.jsp 4.5.1 页面示例

此页为登录中转页面,无页面示例。 4.5.2 页面中需要填写的HTML表单元素

此页为检查用户是否输入正确账号和密码登录,没有需要填写的HTML元素。

4.5.3 页面所涉及的数据库表信息

此页是用户登录后进入的数据库判断,没有涉及到数据库表的操作。 4.5.4 页面代码分析

%>

} catch (Exception e) { }

out.print(e.getMessage());

<% %> <%

String driver = \;

String url = \; try {

Class.forName(driver);

Connection conn = DriverManager.getConnection(url, \,

\);

Statement smt = conn.createStatement(); ResultSet rs=smt.executeQuery(sql); if (rs.next()) {

session.setAttribute(\, uname); response.sendRedirect(\); response.sendRedirect(\);

String uname = request.getParameter(\); String upwd = request.getParameter(\);

String sql = \ + uname

+ \ + upwd + \;

} else

4.6 succ.jsp 4.6.1 页面示例

第 13 页 共 35 页

此页为登录中转页面,无页面示例。

4.6.2 页面中需要填写的HTML表单元素

此页为用户查看新闻页面,没有需要填写的HTML元素。 4.6.3 页面所涉及的数据库表信息

此页是用户登录后进入的新闻列表,没有涉及到数据库表的操作。

4.6.4 页面代码分析

<%

if(session.getAttribute(\)==null){ %>

您没有登录,请登录 <%}else{ %>

欢迎您, <%=session.getAttribute(\)%>

注销 <%} %> <%

if(session.getAttribute(\)==null){ %>

您没有登录,请登录 <%}else{ %>

欢迎您, <%=session.getAttribute(\)%>

注销 <%} %>

4.7 userMain.jsp

4.7.1 页面示例

如图4.7-1为登录成功后所看到的页面效果

第 14 页 共 35 页

图4.7-1

4.7.2 页面中需要填写的HTML表单元素

此页为用户查看新闻页面,没有需要填写的HTML元素。

4.7.3 页面所涉及的数据库表信息

此页是用户登录后进入的新闻列表,没有涉及到数据库表的操作。

4.7.4 页面代码分析

   欢迎进入湖南商学院新闻网站

图片\\myLOGO.jpg\ style=\width: 400px; height: 165px;\>

新闻列表


欢迎您, <%=session.getAttribute(\)%>


<%

String driver = \;

String url = \; String sql = \; try {

Class.forName(driver);

Connection conn = DriverManager.getConnection(url, \,

\);

Statement smt = conn.createStatement(); ResultSet rs = smt.executeQuery(sql); while (rs.next()) {

第 15 页 共 35 页

%>

\

\ class=\>
<% %> <%

} catch (Exception e) { }

out.println(e.getMessage()); }

class=\><%=rs.getString(\)%> 评论

%>

style=\width:100px;heigth:50px\/>

4.8 leaveword.jsp

4.8.1 页面示例

如图4.8-1为用户评论新闻界面。

图4.8-1

第 16 页 共 35 页

4.8.2 页面中需要填写的HTML表单元素

该页面中有2个HTML表单元素需要用户填写,如表4.8-1所示。

名称 word 表单元素类型 text 表4.8-1

含义 评论内容 最大长度 500 4.8.3 页面所涉及的数据库表信息 此页涉及到数据库表leaveword的操作。

4.8.4 页面代码分析

<%request.setCharacterEncoding(\) ;

String user_id1 = (String)session.getValue(\); //判断Session变量是否超时

if((user_id1==null)|(user_id1==\)){ response.sendRedirect(\); }

//判断此用户是否已经注册,session(\为1说明没有,则不能留言 String user_id2=\;

if(user_id1.equals(user_id2)){ response.sendRedirect(\); }

String user_id=request.getParameter(\); String netname=request.getParameter(\); //取得取得用户档案详细信息

String sql=\+user_id1+\; ResultSet rs_lar=stmt.executeQuery(sql);

if(rs_lar.next()){

netname = rs_lar.getString(\);

String word =request.getParameter(\); //如果留言内容不为空 if (word!=null){ //添加一条留言记录

stmt.executeUpdate(\

INTO

scott.leaveword(id,netname,word,for_id,user_id)VALUE(scott.leavewordid.

out.print(\); out.print(\); out.print(\);

第 17 页 共 35 页

nextval,'\+netname+\+word+\+user_id+\+user_id1+\);

%>

} }

4.9 fail.jsp

4.9.1 页面示例

用户登录失败界面如图4.9-1所示

图4.9-1

4.9.2

页面中需要填写的HTML表单元素

页面中有两个需要用户填写的填写HTML表单元素,如表4.9-1所示。

名称 user_name password 表单元素类型 text password 含义 用户登录名称 用户登录密码 表4.9-1

最大长度 16 16 4.9.3 页面所涉及的数据库表信息

此页仅向系统提交用户重新登录名称和密码,并没有涉及到数据库表的操作。

4.9.4 页面代码设计

用户登录

\/>

4.10 logout.jsp

4.10.1 页面示例

此页为用户注销页面,注销后跳转到登录页面,无页面示例。 4.10.2 页面中需要管理者用户填写的HTML表单元素 页面中无需填写HTML表单元素。 4.10.3 页面涉及到的数据库表信息 此页仅用户注销,没有涉及到数据库表操作。 4.10.4 页面代码分析

<%

session.invalidate();

response.sendRedirect(\);

%>

第 19 页 共 35 页

第 20 页 共 35 页

第五章 新闻管理模块

新闻管理模块包含一下几个子模块

? 管理员登录模块:

? 管理员登录:adminlogin.jsp ? 审核账号:adminpass.jsp ? 管理员管理页面:manegerMain.jsp ? 重新登录:adminlogin.jsp ? 管理新闻模块:

? 添加新闻:add.jsp、 padd.jsp ? 删除新闻:delete.jsp

? 编辑新闻:edit.jsp、update.jsp ? 查看新闻:show.jsp

各个页面之间的关系如图5-1所示: add.jsp 添 加 新 闻

第 21 页 共 35 页

adminlog.jsp 管理员登录 adminpass.jsp 审核 通过 manegerMain.jsp 管理界面 不通过 adminlogin.jsp 重新登录 delete.jsp 删 除 新 闻 edit.jsp 编 辑 新 闻 show.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 admin_password 表单元素类型 text password 含义 用户登录账号 用户登录密码 表5.1-1

5.1.3 页面所涉及的数据库表信息

此页仅向系统提交管理员用户账号和密码,没有涉及到数据库表操作。 5.1.4 页面代码分析

此处仅提供用户输入账号信息,在下一页会判断用户提交的账号和信息是否正确。

管理用户登录

 

  

这里输入\ size=\ style=\width:200px\maxlength=\/>

style=\color:red;font-size:12px\>* 帐号只为6位

第 22 页 共 35 页

 

  


size=\ style=\width:200px\maxlength=\/>

登录 \/>

\/>

5.2 adminpass.jsp

5.2.1 页面示例

此页为审核管理员登录,无页面示例。 5.2.2 页面中需要用户填写的

HTML表单元素

页面中无需填写HTML表单元素。 5.2.3 页面所涉及的数据库表操作 此页涉及到对数据库表user_reg的操作。 5.2.4 页面代码分析

<%request.setCharacterEncoding(\);

//取得管理员账号和密码

String admin_name=request.getParameter(\); String admin_password=request.getParameter(\); //查找管理员信息

String sql=\* from scott.admin where admin_name like '\+admin_name+\and admin_password like'\+admin_adminpassword+\; ResultSet rs_admin=stmt.executeQuery(sql); //如果记录不存在说明账号和密码错误,页面后退重新登录 if(!rs_admin.next()){

out.print(\); out.print(\账号货密码错误!')\); out.print(\);

第 23 页 共 35 页

}

out.print(\);

else{

//关闭记录集对象 rs_admin.close(); //登录成功后跳转到管理页面

session.putValue(\,\); response.sendRedirect(\); } %>

5.3manegerMain.jsp

5.3.1 页面示例

管理员登录后新闻列表界面如图5.3-1所示。

图5.3-1

5.3.2 页面中需要用户填写的

HTML表单元素

页面中无需填写HTML表单元素。

5.3.3 页面所涉及的数据库表信息

此页面查看列表新闻,没有涉及到数据库表的操作。 5.3.4 页面代码分析

新闻列表



<%

第 24 页 共 35 页

String driver = \;

String url = \; String sql = \; try {

Class.forName(driver);

Connection conn = DriverManager.getConnection(url, \,

\);

Statement smt = conn.createStatement(); ResultSet rs = smt.executeQuery(sql); while (rs.next()) {

%>

\

\ class=\>编 \
<% %> <%

} catch (Exception e) { }

out.println(e.getMessage()); }

class=\><%=rs.getString(\)%> 辑

class=\>删除

%>

第 27 页 共 35 页

%>

}

out.println(e.getMessage());

5.9 show.jsp

5.9.1 页面示例

管理员用户查看新闻是页面如图5.9-1所示。

图5.9-1

5.9.2 页面中需要用户填写的

HTML表单元素

页面中无需填写HTML表单元素。

5.9.3 页面所涉及的数据库表信息

此页面仅查看新闻,没有涉及到数据库表的操作。 5.9.4 页面代码分析

   欢迎进入湖南商学院新闻网站

图片\\myLOGO.jpg\ style=\width: 400px; height: 165px;\>

<%

String sid=request.getParameter(\); %> <%

第 33 页 共 35 页

String driver=\;

String url=\; String sql=\+sid+\; try{ } %>


返回

Class.forName(driver);

Connection conn=DriverManager.getConnection(url, \, Statement smt=conn.createStatement(); ResultSet rs=smt.executeQuery(sql); if(rs.next()) %>

<%=rs.getString(\) %>


<%=rs.getString(\)%>


<%=rs.getString(\)%>

<%

out.print(e.getMessage());

\);

}catch(Exception e){

第 34 页 共 35 页

总结

一个新闻网站必须具备用户注册、用户个人管理和网站系统管理三种功能。本次课程设计所构建的就是具备这几种功能的新闻网站。此次过程设计中,心理活动曲折可谓一语难尽。在此期间我也失落过,也曾一度热情高涨。从开始时满富盛激情到最后汗水背后的复杂心情,点点滴滴无不令我回味无长。从架构到实现,想法一点一点的积累,思路也就越来越通畅。在刚开始着手实现用户评论功能时,为实现用户和管理员的交流,思路有很多,但是很乱,经过参考一些书籍,得到了一些启发。

通过这次课程设计,让我的架构、思路分析、JSP网站设计、数据库等等很多专业知识得到了很大的提升。

第 35 页 共 35 页

本文来源:https://www.bwwdw.com/article/2gur.html

Top