1、结题形式产品,程序代码,设计说明书时间分配:总体设计时间为1周1 需求分析,概要设计 1天2 功能模块开发 4天3 上机调试,实现功能 1天4 写说明书、答辩 1天第一章 网上论坛系统分析 41开发平台 4(1)MyEclipse 4(2) Tomcat 42.数据库 53.功能模块 6第二章 网上论坛系统开发技术 61.J2EE技术简单介绍 62.J2EE技术struts简单介绍 63.J2EE技术hibernate简单介绍 74.J2EE技术MVC开发模式介绍 7第三章 网上论坛系统开发 8一、数据库开发与设计 8二、登录模块 122.1登录界面 122.2注册模块 142.3论坛首页 1
2、62.4新建帖子模块 212.5查看帖子模块 232.6添加回复模块 242.7 错误页面模块 25第四章 总结 25第五章 参考文献 25摘要J2EE是一套全然不同于传统应用开发的技术架构,它包含许多组件,可以简化和规范应用系统的开发和部署,提高可移植性、安全性与重用价值,J2EE的核心是一组技术规范与指南,其包含的各类组件、服务架构及技术层次均有共通的标准及规格,因而各种遵循J2EE架构的平台具有良好的兼容性。本次课程设计的题目是基于基于Struts+Hibernate网上论坛系统,实现了论坛的基本功能,即用户登陆、用户注册、用户发帖以及回帖等。主要任务是学会J2EE程序开发的环境搭建和配
3、置,并在实践运用中学习和掌握J2EE程序开发的全过程,进一步熟悉掌握J2EE程序设计语言的基础内容。论坛又名网络论坛BBS,全称为Bulletin Board System(电子公告板)。它是Internet上的一种电子信息服务系统。它提供一块公共电子白板,每个用户都可以在上面书写,可发布信息或提出看法。它是一种交互性强,内容丰富而即使的Internet电子信息服务系统。用户在BBS站点上可以获得各种信息服务,发布信息,进行讨论,聊天等等。像日程生活中的黑板报一样,论坛按不同的主题分为许多板块,版面的设立依据是大多数用户的要求和喜好,用户可以阅读别人关于某个主题的看法,也可以将自己的想法毫无保
4、留的贴到论坛中。关键词:论坛系统 MVC设计模式 JSP 第一章 网上论坛系统分析1开发平台本系统的开发平台为MyEclipse+Tomcat(1)MyEclipseMyEclipse,是一个十分优秀的用于开发Java, J2EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开元产品的支持十分不错。MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是
5、功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSP, CSS, Javascript, SQL, Hibernate。在结构上,MyEclipse的特征可以被分为7类: 1. JavaEE模型 2. WEB开发工具 3. EJB开发工具 4. 应用程序服务器的连接器 5. JavaEE项目部署服务 6. 数据库服务 7. MyEclipse整合帮助(2) TomcatTomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的 改进和完善中,任何一
6、个感兴趣的程序员都可以更改它或在其中加入新的功能。Tomcat 是一个轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。这里的诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS、Apac
7、he等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。目前Tomcat最新版本为7.0.12Released。2.数据库库 yuu用户登录表t_user帖子t_message回复表t_comment3.功能模块第二章 网上论坛系统开发技术1.J2EE技术简单介绍J2EE是一套全然不同于传统应用开发的技术架构,包含许多组件,主要可简化且规范应用系统的开发与部署,进而提高可移植性、安全与再用价值。J2EE平台是用于在分布式企业环境中开发、部署喝执
8、行应用程序的体系结构。分布式应用程序需要系统级服务,如事务管理、安全性、客户端连接喝数据库访问。2.J2EE技术struts简单介绍struts是开源软件。使用Struts的目的是为了减少在运用MVC设计模型来开发Web应用的时间。我们利用混合使用Servlets和JSP的优点来建立可扩展的应用。Struts 是MVC的一种实现,它将 Servlet和 JSP 标记(属于 J2EE 规范)用作实现的一部分。Struts继承了MVC的各项特性,并根据J2EE的特点,做了相应的变化与扩展。struts框架具有组件的模块化,灵活性和重用性的优点,同时简化了基于MVC的web应用程序的开发。 stru
9、ts可以清晰地区分控制,事务逻辑和外观,从而简化了开发应用程序的过程。struts提供的类使得开发工作更加简单,这些类包括:a. 控制程序流程的类 b. 实现和执行程序事务逻辑的类 c. 自定义的标记库使得创建和验证HTML表单更加容易struts 3.J2EE技术hibernate简单介绍Hibernate定义为一个对象关系数据库映射(ObjectRelational Mapping,ORM)工具,它作为开源的持久层框架,目前的技术已经相对成熟,且为众多的软件开发项目所采用。它作为连接Java应用程序和数据库的中间件,对JDBC进行简单封装,负责java对象的持久化。在分层结构中处于持久化层
10、,封装对数据库的访问细节,使业务逻辑层更专注于实现业务逻辑。4.J2EE技术MVC开发模式介绍MVC(model view controller)是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。视图 :显示层,主要用来实现信息输入和展示功能。模型:业务逻辑层主要用来实现具体的业务逻辑和状态管理。控制器 :控制层,主要起到控制业务流程控制的作用,实现视图模型部分的协同工作。MVC结构第三章 网上论坛系统开发一、数据库开发与设计1.全局变量的配置(Hibernate.cfg.xml) jdbc:mysql
11、:localhostsi.driver_classcom.mysql.jdbc.Driver.usernameroot.password1232.表格的创建package com;import org.;import org.(String args) Configuration cfg=new Configuration().configure(); SchemaExport export=new SchemaExport(cfg); export.create(true, true);3.POJO对象(1)User.javapublic class User private String
12、username; private String password; private int id; public int getId() return id; public void setId(int id) this.id = id; public String getPassword() return password; public String getUsername() return username; public void setPassword(String password) this.password = password; public void setUsernam
13、e(String username) this.username = username; 用户表的映射文件配置(User.=id username column=passwordclass(2)Message.java:import java.util.Date;import java.util.HashSet;import java.util.Set;public class Message private Date time; private String content; private String author; private String title; private Set c
14、omment = new HashSet(); public String getCommentCount() return String.valueOf(comment.size(); public String getTimeString() return time.toString(); public String getAuthor() return author; public void setAuthor(String author) this.author = author; public String getContent() return content; public vo
15、id setContent(String content) this.content = content; public Date getTime() return time; public void setTime(Date time) this.time = time; public String getTitle() return title; public void setTitle(String title) this.title = title; public Set getComment() return comment; public void setComment(Set c
16、omment) thisment = comment;帖子表的映射文件配置(Message.=timecontentauthortitleset name=comment table= lazy=false inverse=true cascade=save-updatekey column=message_idkeyone-to-many class=one-to-manyset(3)Comment.javapublic class Comment private int message_id; public String getTimeString() public int getMess
17、age_id() return message_id; public void setMessage_id(int message_id) this.message_id = message_id;回复表的映射文件配置(Comment.=二、登录模块2.1登录界面1)实现了用户登录及验证功能,使系统更加安全可靠。2)主要代码a.web.xml的配置servlet-mappingservlet-nameaction*.doform-beansform-bean name=loginForm type=com.LoginActionFormform-beanaction-mappingsactio
18、n name= path=logincom.LoginActionforward name=login.jspforwardsuccesspost.dofailurefailure.jspactionc.登录部分通过继承Action 和 ActionForm类,实现了前台的数据收集和处理。public class LoginAction extends Action public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletRespons
19、e response) throws Exception LoginActionForm laf=(LoginActionForm)form; String username=laf.getUsername(); String password=laf.getPassword(); try SessionFactory sf =new Configuration().configure().buildSessionFactory(); Session session=sf.openSession(); Transaction tx=session.beginTransaction(); Str
20、ing sqlQuery=select u from User u where u.username=+ username+; Query query=session.createQuery(sqlQuery); ArrayList userlist=(ArrayList)query.list(); txmit(); session.close(); User user=new User(); if(null!=userlist)&(userlist.size()0) user=(User)userlist.get(0); if(!user.getPassword().equals(passw
21、ord) return mapping.findForward(error); else catch(HibernateException e) e.printStackTrace(); HttpSession =request.getSession(); .setAttribute(, username);2.2注册模块1)注册界面a.struts-config.xml的配置代码registerFormcom. registeActionFormaction path=registertype=com.registerActionname=scope=requestregistersuccess.jspregisterfailure.jspaction
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2