javaweb项目实验报告_第1页
javaweb项目实验报告_第2页
javaweb项目实验报告_第3页
javaweb项目实验报告_第4页
javaweb项目实验报告_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

Javaweb 项目编写 -留言板的设计 指导教师: 庄凯 小组成员: hx20090412 田磊 hx20090429 宋昭辉 hx20090430 孔席超 1.归纳项目的功能(宏观)-UML 的 UseCase(用例图) 在本项目中,共有 8 个模块,小组成员分配如下: 孔席超:注册,登录,浏览; 田 磊:发表主题,分页查看; 宋昭辉:删除主题,修改主题,发表评论。 2.根据用例图,确定功能所需要的信息(确定数据字典) User 表 信息 数据类型 用户编号 Uid int 用户名 username String 性别 sex String 密码 Password String 昵称 Lovername String 创建时间 Regtime Timestape Topic 表 信息 数据类型 主题编号 tid Int 主题名称 Tname String 主题内容 Tcontext Text 发表时间 Ttime Timestape 3 Context 表 信息 数据类型 评论内容 Ccontext Text 评论时间 Ctime Timestape 评论编号 cid Int 数据建模 数据模型之间的关系 将其转换成为真实的表 生成 sql 脚本 /*=*/ /* DBMS name: MySQL 5.0 */ /* Created on: 2010/11/28 14:48:07 */ /*=*/ drop table if exists Context; /如果存在 context 表将它删除 drop table if exists Topic; /如果存在 topic 表将它删除 drop table if exists User; /如果存在 user 表将它删除 /*=*/ /* Table: Context */ /*=*/ create table Context ( cid int auto_increment not null, /定义整形变量 cid,非 空 tid int, /定义整形变量 tid uid int, /定义整型变量 uid ccontext text not null, /定义文本区 ccontext,非空 ctime timestamp not null, /定义一个时间戳,非空 primary key (cid) /主键为 cid ); /*=*/ /* Table: Topic */ /*=*/ create table Topic ( tid int auto_increment not null, /定义整形变量 tid,非空 uid int, /定义整型变量 uid tname varchar(20) not null,/定义字符串 tname,非空 tcontext text not null, /定义文本区,非空 ttime timestamp not null, /定义一个时间戳,非空 primary key (tid) /主键为 tid ); /*=*/ /* Table: User */ /*=*/ create table User ( uid int auto_increment not null, /定义整形变量 uid,非空 username varchar(10) not null,/定义字符串 username,非空 sex varchar(4) not null, /定义字符串 sex,非空 password varchar(20) not null, /定义字符串 password,非空 lovername varchar(10) not null, /定义字符串 password,非空 regtime timestamp not null, /定义一个时间戳,非空 primary key (uid) /主键为 uid ); 5 3.根据用例图创建 时序和动作图 以下注册、登录模块为孔席超制作: 注册模块: 登录模块: 以下发表主题模块为田磊制作: 发表主题模块: 以下删除主题、修改主题模块为宋昭辉制作: 删除主题模块: 修改主题模块: 4.资源(整合) 视图级别 :index.jsp login.jsp register.jsp addTopic.jsp 控制级别: UserAction.java TopAction.java 模型级别 : DAO.java 数据库控制:DBHander.java 7 5.类图 6.程序功能说明: 程序部分代码及功能的截图如下: 以下模块为孔席超设计编写: 注册模块: 后台验证有无重复信息代码 String sql=“select count(*) from user where username=? and lovername=?“; PreparedStatement ps=conn.prepareStatement(sql); ps.setString(1, user.getUsername(); ps.setString(2, user.getLovername(); ResultSet rs = ps.executeQuery(); 添加新的注册的信息 sql=“insert into user values (null,?,?,?,?,sysdate()“; ps=conn.prepareStatement(sql); ps.setString(1, user.getUsername(); ps.setString(2, user.getSex(); ps.setString(3, user.getLovername(); ps.setString(4, user.getPassword(); ps.executeUpdate(); 汉字转码: String username = request.getParameter(“username“); username=new String(username.getBytes(“ISO8859_1“),“utf-8“); String lovername = request.getParameter(“lovername“); lovername=new String(lovername.getBytes(“ISO8859_1“),“utf-8“); String sex = request.getParameter(“sex“); sex=new String(sex.getBytes(“ISO8859_1“),“utf-8“); String password = request.getParameter(“password“); 登录模块: 在数据库中进行查询的验证 String sql = “select password,uid from user where username=?“; 浏览模块: 创建查询的句柄语句, 查询 topic表中的信息: String sql = “select tid ,uid ,tname,tcontext,ttime from topic“; PreparedStatement ps = conn.prepareStatement(sql); ResultSet rs = ps.executeQuery(); 9 以下模块为田磊设计编写: 发表主题模块: 向数据库添加信息代码: String sql=“insert into topic values (null,null,?,?,sysdate()“; PreparedStatement ps=conn.prepareStatement(sql); ps.setString(1, topic.getTname(); ps.setString(2, topic.getTcontext(); ps.executeUpdate(); 汉字转码: String tname = request.getParameter(“tname“); tname=new String(tname.getBytes(“ISO-8859-1“),“utf-8“); String context = request.getParameter(“tcontext“); context=new String(context.getBytes(“ISO-8859-1“),“utf-8“); String id = request.getParameter(“tid“).trim(); 分页查看模块: 以下模块为宋昭辉设计编写: 删除主题模块: 删除前: 删除前两个主题: 11 从数据库中删除信息部分代码: String sql = “delete from topic where tid=?“; PreparedStatement ps = conn.prepareStatement(sql); ps.setInt(1, id); ps.execute(); 要删除的主题的编号获取: String tid=request.getParameter(“tid“); Integer id=Integer.parseInt(tid); DAO dao=new DAO(); Topic topic = dao.delTopicById(id); 获取要删除的主题: request.setAttribute(“topic“, topic); 修改主题模块: 修改前: 对第一条主题进行修改: 修改完成: 修改模块的部分代码: String sql = “update topic set tname= ? , tcontext= ? where tid=? “; 要修改的主题的编号获取: String tid=request.getParameter(“tid“); Integer id=Integer.parseInt(tid); System.out.println(“tid “+id); DAO dao=new DAO(); Topic topic = dao.getTopicById(id); 获取要修改的主题: request.setAttribute(“topic“, topic); 13 7.心得体会 孔席超:在本次项目中我主要负责的是注册以及登陆模块。在项目制作的初期 阶段,由于对一些软件比如 startUML等缺乏了解,项目进展的很缓慢。但是在 中后期阶段由于老师的讲解以及小组成员之间的相互配合,很快就步入了正轨。 在我负责的模块中,由于对 java语言运用的不太熟练,使我在完成一些功能时 遇到一些障碍,比如做登陆模块时在密码的验证这一部分不知道如何去下手, 但是由于此次项目是以团队为基础的,我们三人在一起进行商量,很快就解决 了问题。我想这次项目的完成对我们有很大的帮助,不仅在 JAVA语言的运用上 有了提高,对于数据库语言及操作也有了比较全面深刻的了解,比如如何创建 一个表,插入相应的字段,给字段添加相关的属性,以及对表进行相关的搜索。 在服务器中的.xml 文件配置方面也了解到了相应标签的含义以及如何配置,并 上传到服务器上。在此次项目中,对有关制作 WEB项目的软件比如 Tomcat、MyEclipse 等软件的运用上也有了小幅的提高。综合一上,这次 web 项目的制作对我在综合运用方面有了很大的帮助提高。 田磊:在这次项目的编写中,我主要负责的是发表主题、分页查看功能的编写。 两个功能看似相互独立,实际上有着很紧密的联系,分页查看是为了将主题在 前台呈现的效果更加简洁、美观。在发表主题模块中,编写提交主题功能很顺 利,初步完成后,尝试着去发表英文,能显示,感觉自己完成了,但我忽略了 一点,就是汉字转码有问题却没有发现,致使在输入汉字的时候会显示乱码, 对转码的代码进行查看发现,对多位编码 utf-8 和 iso-8859-1 的使用出现了问题 (是由于多次改变转码格式而引起的)致使只能显示英文和数字而无法录入中文, 终于发现了问题,现在这个情况已经得到了解决 ;接下来是分页查看的模块, 这个模块的主要功能是将主题、评论等内容显示成页面形式,更方便用户的查 看,使页面呈现的简洁、方便,这与 html 文件的编写有关,css 文件决定了显 示的效果,在编写过程中,误将 .perties 文件放入了 css 目录下, 而且 jar 包的导入出现了问题,导致分页显示异常,出现了不必要的麻烦,经过 对文件位置的转换以及 jar 包的重新导入,现在分页的雏形已经基本显示出来, 分页的制作还对我的页面设计功能进行了锻炼,对这个功能的了解更加深了一 步。现在两个功能的设计已经完成,和小组其他成员的功能结合在一起,就基 本完成了本次 web 项目的编写,整体的功能已经调试完成,还要对其他不太熟 悉的模块多加了解,争取全面掌握整个程序的运行流程和控制效果。 宋昭辉:在本次项目中我主要负责了删除修改模块的制作。在制作过程中,使 我对数据库中内容的删除、修改和查询语句得到了充分的练习,和熟练的运用。 在 jsp页面中使用 div标签进行页面的控制,使页面更加合理美观。我学会了 用 java语言实现前台和后台数据库的连接,在前台对后台数据库的控制。在

温馨提示

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

评论

0/150

提交评论