首页 > 编程笔记 > Java笔记 阅读:774

Java项目实战之百度知道网站开发

技术交流平台是一种以技术交流和会员互动为核心的社区,在这种社区上,用户不仅可以维护自己的文章,也可以针对其他人的文章发表自己的意见,还可以输入关键字搜索相关的文章。随着IT技术更新速度的加快,这种社区将会成为未来IT技术服务的主要载体,因而其前景是一片光明的。本章将向大家介绍如何通过Struts 2.5+Spring 4+Hibernate 4来实现这样一种技术交流平台。

本项目利用Struts 2.5+Spring 4+Hibernate 4+jQuery+MySQL实现,通过本项目,可以学习到:

开发背景

近年来,随着IT技术的飞速发展,各种技术交流平台已经成为技术人员进行技术交流的主要途径,一些著名的技术交流平台,例如ITeye、CSDN、开源中国等已经成为技术人员的主要活动社区。在这种形势下,作为专业从事软件开发和软件图书创作的明日公司,为了给公司员工以及广大用户提供技术交流的平台,公司决定开发明日知道系统。该系统专门为软件编程人员设计。用户不仅可以在这里发表自己的技术文章,也可以阅读别人的文章,还可以通过“搜索答案”的方式搜索一种类型的文章,方便大家的学习和交流。

需求分析

明日知道系统主要是为了满足企业内部员工和企业用户的需要,因此可以根据不同公司的内部结构来组织系统的框架。例如,明日公司是一家专业从事软件开发和软件图书创作的IT企业,公司分为Java、JavaWeb、C#、.NET等几大部门。每个部门都有独立的任务和用户群,因此,可以将明日知道系统按照明日公司的部门分类,即可分为Java、JavaWeb、C#、.NET等几大部分,完成适合企业的需要。

可行性研究

对于从事软件开发的企业来说,可能经常会有出差或者单独完成一项任务的时候,而每个人都会有自己的工作心得等内容。如果在工作中进行交流,可能会因为耽误大家的时间而影响工作。因此,开发类似于明日知道的技术讨论系统是非常必要的,开发明日知道系统有以下优势。

☑ 经济可行性
明日知道系统不是很复杂,主要包括用户管理、文章管理两项内容。因此,系统开发不会用很长的时间,投资也不会太大。而通过明日知道系统,可以实现用户之间的相互交流是非常重要的。既可以为大家的交流提供平台,也可以提高大家的技术,可以说是一举两得。

☑ 技术可行性
本系统应用了Struts 2.5、Hibernate 4、Spring 4和jQuery框架,都是当前比较流行的技术:Struts 2.5是构建基于Java的Web应用的首选技术;Hibernate已经被越来越多的Java开发人员作为企业应用和关系数据库之间的中间件;Spring框架的应用可以简化开发代码;jQuery是每个Web程序员必学的技术。应用这几种技术开发的项目,代码规整,方便维护。

系统目标

本系统根据企业的需求进行设计,主要实现以下目标。

☑ 界面友好,采用人机对话方式,操作简单。信息查询灵活、快捷,数据存储安全。
☑ 实现用户管理功能,主要包括用户登录与注册功能。
☑ 对用户输入的数据,系统进行严格的数据检查,尽可能排除人为错误。
☑ 要实现模糊查询功能,允许用户查询一类的文章。
☑ 系统运行稳定,安全可靠。

系统功能结构

本系统主要分为用户模块、文章模块、文章搜索模块三个大功能模块。当用户成功登录后,可以搜索文章,并对文章进行回复等操作,本系统功能结构如图所示。

系统流程

本系统流程如图所示。

开发环境

本系统的软件开发及运行环境具体如下。
☑ 操作系统:Windows 7。
☑ JDK环境:Java SE Development Kit(JDK)version 8。
☑ 开发工具:Eclipse for Java EE 4.7(Oxygen)。
☑ Web服务器:Tomcat 9.0。
☑ 数据库:MySQL 5.7数据库。
☑ 浏览器:推荐Google Chrome浏览器。
☑ 分辨率:最佳效果为1440×900像素。

系统预览

明日知道中有多个页面,下面列出网站中几个典型页面的预览,其他页面可以通过运行资源包中本系统的源程序进行查看。

明日知道的首页主要用于进行文章的搜索和导航,效果如图所示。


在明日知道的首页中,单击右上角的“进入社区”超链接,将显示到社区首页,如图所示。在该页面中将列出各个分类,以及该分类的一些统计信息。


在社区首页中,单击某个分类的标题,可以分页显示该分类的帖子列表,如图所示。


在帖子列表中,单击某个帖子标题时,将显示该帖子的详细信息,包括该帖子的回复信息。另外,也可以对该帖子进行回复,如图所示。

文件夹组织结构

在开发程序之前,可以把系统中可能用到的文件夹先创建出来(例如,创建一个名为css的文件夹,用于保存网站中用到的CSS样式),这样不仅可以方便以后的程序开发工作,也可以规范网站的整体结构,方便日后的网站维护。在开发时,只需要将所创建的文件保存在相应的文件夹中即可。


对本项目感兴趣的读者,请「转到这里」下载源码和解析。

关注微信公众号「站长严长生」,在手机上阅读所有教程,随时随地都能学习。本公众号由C语言中文网站长运营,每日更新,坚持原创,敢说真话,凡事有态度。

魏雪原二维码
微信扫描二维码关注公众号

优秀文章