JavaWeb结课大作业

基于JavaWeb的YFY爬虫系统

目录

一、报告组成 

二、具体要求 

三、评价标准

四、 报告摘要

五、 报告正文 

5.1 系统概述 

5.2 需求分析与总体设计 

5.3 详细设计与实现 

        5.3.1 项目的代码结构 

        5.3.2 数据库的结构 

        5.3.3 项目源代码及主要模块功能的实现 

        5.3.4 运行效果 

5.4 总结与展望

一、报告组成

1、报告分为四部分

封面:以前述页面为准

目录:可在各级标题基础上自动生成

摘要:言简意赅描述系统的出发点、开发要点等

正文:文字、图片、代码截图、表格等。

2、正文包括如下部分:

(1)系统概述

系统设计思路、采用的技术等做出概述

(2)需求分析与总体设计

重点列举系统功能点,以及功能模块划分等

(3)详细设计与实现

系统的数据模型设计、功能模块实现、运行结果等

(4)总结与展望

对系统架构、开发技术、实现功能、软件开发质量等做出总结及展望

二、具体要求

1、报告电子版(word)提交至xxxx,命名为“201720xyz-张三.docx”。

2、开发系统名称自定,需要反映所实现的系统功能,比如《基于Java Web的点餐系统的设计与实现》等。

3、报告应内容详实,篇幅适当,逻辑严谨,用词准确。不得抄袭,不得东拼西凑。

三、评价标准

1、报告格式(30%)

各级标题、正文文本、表格,各部分的格式(字体、大小、段落等)应保持一致;

图片大小合适,裁去无关内容;绘制图形,其中字体应与正文字体大小保持相当。

代码部分,应使用截图,裁去无关部分,其中字体应与正文字体大小保持相当。如果一行代码太长,截取图片过宽,则应修改代码使其跨越多行。

2、报告内容(30%)

各部分宜采用总、分、总的形式来撰写。以下内容不可缺失:

(1)系统的功能模块划分;

(2)项目的代码结构;

(3)项目的数据模型;

(4)主要功能模块实现;

(5)运行效果。

3、系统功能(40%)

工作量适当;综合运用所学技术;代码实现清晰明了,简洁高效。如果采用了所讲述内容之外的技术,适当加分;如果系统个别模块实现有一定的难度,适当加分;如果所设计的系统功能丰富,适当加分。

四、报告摘要

本项目是一个基于Java Web的网络爬虫系统,旨在为用户提供简单易用的网络爬取功能。系统通过Java语言编写,使用Maven进行项目管理,采用SQL Server作为数据存储后端,同时运用了Jsoup作为网络爬虫框架。

系统的主要功能包括用户登录、选择爬取网站、爬取网站内容并展示、以及删除爬取结果。用户首先通过登录页面输入用户名和密码,系统验证用户身份后允许用户进入选择页面。在选择页面,用户可以选择要爬取的网站,系统根据用户选择爬取相应网站的内容,并将爬取结果展示给用户。用户可以在展示页面中删除特定的爬取结果。

出发点

(1)提供一个简单易用的界面,使用户能够方便地选择要爬取的网站,并查看爬取结果。

(2)实现用户身份验证功能,确保只有经过授权的用户才能访问系统,并对爬取结果进行管理。

开发要点

(1)实现用户身份验证功能,保障系统安全性。

(2)使用Jsoup作为网络爬虫框架,实现对指定网站内容的抓取。

(3)利用SQL Server数据库存储爬取结果,确保数据持久性和可靠性。

(4)通过JDBC技术实现数据库连接和操作,包括插入新用户、查询爬取结果、删除爬取结果等功能。

(5)使用JSP技术实现页面展示和用户交互,使系统具有良好的用户体验。

五、报告正文

5.1 系统概述

系统设计思路

(1)用户身份验证:系统设计了登录页面,通过验证用户名和密码,确保只有合法用户才能访问系统。

(2)网络爬取功能:系统利用Jsoup作为网络爬虫框架,实现对指定网站内容的抓取。用户可以选择要爬取的网站,系统根据用户选择进行相应的爬取操作。

(3)数据存储与管理:系统采用SQL Server作为数据存储后端,利用JDBC技术实现数据库连接和操作。爬取的结果存储在数据库中,用户可以通过系统进行展示和管理,包括查看和删除爬取结果。

(4)用户交互界面:系统利用JSP技术实现了用户交互界面,包括登录页面、选择页面、爬取结果展示页面等。通过页面展示和用户交互,使系统具有良好的用户体验。

采用技术

  1. 系统采用了Java作为开发语言,利用Maven进行项目管理。
  2. 网络爬取功能基于Jsoup框架实现。
  3. 数据库操作基于SQL Server和JDBC技术实现。
  4. 用户交互界面基于JSP技术实现。
5.2 需求分析与总体设计

需求分析

系统功能点:

(1)用户登录:用户通过输入用户名和密码进行登录,系统验证用户身份。

(2)网站选择:登录后用户可以选择要爬取的网站,包括百度、知乎和CSDN等。

(3)爬取网站内容:系统根据用户选择爬取相应网站的内容,使用Jsoup框架进行网页抓取。

(4)展示爬取结果:系统将爬取到的网站内容展示给用户,以便用户查看。

(5)删除爬取结果:用户可以在展示页面中选择删除特定的爬取结果。

功能模块划分:

(1)用户模块:负责用户登录验证功能,包括检查用户名和密码、注册新用户等。

(2)网络爬取模块:负责根据用户选择爬取指定网站的内容,并将结果存储到数据库中。

(3)数据库操作模块:负责数据库连接和操作,包括插入新用户、查询爬取结果、删除爬取结果等功能。

(4)页面展示模块:负责将爬取结果展示给用户,包括登录页面、选择页面、结果展示页面等。

总体设计

用户首先访问登录页面,输入用户名和密码进行登录验证。

登录成功后,用户进入选择页面,可以选择要爬取的网站。

用户选择网站后,系统根据用户选择进行网页内容抓取,并将结果存储到数据库中。

用户可以在展示页面中查看爬取结果,并进行删除操作。

系统采用MVC(Model-View-Controller)架构设计,将业务逻辑、数据处理和用户界面分离,提高了系统的可维护性和扩展性。

数据库设计包括用户表(存储用户名和密码)、各网站内容表(存储爬取结果)等。

5.3 详细设计与实现
5.3.1 项目的代码结构

这是一个maven项目,在com.yfy包中,有3个类。Content.java是将爬虫内容作为一个类,有id和url两个属性和getter,setter方法,便于后期利用JDBC在SQL Server中存储爬虫结果。User.java是将用户作为一个类,便于进行网站的登陆验证以及数据库存储用户信息的操作。Jdbc.java主要涵盖了利用JDBC技术对数据库操作的方法,属于数据库操作模块。

webapp中有6个jsp页面,其中login.jsp和check.jsp属于用户模块,负责对用户登陆进行验证并将用户信息存储到数据库中。crawler.jsp进行爬虫操作,属于网络爬取模块。在select.jsp中,用户可以选择在哪个网站爬虫获取超链接,result.jsp展示爬虫结果,属于页面展示模块。delete.jsp便于用户删除不满意的爬虫结果,实现对爬虫结果的管理,属于数据库操作模块。

5.3.2 数据库的结构

本项目使用Crawler数据库,数据表有4个,表U用来存储用户登陆信息便于进行登陆验证,表Baidu,Zhihu,Csdn分别用来存储在百度首页、知乎首页、CSDN首页爬取的超链接。

数据表的结构分别如下:

表U

表Baidu 

 

表Zhihu

表Csdn

 

5.3.3 项目源代码及主要功能模块的实现

pom.xml

 User.java

Content.java

 

Jdbc.java

 

 

 login.jsp

 check.jsp

 

select.jsp

 

crawler.jsp

result.jsp

delete.jsp

 

5.3.4 运行效果

5.4 总结与展望

本项目是一个基于Java Web的网络爬虫系统,通过Maven进行项目管理,采用SQL Server作为数据存储后端,运用了Jsoup作为网络爬虫框架。系统实现了用户登录、选择爬取网站、爬取网站内容展示以及管理爬取结果等功能。在开发过程中,系统采用了MVC架构,将业务逻辑、数据处理和用户界面分离,提高了系统的可维护性和扩展性。通过合理的功能设计和技术选型,为用户提供了一个简单易用、功能完善的网络爬虫系统。

在未来的发展中,可以进一步完善和优化系统,包括但不限于以下方面:

(1)界面优化:改进用户界面设计,提升用户体验,增加交互性和可视化效果。

(2)功能扩展:除了目前的百度、知乎和CSDN,可以考虑引入更多常用网站,满足用户更广泛的需求。支持定时爬取,可以设计定时任务,定期对网站内容进行爬取,保持数据的实时性。

(3)数据分析:结合数据挖掘和分析技术,对爬取的数据进行处理和分析,提供更多有价值的信息和服务。

(4)安全性加强:加强系统的安全性,防止恶意攻击和数据泄露,保障用户信息和数据的安全。

通过持续的改进和优化,本项目有望成为一个更加稳定、可靠且功能强大的网络爬虫系统,为用户提供更好的服务和体验。

 

  • 13
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
javaweb蛋糕商城大作业是一个基于Java语言开发的网上蛋糕商城项目。该项目旨在实现一个完整的网上蛋糕购物系统,包括用户注册登录、蛋糕浏览、购物车管理、订单提交与支付等功能。 首先,用户可以通过注册登录功能创建个人账户,并且可以查看个人信息和订单记录。其次,在蛋糕商城首页,用户可以浏览不同种类的蛋糕,包括生日蛋糕、水果蛋糕、巧克力蛋糕等,并且可以查看商品详情和价格。 在选择蛋糕后,用户可以将商品添加至购物车,并且可以对购物车进行管理,包括增加、删除商品或者修改商品数量。用户可以在购物车页面确认购买商品后,提交订单并选择支付方式进行支付。 在后台管理方面,管理员可以管理蛋糕商品信息、订单信息和用户信息,包括添加、编辑和删除商品,查看订单状态和处理退款等操作。 此外,该作业还应该考虑到安全性和交互性问题,例如用户信息的加密存储和传输以及良好的用户交互体验。 在开发过程中,需要使用到的技术包括Java语言、Spring框架、MyBatis框架、前端页面技术等。同时,需要考虑到数据库设计和性能优化等方面的问题。 总而言之,javaweb蛋糕商城大作业是一个涵盖了用户管理、商品管理、订单管理和后台管理等功能的完整项目,需要综合考虑到技术、安全和用户体验等方面的问题,是一个较为复杂和全面的实际开发项目。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值