大数据设计基于Hadoop全国天气可视化分析系统

本文介绍了全国天气可视化分析系统的开发,包括系统架构、功能模块(如用户注册、天气信息查询、管理员管理等)、开发环境(Hadoop后端与HTML前端)、以及核心代码示例。系统采用Java、Hadoop框架、MVC模式和MySQL数据库,详细阐述了功能需求和管理员与用户的功能区别。
摘要由CSDN通过智能技术生成

一、项目介绍
  全国天气可视化分析系统主要功能模块包括系统首页、轮播图、公告消息、资源管理(天气资讯、资讯分类)系统用户(管理员、普通用户)模块管理(天气信息、降水数据),采取面对对象的开发模式进行软件的开发和硬体的架设,能很好的满足实际使用的需求,完善了对应的软体架设以及程序编码的工作,系统采用java语言、Hadoop框架、MVC模式、MySQL数据库,实现了本系统的全部功能。本次报告,首先分析了研究的背景、作用、意义,为研究工作的合理性打下了基础。针对全国天气可视化分析系统的各项需求以及技术问题进行分析,证明了系统的必要性和技术可行性,然后对设计系统需要使用的技术软件以及设计思想做了基本的介绍,最后来实现全国天气可视化分析系统和部署运行使用它。
关键词:天气信息;Hadoop技术;Mysql数据库

二、开发环境
Hadoop后端+HTML前端+大数据屏——>Hadoop、HTML、大数据屏
————————————————

三、功能介绍
3.2功能需求分析
全国天气可视化分析系统的功能主要分为前台用户根据自己的需求进行注册登录,浏览天气信息并对选中的天气进行搜索操作。后台系统管理员因职责的不同,管理员主要对注册用户,天气信息、降水数据进行管理。
系统用例图如下所示。

图3-1 系统用例图
请添加图片描述

3.2.1前台用户功能
前台用户可分为未注册用户需求和以注册用户需求。
未注册用户的功能如下:
注册账号:用户填写个人信息,并验证手机号码。
浏览天气资讯:用户可以浏览天气资讯信息详情。
已注册用户的功能如下:
登录:根据账号密码进行登录操作。
维护个人信息:用户因个人信息的变更可以随时修改自己注册信息。
浏览天气资讯:查看天气资讯信息以及可以进行点赞评论等。
天气信息:选中某个城市、日期可查看其天气信息。
降水数据:可以查看某个城市、平均气温、累积降水信息。

3.2.2后台管理员功能
管理员功能如下:
修改密码:管理员可以随时修改自己进入系统的登录密码,以保证系统的安全性。
天气数据管理:对天气数据信息进行维护,添加、删除、修改信息。
降水数据管理:对降水数据信息进行维护,添加、删除、修改信息。
用户管理:可以查看注册用户的信息,并对其进行管理。
资讯管理:可以发布系统最新资讯。

综上所述,系统功能结构图如下图所示。

图4-2 系统功能结构图

四、核心代码
部分代码:

-- coding: utf-8 --

import os
import importlib

services_abspath_arr = []
services_arr = []
services_dir_ = os.getcwd() + “\hadoop”

遍历模块文件(绝对路径)加到services_abspath_arr数组

选择服务函数

def service_hadoop_select(str):
for service_item in services_arr:
if str.capitalize() == service_item.class.name:
return service_item

def foreach_file(path_name):
for root, dirs, files in os.walk(path_name):
for f in files:
services_abspath_arr.append(os.path.join(root, f))

读取模块

f:文件路径

def loadModule(f):
# 将f变成相对路径
f = f.replace(services_dir_ + “\”, “”).replace(“.py”, “”).replace(“\”, “/”)
# print(f)
mod = importlib.import_module(
“jobs.”+f.replace(“/”, “.”)
)
arr_1 = f.split(“/”)
cs_service = getattr(mod, arr_1[len(arr_1) - 1].capitalize())
# service的class形式
service = cs_service()
services_arr.append(service)

foreach_file(services_dir_)

for f in services_abspath_arr:
if f.find(“.pyc”) == -1 and f.find(“init”) == -1:
# print(f)
loadModule(f)

![请添加图片描述](https://img-blog.csdnimg.cn/direct/b8669f73312e40d397b22d09b25415a7.png

五、效果图

请添加图片描述

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

  • 11
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值