二级课题二级实践课题Cs校园论坛系统(共28页)_第1页
二级课题二级实践课题Cs校园论坛系统(共28页)_第2页
二级课题二级实践课题Cs校园论坛系统(共28页)_第3页
二级课题二级实践课题Cs校园论坛系统(共28页)_第4页
二级课题二级实践课题Cs校园论坛系统(共28页)_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、洪会明 二级课题 实训报告 校园论坛系统 PAGE V中 原 工 学 院二 级 课 题 实 训 任 务 书 2011年6月13日学生姓名洪会明学号201007042146专 业日文软件开发班级日文101课题名称Cs校园论坛系统课题来源二级实训模拟课题指导教师郭彦宾专业计算机科学与技术职称集成项目经理课题说明:这是一个简单的校园论坛系统,同学们可以用自己的学号登陆发表留言和查看留言。管理员有删除和置顶留言的权限。同学们可以在论坛内进行交流,这个是多用户同时登陆同时留言,也会有同学们的上线提示。通过JDBC连接mysql数据库,可以使用户通过自己的学号登陆,管理员只需要密码就可以登录。校园论坛系统

2、是一个很经典的程序课题,做好它需要用到各方面的知识。承担的任务:1初步策划与构思(参与)2界面的绘制(参与)3参考书的借阅(参与)4方法的摘要(参与)5代码的调试(参与)6界面的美化(参与)7. 文档的整理(参与) 中 原 工 学 院二 级 课 题 实 训 任 务 书 2011年6月14日工作进度安排:任务名称时间轴2011-6-13至2011-6-28(除周日)负责人审核人123456789101112郭彦宾总体进度30%62%8%整理资料付元帅郝彦波王松编写代码王松洪会明代码测试王松洪会明整理文档付元帅郝彦波指导教师签字: 2011年 6 月 28 日实训单位意见签章: 年 月 日学院意见

3、签章: 年 月 日中 原 工 学 院二 级 课 题 实 训 评 审 表学号201007042146姓名洪会明专业软件开发班级日文101题目Cs校园论坛系统指导教师评语成绩(百分制): 指导教师签名: 2011年 6 月 28 日软 件 学 院二级课题(kt)实训报告(bogo)课题(kt)名称: cs校园论坛系统 专 业: 软件技术(日文方向) 班 级: rjz日文101 学 号: 201007042146 学生姓名: 洪会明 指导教师: 郭彦宾 2011年 6 月 28 日摘 要随着计算机网络的飞速发展,internet技术(jsh)越来越广泛的应用,网络覆盖的区域不断扩大。人们(rn me

4、n)对网络的依赖越来越重。论坛(lntn)又名网络论坛BBS,全称为Bulletin Board System(电子公告板)或者Bulletin Board Service(公告板服务)。是Internet上的一种电子信息服务系统。它提供一块公共电子白板,每个用户都可以在上面书写,可发布信息或提出看法。它是一种交互性强,内容丰富而即使的Internet电子信息服务系统。用户在BBS站点上可以获得各种信息服务,发布信息,进行讨论,聊天等等。本文详细的论述了校园论坛系统的设计和实现的全过程,校园论坛系统主要分为三个部分:1登陆界面:登陆界面分为学生登陆和管理员登陆。学生只需要通过学号进行登陆,管理

5、员只需要密码就可以进入。学生登陆可以进入论坛主页面进行查看与发表留言。2 发表留言界面:可以进行留言与查看,也可以查看到成员的在线情况。3 管理员删除留言界面:管理员可以删除已过期的留言,也可以把留言置顶。本论坛目的是促进同学们之间关于学习和生活方面的交流,更新一些最新时事的动态发表。关键词:VE插件。JDBC。监听器。 洪会明 二级课题 实训报告 校园论坛系统目 录 TOC o 1-3 h z HYPERLINK l _Toc289098177 摘 要 PAGEREF _Toc289098177 h I HYPERLINK l _Toc289098178 第1章 项目分析 PAGEREF _

6、Toc289098178 h 1 HYPERLINK l _Toc289098179 1.1 问题(wnt)描述 PAGEREF _Toc289098179 h 1 HYPERLINK l _Toc289098180 1.2技术(jsh)分析 PAGEREF _Toc289098180 h 1 HYPERLINK l _Toc289098181 1.3工程进度计划(jhu) PAGEREF _Toc289098181 h 1 HYPERLINK l _Toc289098182 第2章 系统分析与设计 PAGEREF _Toc289098182 h 2 HYPERLINK l _Toc28909

7、8183 2.1系统分析 PAGEREF _Toc289098183 h 2 HYPERLINK l _Toc289098184 2.1.1 参与者 PAGEREF _Toc289098184 h 2 HYPERLINK l _Toc289098185 2.1.2 用例及用例规约 PAGEREF _Toc289098185 h 2 HYPERLINK l _Toc289098186 2.1.3 用例图 PAGEREF _Toc289098186 h 2 HYPERLINK l _Toc289098187 2.2 系统设计 PAGEREF _Toc289098187 h 3 HYPERLINK

8、l _Toc289098188 2.2.1顺序图 PAGEREF _Toc289098188 h 3 HYPERLINK l _Toc289098189 2.2.2类图 PAGEREF _Toc289098189 h 3 HYPERLINK l _Toc289098190 2.2.3系统体系结构设计 PAGEREF _Toc289098190 h 4 HYPERLINK l _Toc289098191 2.3 数据库设计 PAGEREF _Toc289098191 h 4 HYPERLINK l _Toc289098192 2.3.1E-R图 PAGEREF _Toc289098192 h 4

9、 HYPERLINK l _Toc289098193 2.3.2关系模式 PAGEREF _Toc289098193 h 4 HYPERLINK l _Toc289098194 2.3.3表的设计 PAGEREF _Toc289098194 h 4 HYPERLINK l _Toc289098195 第3章 实现与测试 PAGEREF _Toc289098195 h 6 HYPERLINK l _Toc289098196 3.1 登陆和使用论坛 PAGEREF _Toc289098196 h 6 HYPERLINK l _Toc289098197 3.1.1活动图 PAGEREF _Toc28

10、9098197 h 6 HYPERLINK l _Toc289098198 3.1.2界面 PAGEREF _Toc289098198 h 6 HYPERLINK l _Toc289098199 3.1.3代码 PAGEREF _Toc289098199 h 6 HYPERLINK l _Toc289098200 3.1.4测试用例 PAGEREF _Toc289098200 h 7 HYPERLINK l _Toc289098206 第4章 结束语 PAGEREF _Toc289098206 h 9 HYPERLINK l _Toc289098207 附录A: 附加图、表 PAGEREF _

11、Toc289098207 h 11 HYPERLINK l _Toc289098208 附录B: 主要源程序 PAGEREF _Toc289098208 h 11姓名:论文题目 PAGE 1洪会明 二级课题 实训报告 校园论坛系统 PAGE 23项目(xingm)分析(fnx)首先(shuxin),这个项目是校园论坛,必须要有一些界面、成员。成员分为同学与管理员,同学可以进行留言与查看历史留言,管理员可以删除和置顶留言。问题描述需要解决界面问题和界面之间的链接问题,实现留言同步,管理员如何删除留言1.2技术分析界面的创建是需要用到swing的知识的,对事件驱动的要求也很高。因为各个界面的 衔接

12、要非常的合理顺畅和人性化。界面的创建,用户存储在数据库,用户登录时从数据库中查找此人学号,如存在此学号则就可以进入下个界面,不存在将会有出错的信息提示。管理员只需要密码就可以登录,管理员还有独立的界面其功能是删除与置顶留言。1.3工程进度计划 从6月13号开始本课题的编写,到6月28号结束,为期三周。从1316号进行资料整理;从1721进行程序编写;从2225进行代码测试;从2628进行文档整理。第2章 系统(xtng)分析(fnx)与设计(shj)实现一些BBS校园论坛的基本功能,用户登录进行留言、管理员删除留言和置顶留言。2.1系统分析1.操作可行性:只要一台以上计算机连接在同一个局域网内

13、,本系统就可以使用,所以操作上可行。2.技术可行性:本系统采用Java语言,主要运用工开发具eclipse,以及eclipse的插件visual editor。开发这个系统需要开发者对网络编程和java Swing等知识的掌握,本项目采用的数据库为mysql,需掌握对mysql数据库的基本操作,因平时用的工具就是eclipse,以及其VE插件,数据库用的是mysql,因此技术可行。3.功能分析:此项目主要实现用户的留言和管理员的权限,因此解决每一个用户的学号唯一性和不确定性必须解决此问题!2.1.1 参与者组长:王松,成员:郝彦波,付元帅,洪会明2.1.2 用例及用例规约由于此论坛程序采用的数

14、据库为一般的java mysql数据库,用户登陆,及系统记录。!2.1.3 用例图用户信息登录使用论坛系统群聊进行留言数据存储退出2.2 系统(xtng)设计本程序实现了论坛的一些基本功能,包括学生(xu sheng)登录与管理员登录。校园论坛系统用户登陆使用论坛退出论坛学生登录管理员登陆发表查看历史2.2.1顺序(shnx)图用户(yngh)登陆顺序登陆图2.2.2类图 2.2.3系统(xtng)体系结构设计(shj)控制层(Action)视图层(JSP)。数据库服务层(SQL)1.视图(sht)层(JSP):用户界面,负责业务数据的收集和表示客户端校验。2.控制层(Action):负责表现

15、层与业务逻辑层的交互,调用业务逻辑层,并将业务数据返回给表现层显示。3.数据服务层(mysql):采用主流数据库MySQL,存放数据。2.3 数据库设计数据库结构设计的好坏将直接对网站的运行效率产生影响,好的数据库结构设计会减少数据的储存量,数据的完整性和一致性好,具有比较快的响应速度。基于J2EE的课程管理网站在数据库设计之初尽量考虑全面,仔细考虑用户的各种需求,避免浪费人力物力。基于此,进行如下设计。在设计中通过实体-关系图的方法分析系统的数据库各实体的关系,推导出相关表结构和相应的内、外主键,并可结合业务进一步设计相关存储过程和约束条件等实现方法。实现用户唯一性!系统主要构建了一个用户数

16、据存储表inf,用来存储用户的注册信息。2.3.1E-R图学生表学号密码姓名留言。2.3.2关系(gun x)模式用户(yngh)(学号,姓名,)(管理员)2.3.3表的设计(shj)字段名含义数据类型Sno学生学号Int Char(12)Sname学生姓名String char(10)Smima管理员密码Int char(2)Sliuyan学生留言String char(100)第3章 实现与测试 概述: 分为两部分功能:一是学生登录的发表留言,发表的留言同时存入数据库中,学生可以(ky)点击查看自己的历史留言记录和删除自己的留言记录。二是管理员登录,使用(shyng)统一密码 “70”,采

17、用JPasswordFiled文本框可以隐藏密码,防止(fngzh)密码泄露。管理员可以查询留言,并删除不良留言。 3.1 登陆和使用论坛学生登录的发表留言,发表的留言同时存入数据库中,学生可以点击查看自己的历史留言记录和删除自己的留言记录。管理员使用统一密码进入后查看留言,删除不文明留言等。注意:使用数据库为mysql sever 5.1,使用时把语言环境调成中文的,不然会出现乱码现象,下面会给出例子。3.1.2界面(jimin)3.1.3代码(di m)public Connection cn = null;public Statement st = null;public ResultS

18、et rs = null;public PreparedStatement ps;/声明(shngmng)连接使用数据库所用变量,方便使用。 public connect()throws ClassNotFoundException, SQLException /声明(shngmng)异常。try String dbUrl = jdbc:mysql:/localhost/kouling;String user = root;String password = ;Class.forName(com.mysql.jdbc.Driver);/连接mysqlcn = DriverManager.get

19、Connection(dbUrl, user, password);st = cn.createStatement();/连接(linji)kouling数据库/ st1 = c catch (Exception e) JOptionPane.showMessageDialog(null, 数据库链接(lin ji)失败);/抛出(po ch)异常jButton.addActionListener(new java.awt.event.ActionListener() public void actionPerformed(java.awt.event.ActionEvent e) str =

20、 jTextField.getText().trim();/把输入学号赋给字符串str,方便下面引用/str1 = jTextField1.getText();DataBase d = new DataBase();/创建一个DataBase类的对象,方便使用DataBase类中的方法。d.connect();/连接数据库d.select(sno, sno, str);/调用select()方法查询所需数据。String Sno;try if (d.rs).next() Sno = (d.rs).getString(1);/ String name =(d.rs).getString(2);i

21、f (str.equals(Sno) / JOptionPane.showMessageDialog(null,/ 欢迎+name+进入论坛);luntan luntan = new luntan(Start.this);luntan.setLocationRelativeTo(null);setVisible(false); catch (SQLException e1) / TODO Auto-generated catch blocke1.printStackTrace();/抛出出现异常public String getName(String sno) throws ClassNotF

22、oundException, SQLException String name=null;cn=this.connect1();String sql=select sname from student where sno=+sno+;PreparedStatement pst=cn.prepareStatement(sql);ResultSet rst=pst.executeQuery();while(rst.next()name=rst.getString(1);return name;/该方法主要(zhyo)用于类与类之间数据的传输,在传输输入学号部分中得到重要应用。jButton1.se

23、tText(发表(fbio);jButton1.addActionListener(new java.awt.event.ActionListener() public void actionPerformed(java.awt.event.ActionEvent e) String str=jTextArea1.getText();String table=studet;String what=where sno=+start.jTextField.getText().trim()+;String str1 = update student set sliuyan= + str + + wh

24、ere sno= + start.jTextField.getText().trim()+ ;try if(str.trim().equals()JOptionPane.showMessageDialog(null, 发出(fch)信息不能为空值);elsejTextArea.append(n+D.getName(start.jTextField.getText().trim()+ 说; +str);jTextArea1.setText();DataBase a = new DataBase();/声明一个DataBase对象,引用其中方法a.connect();/引用DataBase中的co

25、nnect方法,连接数据库。a.update(str1);/把所发表的留言存储到数据库相应的位置。 catch (ClassNotFoundException e1) / TODO Auto-generated catch blocke1.printStackTrace(); catch (SQLException e1) / TODO Auto-generated catch blocke1.printStackTrace(););public void update(String s) try st.executeUpdate(s); catch (Exception e) JOption

26、Pane.showMessageDialog(null, e.getMessage(); /该方法用于在数据库中更新(gngxn)数据。3.1.4测试用例输入(shr)正确的学号毛洋洋加入(jir)论坛毛洋洋发表(fbio)留言查看历史(lsh)留言第4章 结束语这次(zh c)的实践课题花了很多时间去做,虽然还有一些功能完善的不是太好,但是我毕竟提高了很多,发现了自己的不足。我发现我在编写代码这方面做得不够好,有些知识虽然已经熟记于心,但是就是不能切实的运用到程序上来。我记得选择课题时我们几个选择了这个校园论坛系统的程序,当时可谓是信心满满呐,争先恐后的发表自己的看法,认为该有什么功能,界面

27、上哪那该放什么,该实现什么。然后把大致的规划画了出来,然后就是翻书查看资料。刚开始的那几天,我每天晚上看书至少到11点,因为java学的不是很好,就这样想用自己所掌握的知识去做事不能完成的,每天恶补,我真正是体味到了大学忙碌的感觉。真切的有了充实的感觉。但是我在真正开始着手编写程序的时候发现了自己眼高手低,原来想做一个很丰富很完美的界面,做界面的时候,才发现自己的编写能力的不足。例如对布局运用的不娴熟,一些特别的组件属性用法掌握的不够透彻啊什么的,直接导致我当时界面工作的崩盘。我不想做一个毛糙的界面,于是翻书询问老师和同学,一路磕磕碰碰的画了下来。当时的感觉真的很奇妙,机房里大家都在认真研究和

28、编写程序,噼噼啪啪的键盘敲击声,像一首梁祝,充盈了我的心灵。我意识到了学校老师布置二级课题的用心,不但是对我们这个学期学习结果的总结,更为重要的是锻炼我们的编码能力和培养我们作为软件工作者的工作意思,和对编程的兴趣。我一直认为我的屁股从来暖不热凳子,但是令我惊讶的是,我能在机房里连续几天从早做到晚,抛开自己的提高不说,光就这对编码的感觉,对编程的热忱,就使我受益匪浅。程序最难的部分是我原来以为最简单的部分,但是当我认为一晌可以完成的东西我花了几天的时间还没弄好的时候,我彻底抑郁了。我太高估自己了,我把编程想的太简单了,我记得上课时java老师总是说,你们把java基础篇前5章学透彻的话你们就能

29、做一个合格的程序员了,我当时想这还不简单么,前几章的知识我都快背了下来了,不就是数据类型,条件语句,循环,类,方法什么的嘛。可是那时我发现我错了,大错特错。了解不等于熟悉,熟悉不等于会用,即使会用也不一定能做出好程序,因为做编程是一个很严谨的工作,它容不得一点错误,不像汽车,少了一个轱辘照样能跑。她是一个方法错误就可能会导致整个程序瘫痪的。这时补已经来不及了,只有请教同学了,大家都在做程序,都很忙,我就得空问下会的同学,大部分时间在自己摸索。我当时那个不甘心啊,虎头蛇尾可不是我的作风,我没有放弃,曾经试图为它熬过夜。但是我想,有些事情如果你在过程中得到了很多的话,结果反而也就不那么重要了。这么

30、一个程序,足以(zy)证明我努力过了! 在做程序(chngx)过程中尤为重要的是团队协作,分工合理,各司其职的话才可以很好的完成程序,因为一个人的力量毕竟是有限的,1+1等于2,但是一个加一个人所起到的作用可不能简单的这样累加。此时机房里面人满为患,大家都在敲着键盘,在我看来,我们敲的不是键盘,而是琴键,我们是属于艺术家的范畴,在位自己为理想执着着,追求着。我不禁想,在做三级课题的时候,我又能达到一个什么样的高度呢 ?参考文献1Bruce Eckel.JAVA 编程思想(sxing) 第4版 M:机械(jxi)工业出版社2Cay S Horstmann;Gary Comell.Java 核心技

31、术 卷1:基础知识 M: 机械(jxi)工业出版社3Abraham Silberschaz,Henry F.Korth,S.Sudarshan .(译者:杨东青 唐世渭)数据库系统概念4 Java从入门到精通(李钟尉 周小彤 陈丹丹 等编著)M: 机械工业出版社附录A: 附加图、表附录(fl)B: 主要(zhyo)源程序public Connection connect1() throws ClassNotFoundException, SQLException String dbUrl = jdbc:mysql:/localhost/kouling;String user = root;St

32、ring password = ;Class.forName(com.mysql.jdbc.Driver);return DriverManager.getConnection(dbUrl, user, password);/数据库连接(linji)方法。public String getName(String sno) throws ClassNotFoundException, SQLException String name=null;cn=this.connect1();String sql=select sname from student where sno=+sno+;Prepa

33、redStatement pst=cn.prepareStatement(sql);ResultSet rst=pst.executeQuery();while(rst.next()name=rst.getString(1);return name;/传输输入学号内容的方法。jButton.setText(登录);jButton.addActionListener(new java.awt.event.ActionListener() public void actionPerformed(java.awt.event.ActionEvent e) str = jTextField.getText().trim();str1 = jTextField1.getText();DataBase d = new DataBase();d.connect();d.select(sno, sno, str);String Sno, Sname;try if (d.rs).next() Sno = (d.rs).getString(1);if (str.equals(Sno) luntan luntan = new luntan(Start.this);luntan.setLocationRelativeTo(null);setVisible(false); catch (SQLEx

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论