音乐网站设计与实现

文末获取源码和万字论文,制作不易,感谢点赞支持。

音乐网站设计与实现

摘 要

音乐网站是针对目前音乐网站管理的实际需求,从实际工作出发,对过去的音乐网站管理系统存在的问题进行分析,结合计算机系统的结构、概念、模型、原理、方法,在计算机各种优势的情况下,采用目前最流行的B/S结构和java中流行的MVC三层设计模式和eclipse编辑器、MySQL数据库设计并实现的 。本音乐网站管理系统主要包括系统用户管理模块、音乐人管理模块、变幻图管理、音乐信息管理、登录模块、和退出模块等多个模块。它帮助音乐网站管理实现了信息化、网络化,通过测试,实现了系统设计目标,相比传统的管理模式,本系统合理的利用了音乐网站管理数据资源,有效的减少了音乐网站管理的经济投入,大大提高了音乐网站管理的效率。

关键词:音乐网站MVC模式MySQL数据库

ABSTRACT

This music website is aimed at the actual needs of the current music website management. From the actual work, the problems existing in the past music website management system are analyzed, and the structure, concept, model, principle, and method of the computer system are combined with various advantages of the computer. Under the circumstances, Designed and implemented using the most popular B/S structure and popular MVC three-layer design pattern in Java and the clipse editor and MySQL database. This music website management system mainly includes system user management module, album management module, change map management, music information management, login module, and exit module. It has helped music website management to achieve informatization and networking. Through testing, it has achieved the goal of system design. Compared with the traditional management model, the system has reasonably used music website management data resources and effectively reduced the economic investment in music website management. It greatly improves the efficiency of music website management..

key wordsMusic website; MVC mode; MySQL database

目  录

音乐网站设计与实现

摘 要

ABSTRACT

目  录

第1章 绪论

1.1开发背景

1.2开发意义

1.3研究内容

第2章 主要技术和工具介绍

2.1 JSP语言

2.2 MySQL数据库

2.3 jsp技术

2.4ssm简介

第3章 系统分析

3.1可行性分析

3.1.1经济可行性

3.1.2技术可行性

3.1.3操作可行性

3.2需求分析

3.3业务流程分析

3.4数据流程分析

第4章 系统设计

4.1系统结构设计

4.2功能模块设计

4.3数据库设计

4.3.1数据库设计概述

4.3.1概念设计

4.3.2表设计

第5章  系统实现

5.1基本任务

5.2登录模块的实现

5.2.1首页实现

5.2.2管理员后台登录

5.3用户模块的实现

5.3.1注册模块及登录的实现

5.2.2留言模块的实现

5.2.3收藏模块的实现

5.4管理员模块的实现

5.4.1系统用户管理模块的实现

5.4.2网站公告管理模块的实现

5.4.3变幻图管理模块的实现

5.4.4音乐信息管理模块的实现

5.4.5音乐人管理模块的实现

第6章  系统测试

6.1测试目的

6.2测试概述

6.3单元测试

6.3.1注册测试

6.3.2登录测试

6.4集成测试

第7章  总结

致  谢

参考文献

第1章 绪论

1.1开发背景

上个世纪末期,网络技术逐渐开始流行起来,互联网发展进入了起步阶段。到了新世纪初期,信息化技术开始逐渐发展,计算机应用技术逐渐体现出优势来。接着,大量的电脑进入了千家万户,企事业单位、高校、机关等部门。信息化时代逐渐来临,音乐网站管理成为互联网时代下媒体管理的核心内容。音乐网站管理是媒体中非常重要的一部分,然而由于其性质也致使它难以被实时衡量。长期来看,管理十分不便利,存在误差,查询难的现象,一旦数据过多,人工管理方式就很难维持。随着信息技术的应用拓展,逐渐引用了信息化技术管理,逐渐取代了人工管理模式,采用计算机系统来管理学校信息,带来的好处是查询便利,信息准确率高,节省了开资,提高了工作的效率。本次系统开发,主要以音乐网站管理为对象,根据需求来完成功能设计[1][2]。

1.2开发意义

随着现代音乐网站管理的快速发展,可以说音乐网站管理已经逐渐成为现代音乐网站管理过程中最为重要的部分之一。但是一直以来我国传统的音乐网站管理并没有建立一套完善的行之有效的音乐网站管理系统,传统的音乐网站管理已经无法适应高速发展,无论是从效率还是从效果来看都远远的和预计相差甚多,可以断言,传统的音乐网站管理模式已经不再适应,甚至已经拖累了发展。因此,需要一个操作方便,高效的管理体系。

系统设计的主要意义在于,一方面,对于网站来讲,系统上线后可以带来很大的便利性,音乐网站管理属于非常细致的管理模式,要求数据量大,计算机管理可以提高精确性,更为便利的就是信息的查询,大大的提高了工作效率,改善了管理质量;另一方面,通过系统的设计,自己对软件设计有了更加深入的了解,并且产生了浓厚的学习兴趣,在对问题分析方面有了独特的方式,是进入社会之前一次很好的锻炼机会[3][4]。 

1.3研究内容

  1. 不同用户的登录问题:根据用户的类别(超级管理员、普通用户)实现用户操作权限的区分并显示不同的操作界面。
  2. 数据库的连接问题:数据库连接为系统中的关键技术。
  3. 数据的一致性和安全问题:本系统必须保证数据的一致性和安全,才能实现有效的管理。不能让没有权限的用户对数据进行操作并且定期对数据库进行备份。
  4. 界面开发:系统界面的设计很重要,要使界面具有亲和力。
  5. 分析学校信息化现状;
  6. 研究音乐网站管理系统的现状及存在的问题;
  7. 研究系统平台的总体架构、总体设计、数据库设计、数据库安全设计及功能设计;
  8. 研究平台各个子系统的功能及实现的方法、信息技术的融合、信息安全技术的维护;
  9. 进行音乐网站管理系统的功能设计。

第2章 主要技术和工具介绍

2.1 JSP语言

本系统的开发主要用JSP(Hypertext Preprocessor,超文本预处理器)这一门开发语言。作为开发语言,这是一种通用的开源脚本语言。这种语法主要是将C语言、Java和Perl等语言的相关特点进行总结吸收形成自身特点,使得更加方便学习,当前广泛在Web领域进行使用。此语法的独特之处在于将C、Java、Perl这三种语言进行了归纳,并创新出JSP具有自己特点的语法。它在执行动态网页方面相对于CGI和Perl语言更加高效。用动态页面如果是使用JSP语言,那么相对于其它的编程语言,JSP的执行主要是体现在将程序嵌入到HTML文档中,相对于其它语言,其执行的效率一般都领先于其它的语言。此外,JSP编译后代码方面也是做得比较好的,一般其编译能够使代码的运行速度比一般语言都要快[7]。

其主要特性有以下几个方面:

1)免费性

和其它技术相比,JSP本身免费且是开源代码。

2)快捷性

使用JSP编程的程序一般开发比较快,而且系统运行也比较快,也易于学习[2]。嵌入于HTML的这种方式,使其相对于其它开发语言编辑起来相对简单,实用性也更加强,对初学者是比较适用的。

3)跨平台性强

由于JSP是运行在服务器的脚本,可以运行在UNIX、LINUX、WINDOWS、MacOS、Android等平台

4)效率高

JSP占用相当少的系统资源。

JSP是面向对象且独立于架构的动态脚本语言,使用JSP和HTML编写WEB页面,JSP服务器先对页面的JSP代码进行解析,然后把处理后的结果连同HTML内容一起传送到访问端的浏览器。JSP是一种源代码开放程序,拥有很好的跨平台兼容性。JSP代码可以在Window系统以及许多版本的linux系统上完美运行。

JSP语言是不需要任何特殊的开发环境的,所以用户可以直接在WEB页面中输入JSP命令代码。在WEB页面中,所有的JSP代码都被放置在“<?JSP”和“?>”中。

2.2 MySQL数据库

目前在国际上比较流行的数据库管理系统当中,主要有ORACLE、MySQL 、SYBASE、MySQL 、DB2等。MySQL2008版本具有MySQLServer 5.6版本的所有优点,并在此基础上添加很多更先进的功能,从而更加方便使用、更好的伸缩性,集成度高。由于是甲骨文的产品,因此MySQLServer 2008在兼容性可以与甲骨文的其他相关产品进行很好的适应和结合,可以跨越Microsoft Windows 2008到Microsoft Windows 98等多种平台。

MySQL的T-MySQL 支持ANSI MySQL -92标准,是结构化查询语言MySQL 的一种。MySQLServer在身份验证上主要采用以下方式:登录验证、数据库用户帐号许可验证、二级安全验证等等。且在同一时间支持MySQLServer验证和Windows NT验证两种模式。

甲骨文的MySQLServer是较为完善的C/S系统。MySQLServer需要Windows NT平台,而Windows NT可以支持Intel 386,Power PC,MIPS,Alpha PC和RISC等平台,它使MySQLServer具备非常完美的功能。

MySQLServer 2008中具有失败转移集群和数据库镜像技术,失败转移集群和数据库镜像技术可以确保系统向用户提交的应用系统高度可靠和可用。甲骨文的MySQLServer 2008在设计的时候引入了一套集成管理工具和管理应用编程接口(APIs),对系统提供易用性、可管理性和对大型MySQLServer配置的支持。由于采用了数据库加密、相比以前版本更加安全的默认设置、对密码政策和安全模型进行了加强以及实行了许可化控制的细化,使得系统在运用MySQLServer 2008对数据进行管理时能提供安全级别非常高的功能。

2.3 jsp技术

web 的服务平台jsp是由Microsoft创建的。这个平台最主要的功能就是可以把信息、人和设备用一种规范的,具有个性化的方法连接起来。

对于甲骨文来说,jsp技术是它的一个终极梦想,可以用这个技术实现以前完全完成不了的功能,这是一次跃进。今后,无论什么时刻,任意地点我们都可以在任何设备上进行互联信息交互网。在以后会在世界形成一个巨大的全球互联网的终端设备和服务中心,将会随时成为每个人的智能型助手。到那时哪怕你没有闲暇的时间去处理信息分析访问,或者说不需要访问的信息分析,一旦它得到指令,就会自主的查找相关知识智能化集成处理,更高效的处理我们交代的“使命”[9][10]。

(1)JSP Framework的两个组件

JSP框架具有两个不同的元素:包以及框架的软件开发包(SDK)。

当然若是要单纯的要运行jsp程序,我们完全没必要开发jsp应用程序。我们只要在安装发型包组件这里下功夫。因为jsp Framework在发行包上没有进行过编译,所以最后它只能编译JSP应用程序。

(2)框架的特点

JSP框架的两个主要特点:跨平台和语言。

(a)跨平台

JSP框架程序能够随意跨越操作系统平台和硬件环境,不管在哪台电脑上只会编写一遍。

 (b)跨语言

 . JSP框架里面一种共同的语言系统(CommonLanguageSystem ,称为CLS)。规定了许多标准化的jsp Framework数据种类。

Web应用程序可以用JSP研发出来。现在已然变成了互联网全新一代Web应用程序开发工具之一,一般的编程代码的人员已经慢慢的开始接受、使用它了。

(3)JSP概述

JSP由甲骨文于1996年11月推出的Web应用技术的发展。不单单可以看作是一个全新的框架,并且我们在工作当中能采纳任何产品的制备和应用程序代码,生成高效、动态、交互的vbscript、javascript应用镶嵌到HTML当中。

(4)JSP的特点

 (a)代码逻辑和显示页面分离

JSP包含程序和美工两个部分,文件从头到尾html标签和<%%>代码交错。通常,编程员按照以前所计划的开始编写代码,接着是美工按照设计页面和编程员讨论该用哪种布局页面最为合适,最后编程员把设计镶嵌进程序。

 (b)编译运行

我们采用了一种虚构的编程框架,把VBScript和JavaScript作为编程语言,如果发现操作系统挪用了JSP源代码一次,那么我们肯定正在访问某个页面。

 (c)缓存

由于JSP的缓存基本上没有,通常只能修改数据库来提高性能。并介绍了缓存的概念,一个高速缓存页的一页当中,对一些参数的控制和缓存的页缓存,缓存里的数据可以在最大水平上,帮助我们克服这个难题。

 (d)代码隐藏

编码后生成的代码更易于编写,具有更直观的布局,大大削减了开发和维护系统的困难性以及制作成本 。

(5)JSP的关键技术

(a)WebForm

Form(表单)是一个包含不同类型和种类的容器控件,控件必需直接或间接地连接。

(b)Web Service

Web Service是Web服务调用其他Web服务方法。简而言之,是你的网站可以利用其他网站的资源[11][12]。

2.4ssm简介

ssm是Spring、SpringMVC、MyBati组合框架,能更好的实现MVC模式,充分发挥了各自的优势。其中通过Struts在表示层中处理页面请求和转发工作;通过Spring的依赖注入(Inversion of Control,IoC)技术降低了程序之间的耦合性,也使程序员养成用接口编程的好习惯;通过Hibernate完成在持久层与数据库的交互工作。三层框架的整合形成一个结构良好、功能强大,层次清晰的框架体系。

1.Spring

Spring是一个独立的MVC模式框架,很好的实现了显示处理和业务处理逻辑之间的低耦合性。但Struts主要是针对表示层设计的,对业务逻辑方面的支持不是很强,比如事务管理、安全检查等本属于系统层面的,实现代码也穿插在整个业务逻辑中,降低了代码的可维护性,而Spring则可以很好地解决这些问题。

2.SpringMVC

SpringMVC也是独立的MVC模式框架,通过IoC技术,降低各组件之间的依赖,而Spring提供的面向切面编程(Aspect Oriented Programming,AOP)技术,在事务管理上具有独特优势。Spring框架不仅能有效地服务中间层对象,而且易于同其他层框架进行无缝集成,使各层之间相互独立,实现了在架构上各框架间的低耦合性。

3.MyBatis

MyBatis 是集合多种操作型关系数据库的概念和方法,它是一个强大的数据访问工具和解决方法[5]。对比 Hibernate,MyBatis 是一个半自动框架,Hibernate 则是一个全自动框架,无法直接维护 MySQL。MyBatis在书写 MySQL 的灵活性很好,Hibernate 就不行,会比较麻烦。本文使用 MyBatis 作为海田在线商城这种多变性的项目,Hibernate 比较适合稳定的项目。而且 MyBatis 速度相对于 Hibernate 的速度要快些

第3章 系统分析

3.1可行性分析

本文的设计的系统将会分别从经济的可行性,技术的可行性以及操作的可行性等方面进行全面的可行性的分析。

3.1.1经济可行性

由于系统开发的工具和软件都是可以免费使用的,因此系统开发的费用很少,甚至只需要少许的费用就可以开发出本系统,也可以忽略不计;再加上通过系统的实施可以提高用户文件的私密性,最大程度的保护用户的信息安全,因此,从这些方面就可以说经济上是可行的 [14][15]

3.1.2技术可行性

技术的可行性是指在当今所拥有的技术条件之下,计算机软件和硬件的发展能否够满足发展的要求。由于本系统开发基于java语言,在一般的计算机上就能够满足开发本系统所需要的软硬件条件;因为它占用的内存本来就相对较少,我们用MySQLServer数据对软件的开发以及设计在理论上没有问题的原因是:它占用的内存实在是太少了。

3.1.3操作可行性

作为当今大部分用户来讲,都是受过良好教育,具有高素质的人才,都能十分容易的使用电脑进行各种操作,是以本文在开发设计上使用java技术进行设计的音乐网站管理系统,其操作是完全可行的 [18][19]。

通过上述分析,可以确定该系统具有实际开发的价值和可能性。

3.2需求分析

针对现存的问题和需要,通过功能需求的分析,特建立了数字化、信息化的音乐网站管理系统。

本系统主要包含了等系统用户管理、网站公告管理、收藏信息管理、收藏信息管理多个功能模块。下面分别简单阐述一下这几个功能模块需求。

管理员的登录模块:管理员登录系统对本系统其他管理模块进行管理。

用户的登录模块:用户登录本系统,对个人的信息等进行查询,操作可使用的功能。

用户注册模块:游客用户可以进行用户注册,系统会反馈是否注册成功。

添加管理员模块:向本系统中添加更多的管理人员,管理员包括普通管理员和超级管理员。

网站公告管理模块:

网站公告列表:将数据库的网站公告表以列表的形式呈现给管理员。

添加网站公告:实现管理员添加网站公告。

修改网站公告:实现管理员修改网站公告。

变幻图管理模块:

变幻图列表:将数据库的变幻图表以列表的形式呈现给管理员。

添加变幻图:实现管理员添加变幻图。

修改变幻图:实现管理员修改变幻图。

收藏信息管理模块:

收藏信息列表:显示系统的所有收藏信息,可以通过关键字查询。

收藏信息删除:对输入错误或过期的收藏信息删除。

音乐信息管理模块:

音乐信息列表:显示系统的所有音乐信息,可以通过关键字查询。

音乐信息删除:对输入错误或过期的音乐信息删除。

用户模块:

资料管理:用户登录本系统。可以对自己的个人主页进行查看。

系统信息:用户可以查看自己的系统提示信息。

修改资料:用户可以修改自己的账号密码。

信息搜索:用户可以通过关键字搜索站内信息。

密码修改:用户可以修改个人登录密码。

系统管理模块:包括数据备份。

退出模块:

管理员退出:管理员用来退出系统。

用户退出:用户用来退出系统。

3.3业务流程分析

总体业务流程:以用户的身份在登录页面输入账号和密码,经过数据库身份验证,验证成功后登录系统主页,可以使用系统,管理系统等功能操作,以管理员的身份在登录页面输入账号和密码,经过数据库身份验证,验证成功后登录系统主页,可以使用系统,管理系统等功能操作。

系统的业务流程如下图所示。

图3-1系统业务流程图

3.4数据流程分析

数据流图的简称为DFD,是通过使用图形的方法对系统所具备的逻辑功能进行阐述,描述系统数据的流向和逻辑变换。由于该方法能将难以阐述的问题进行表述,因此被开发者广泛应用,是当前应用范围较为广泛的结构化系统分析方法。

零层数据流程是流程中最抽象的一层,它包括了用户注册与登录管理、用户功能管理和检索维护管理等功能模块,在登录注册模块使用到的数据存储有用户账户信息文档、用户信息文档,用户功能管理模块需要的存储是用户动态信息文档、图片信息文档,检索维护是通过以上这些文档信息通过关键词进行搜索。

系统的0层数据流图如下图所示。

图3-2系统数据流图(0层)

1层数据流图中,数据实体包括普通用户和管理员,普通用户数据流程包括功能选择、收藏信息管理、收藏信息管理、;管理员用户数据流程包括网站公告管理、收藏信息管理、系统管理;普通用户数据流包括操作信息、添加信息、浏览信息;管理员数据流包括添加信息、删除信息、修改信息、查询信息、浏览信息、提示信息等,数据表包括。

系统的1层数据流图如下图所示。

图3-3系统数据流图(1层)

2层为管理员操作后台数据流图,管理员可以分别通过添加、修改和删除来对系统进行管理,如下图所示。

系统的2层数据流图如下图所示。

图3-4系统数据流图(2层)

第4章 系统设计

4.1系统结构设计

系统主要是分为管理员端设计与用户端设计。用户端模块主要是系统中普通用户在注册、登录系统可以看到自己的基本信息,维护自己的信息;管理员端模块主要是管理员登录后对整个系统相关操作进行处理,可进行管理员的添加和删除,可对系统中的用户进行管理。

系统的功能结构图如下图所示。

图4-1系统功能结构图

4.2功能模块设计

  1. 注册模块:游客用户可以系统进行账号注册,账号注册需要输入的数据,有用户名、密码、确认密码、邮箱、qq等,提交注册信息后,系统通过js代码判断用户输入的注册数据是否符合规格,如果符合规格后,在系统数据库中新增一个用户记录,为了安全性,使用md5加密算法完成密码的加密,然后存储数据库。
  2. 登录模块:在用户登录过程中,包含用户名、密码和验证码,系统需要先对验证码进行正错判断,若用户登录使用了验证码,则用户登录时除了需要输入用户名和密码外,还要输入验证码。在判断验证码为正确后,判断用户名及密码,由于用户密码是用MD5加密过的,所以在对用户密码判断时应先对密码进行MD5转换后再进行判断,当用户名或密码不正确时,返回登录页面显示错误信息。
  3. 网站公告管理模块:用户发布网站公告,网站公告存储在网站公告表中,用户点击网站公告发布,进入网站公告发布页面,提交网站公告后,管理员审核用户添加的网站公告,并管理。
  4. 收藏信息管理模块:设计系统的收藏信息表,管理员对收藏信息数据的管理,如增加、删除、修改、查询等,管理员添加收藏信息时,输入收藏信息后,使用js函数判断输入格式是否正确,判断正确后,则往收藏信息表中插入收藏信息数据。
  5. 音乐信息管理模块:设计系统的音乐信息表,管理员对音乐信息数据的管理,如增加、删除、修改、查询等,管理员添加音乐信息时,输入音乐信息后,使用js函数判断输入格式是否正确,判断正确后,则往音乐信息表中插入音乐信息数据。
  6. 变幻图管理模块:变幻图管理模块包括变幻图录入、变幻图列表、变幻图搜索、变幻图修改、变幻图删除,都是通过MySQL 语句来实现数据库操作,并将数据放置到html界面中。
  7. 系统管理模块:数据备份功能。

4.3数据库设计

4.3.1数据库设计概述

数据库的设计在这一套开发系统中扮演者非常重要的角色,完善的数据库建立可以让其更快的完成项目。整个数据库的创建是库存管理系统开发和创立的核心技术,概括的说,就是根据用户的需求创立起满足用户的需要的数据库。数据库的整体设计是在软件开发是其最主要的问题。

再考虑到数据库设计的时候,我们首先应该想到把这个系统的数据设计和处理设计密切结合起来,从而使得把整个库存信息管理系统相结合起来。

以前采用手工整理的方法来对信息结构复杂,应用环境多样的数据进行整理。使用这种过时方法与整个数据整理人员的水平是紧密相关的,经验多的人则失误少,反之,则出现的错误会多。数据库设计是被认为是一项技巧而不是他人眼中工程项目,缺少正确的理论知识和合适的解决方法的支持。因为在交付运行了一段时间之后总有些莫名其妙的问题发生,使这个软件系统的质量很难得到保障从而导致出现了很多的损失。以是只有采取新的数据库管理方式才能更好的解决这些根本性的问题。近些年来,人们不断的探索和挖掘数据库其中的奥妙,以便更快更好地运行整个系统。

4.3.1概念设计

一个完整的数据分析过程与这个数据库的逻辑结构和物理结构有十分密切的联系,我们需要一系列操作来完成对应用数据库所使用的信息进行确认、编纂、组织、挑选。我们可以采用特定的方法来获取有关用户的所有的有效信息,从而使这些有用信息可以直接成为数据库的重要数据。

我们在数据库分析中采用E-R图来建立相对应的关系,它有实体、关系、属性三种概念。实体可以说是一个用来维持和不断利用数据的大集合;属性可以说是这个物体的所具有的特点;关系很明显指的就是每个数据实体之间的种种联系,关系给各个实体之间建立起了相对应的模型。

根据系统各个实体的关系,得出系统的总体ER图。

系统总体ER图如下图所示。

图4-2系统总体ER图

4.3.2表设计

1. 建立最符合客户需求的数据库计划。

2. 对数据库进行规范化处理,避免一些不必要的错误。

3. 数据库完整性。

4. 每个用户权限的要求。

5. 应用程序的性能需求,设计数据库时必须利用MySQL中的各个功能来维持运行。

6. 数据库定期的维护。

在服务器上建立名为ssmylwzhsg5289aib6的数据库,其中包括以下表:

allusers表:

序号

字段名称

字段类型

大小

允许为空

最大长度

备注

1

id

Int

4

10

2

username

150

255

3

pwd

150

255

4

cx

150

255

5

addtime

DateTime

8

19

duliyinleren表:

序号

字段名称

字段类型

大小

允许为空

最大长度

备注

1

id

Int

4

10

2

yonghuming

150

255

3

mima

150

255

4

xingming

150

255

5

xingbie

150

255

6

shouji

150

255

7

shenfenzheng

150

255

8

jifen

150

255

9

zhaopian

150

255

10

jianjie

1073741823

255

11

huxing

1073741823

255

12

issh

30

255

13

addtime

DateTime

8

19

dx表:

序号

字段名称

字段类型

大小

允许为空

最大长度

备注

1

ID

Int

4

10

2

leibie

150

255

3

content

1073741823

255

liuyanban表:

序号

字段名称

字段类型

大小

允许为空

最大长度

备注

1

id

Int

4

10

2

cheng

150

255

3

xingbie

150

255

4

QQ

150

255

5

youxiang

150

255

6

shouji

150

255

7

neirong

1073741823

255

8

huifuneirong

1073741823

255

9

addtime

DateTime

8

19

pinglun表:

序号

字段名称

字段类型

大小

允许为空

最大长度

备注

1

ID

Int

4

10

2

xinwenID

30

255

3

pinglunneirong

1073741823

255

4

pinglunren

60

255

5

pingfen

12

255

6

biao

60

255

7

addtime

DateTime

8

19

shoucangjilu表:

序号

字段名称

字段类型

大小

允许为空

最大长度

备注

1

id

Int

4

10

2

username

150

255

3

xwid

150

255

4

ziduan

150

255

5

biao

150

255

6

addtime

DateTime

8

19

7

biaoj

1073741823

255

xinwentongzhi表:

序号

字段名称

字段类型

大小

允许为空

最大长度

备注

1

id

Int

4

10

2

biaoti

150

255

3

leibie

150

255

4

neirong

1073741823

255

5

shouyetupian

150

255

6

dianjilv

150

255

7

tianjiaren

150

255

8

addtime

DateTime

8

19

9

ddd

DateTime

8

19

10

zhaiyao

1073741823

255

yinlexinxi表:

序号

字段名称

字段类型

大小

允许为空

最大长度

备注

1

id

Int

4

10

2

biaoti

150

255

3

yinle

150

255

4

zuozhe

150

255

5

fenleibiaoqian

150

255

6

xiangguanmiaoshu

1073741823

255

7

addtime

DateTime

8

19

yonghuzhuce表:

序号

字段名称

字段类型

大小

允许为空

最大长度

备注

1

id

Int

4

10

2

yonghuming

150

255

3

mima

150

255

4

xingming

150

255

5

xingbie

150

255

6

chushengnianyue

DateTime

8

19

7

QQ

150

255

8

youxiang

150

255

9

shouji

150

255

10

shenfenzheng

150

255

11

touxiang

150

255

12

dizhi

150

255

13

beizhu

1073741823

255

14

issh

30

255

15

addtime

DateTime

8

19

youqinglianjie表:

序号

字段名称

字段类型

大小

允许为空

最大长度

备注

1

id

Int

4

10

2

wangzhanmingcheng

150

255

3

wangzhi

150

255

4

addtime

DateTime

8

19

5

logo

1073741823

255

zhanneixin表:

序号

字段名称

字段类型

大小

允许为空

最大长度

备注

1

id

Int

4

10

2

shoujianren

150

255

3

neirong

1073741823

255

4

wenjian

150

255

5

fasongren

150

255

6

addtime

DateTime

8

19

zhuanji表:

序号

字段名称

字段类型

大小

允许为空

最大长度

备注

1

id

Int

4

10

2

zhuanjiming

150

255

3

zuozhe

150

255

4

yinle

150

255

5

faburiqi

DateTime

8

19

6

jieshao

1073741823

255

7

addtime

DateTime

8

19

第5章  系统实现

5.1基本任务

系统实现阶段的根本目标在这个阶段的设计工作中精确地描述出目标系统,从而在编码阶段可以直接根据这个描述翻译成用程序语言编写的系统。

系统实现的基本任务有以下几个:

 (1) 为每个模块进行详细的算法设计。用某种图形、表格、语言等工具将每个模块处理过程的详细算法描述出来。

 (2) 为模块内的数据结构进行设计。对于需求分析、概要设计确定的概念性的数据类型进行确切的定义。

 (3) 对数据结构进行物理设计,即确定数据库的物理结构。

 (4) 其他设计:根据软件系统的类型,可能还需要进行代码设计、输入/输出格式设计、人机对话设计。

 (5) 编写系统实现说明书。

 (6) 评审。对处理过程的算法和数据库的物理结构都要评审。

系统结构可分为src的java源代码,database文件夹为系统的数据库文件,webroot为系统的界面代码文件。Src文件夹里面包含control包、dao包、util包,dao包为逻辑层,是系统方法的底层包,包括各种数据增删改查的方法,control包是控制层,用来连接逻辑层和视图层,在逻辑层调用逻辑层,完成视图层需要的功能,视图层为系统的界面代码,完成界面的设计和数据的显示。

5.2登录模块的实现

5.2.1首页实现 

首页是网站的入口,主要包含了:网站公告、留言、音乐信息、举报音乐人以及在线留言等功能。首页页面,如下图所示

图5.1 首页页面图

首页主要代码如下:

<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>

<%@page import="util.Info"%>

<%@page import="dao.CommDAO"%>

<%@page import="util.PageManager"%>

5.2.2管理员后台登录 

为了确保系统安全性,系统操作员只有在后台登录界面输入正确的用户名、密码、权限以及验证码,单击“登录”按钮后才能够进入本系统的后台管理界面。

用户登录流程图如下所示。

图5-2用户登录流程图

登录界面如下图所示。

图5-3登录界面

用户登录的逻辑代码如下:

if(ac.equals("adminlogin"))

{

String username = request.getParameter("username");

String password = request.getParameter("pwd");

String utype = request.getParameter("cx");

String pagerandom = request.getParameter("pagerandom")==null?"":request.getParameter("pagerandom");

String random = (String)request.getSession().getAttribute("random");

if(!pagerandom.equals(random)&&request.getParameter("a")!=null)

{

request.setAttribute("random", "");

go("/login.jsp", request, response);

}

else{

String MySQL 1 = "select * from allusers where username='"+username+"' and pwd='"+password+"'  ";

List<HashMap> userlist1 = dao.select(MySQL 1);

if(userlist1.size()==1)

{

request.getSession(). setAttribute("username", userlist1.get(0).get("username"));  

request.getSession(). setAttribute("cx",  userlist1.get(0).get("cx"));  

gor("main.jsp", request, response);

}else{

request.setAttribute("error", "");

go("/login.jsp", request, response);

}

}

}

5.3用户模块的实现

5.3.1注册模块及登录的实现

用户输入用户名、密码、电话、姓名等必填信息后,点击注册按钮完成用户的注册。

用户注册流程图如下所示。

图5-4用户注册流程图

用户注册界面如下图所示。

图5-5用户注册

用户登录界面如下图所示。

图5-6用户登录

<%

HashMap ext = new HashMap();

ext.put("issm","否");

new CommDAO().insert(request,response,"yonghuzhuce",ext,true,false,"index.jsp");

%>

Php:

include_once 'conn.php';

$addnew=$_POST["addnew"];

if($addnew=="1")

{

$username=$_POST['username'];

$pwd=$_POST['pwd1'];

$cx=$_POST['cx'];

$MySQL ="select * from allusers where username='$username' and pwd='$pwd'";

$query=MySQL _query($MySQL );

$rowscount=MySQL _num_rows($query);

if($rowscount>0)

{

echo "<script language='javascript'>alert('该用户名已经存在,请换其他用户名!');history.back();</script>";

}

else

{

//date_default_timezone_set("PRC");

$ndate =date("Y-m-d H:i:s");

$MySQL ="insert into allusers(username,pwd,cx) values('$username','$pwd','$cx')";

MySQL _query($MySQL );

echo "<script language='javascript'>alert('注册成功!');location.href='yhzhgl.php';</script>";

}

 5.2.2留言模块的实现

用户点击在线留言进入在线留言详细页,提交留言信息,成功发布留言,管理员管理用户的留言信息。

用户留言流程图如下所示。

图5-7用户留言流程图

用户留言界面如图所示。

图5-8用户留言

5.2.3收藏模块的实现

用户点击某个音乐信息进入音乐信息详细页,点击收藏按钮进入收藏页,提交收藏信息,成功收藏后,管理员管理用户的收藏信息,审核收藏信息。

用户收藏流程图如下所示。

图5-9用户收藏流程图

用户收藏界面如图所示。

图5-10用户收藏

收藏管理界面如图所示。

图5-11收藏管理

5.4管理员模块的实现

5.4.1系统用户管理模块的实现

系统用户管理主要是对新用户的添加和旧用户的删除。新用户的添加主要是指添加用户名称并确定其密码;旧用户的删除也是从下拉菜单中找到对应的用户名称将其删除。不论是新用户添加还是旧用户的删除,这个权限只有管理员具有。

系统用户管理流程图如下所示。

图5-12系统用户管理流程图

系统用户管理界面如下图所示。

图5-13系统用户管理

系统用户管理关键代码为:

 <%

  String id="";

   %>

<script language="javascript">

function gows()

{

document.location.href="allusers_add.jsp?id=<%=id%>";

}

function hsgxia2shxurxu(nstr,nwbk)

{

if (eval("form1."+nwbk).value.indexOf(nstr)>=0)

{

eval("form1."+nwbk).value=eval("form1."+nwbk).value.replace(nstr+";", "");

}

else

{

eval("form1."+nwbk).value=eval("form1."+nwbk).value+nstr+";";

}

}

5.4.2网站公告管理模块的实现

网站公告信息添加功能主要指对其标题、内容、类别等一些基本信息的添加、删除和修改。网站公告查询能根据标题、内容、类别等多种条件对网站公告信息进行查询。

网站公告管理流程图如下所示。

图5-16网站公告管理流程图

网站公告添加如下图所示:

图5-17网站公告添加

网站公告查询如下图所示:

图5-18网站公告查询

网站公告信息添加关键代码为:

protected void Button1_Click(object sender, EventArgs e)

    {

     string MySQL ;

     MySQL ="insert into liuyanban(cheng,biaoqing,biaoti,neirong,huifu) values('"+cheng.Text.ToString().Trim()+"','"+biaoqing.Text.ToString().Trim()+"','"+biaoti.Text.ToString().Trim()+"','"+neirong.Text.ToString().Trim()+"','"+huifu.Text.ToString().Trim()+"') ";

        int result;

        result = new Class1().hsgexucute(MySQL );

        if (result == 1)

        {

            Response.Write("<script>javascript:alert('添加成功');</script>");

        }

        else

        {

            Response.Write("<script>javascript:alert('系统错误,请检查数据库设置问题');</script>");

        }

    }

5.4.3变幻图管理模块的实现

管理员发布新的变幻图,系统显示变幻图,变幻图添加功能主要指对其标题、内容、类别等一些基本信息的添加、删除和修改。

变幻图管理流程图如下所示。

图5-19变幻图管理流程图

变幻图管理如下图所示:

图5-20变幻图管理

变幻图管理如下图所示:

图5-21变幻图管理

5.4.4音乐信息管理模块的实现

管理员发布音乐信息,系统显示音乐信息,音乐信息添加功能主要指对其标题、作者等一些基本信息的添加、删除和修改。

音乐信息添加页面,如下图所示。

图5.22 音乐信息添加页面图

音乐信息管理页面,如下图所示。

图5.22 音乐信息管理页面图

5.4.5音乐人管理模块的实现

管理员发布音乐人,系统显示音乐人,音乐人添加功能主要指对其音乐人名称、作者等一些基本信息的添加、删除和修改。

音乐人添加页面,如下图所示。

图5.23音乐人添加页面图

音乐人管理页面,如下图所示。

图5.24音乐人管理页面图

第6章  系统测试

6.1测试目的

软件测试的目的主要是发现软件缺陷和漏洞,其次,软件测试能够识别项目风险。为开发人员和程序经理提供软件测试的反馈结果,为风险评估提供必要的信息。再者,软件测试确保在上线日前达到上线标准。包括持续追踪项目进度和严格把控各个开发阶段的产品质量。

基于ssm的音乐网站管理系统,主要测试客户端的使用和后台服务器的使用。客户端主要是测试用户注册、用户登录、用户完善信息、页面是否进行跳转等功能是否实现。管理员的使用主要是测试系统管理、用户信息管理、收藏信息以及注册用户管理功能是否实现。

6.2测试概述

1.测试的原则

(1)系统测试应该避免测试自己的程序,以免发现不了细小的问题。

(2)系统测试用例应有两部分组成,分别为输入测试和输出测试。

(3)系统测试数据应当引用不合理的数据进行测试,选取不同情况的进行逐一测试。

(4)不仅要检查程序是否达到预期的效果,还要检查程序是否执行了规定以外的操作。

(5)对出现错误多的模块进行集中测试。

(6)已发现错误的模块修改后,应及时进行重新测试。

2.测试的方法

测试方法主要有人工测试和机器测试。

(1)人工测试

人工测试又称代码复审,包括个人复查、走查、会审三种方法[7]。

(2)机器测试

机器测试主要是由黑盒测试和白盒测试两种方法。

在最后的测试阶段,系统采用后黑盒测试和白盒测试想结合的方法。黑盒测试主要用于对系统的输入和输出特性进行测试,检测功能方面存在的错误与可能存在的缺陷。白盒测试主要用于对软件的过程及逻辑路径进行测试,发现性能方面的错误。具体采用的测试方法为系统测试和单元测试。

6.3单元测试

6.3.1注册测试

游客用户得先注册账号才能登录系统,用户输入符合规则的用户名后,填写2次一样的密码,点击注册按钮,系统提示“注册成功“。当用户2次密码不一致时,系统提示两次密码不一致。

注册测试用例如下表所示。

表6-1注册测试用例

测试模块

用户注册模块测试

测试目的

测试当注册信息输入不符合要求时,系统是否能进行相应处理并给出提示。

测试方法

黑盒测试

测试数据

1不输入用户名和密码,直接点击注册。

2输入未注册过的用户名。例如:abcd

3输入正确用户名,两次密码不一样。例如:用户名abcdefg、密码 000,确认密码111

预期结果

1 界面不跳转,弹出对话框,提示用户输入必填项。

2界面跳转,弹出对话框,提示用户注册成功。

3界面不跳转,弹出对话框,提示两次密码不一致。

实际结果

与预想一致。

结论

注册模块实现了基本的异常输入应对。

6.3.2登录测试

登录模块需要测试的功能有:输入登录名和密码,点击“登录”按钮是否正常进入系统首页。

登录测试用例如下表所示。

表6-2登录测试用例

测试模块

用户登录模块测试

测试目的

测试当登陆信息输入不符合要求时,系统是否能进行相应处理并给出提示。

测试方法

黑盒测试

测试数据

1不输入用户名和密码,直接点击登陆。

2输入未注册过的用户名。例如:abcdefg

3输入正确用户名,错误密码。例如:用户名abcdefg、密码 000

4输入正确用户名,正确匹配密码。例如:用户名abcdefg、密码 111

预期结果

1 界面不跳转,弹出对话框,提示用户输入必填项。

2界面不跳转,弹出对话框,提示用户当前用户名尚未注册。

3界面不跳转,弹出对话框,提示用户密码错误。

4界面实现跳转,登陆功能正常进行。

实际结果

与预想一致。

结论

登陆模块实现了基本的异常输入应对。

6.4集成测试

集成测试的方案主要如下所述:

  1. 将系统移植到另一台计算机上,运行出错。修改配置信息后运行成功。
  2. 用户信息管理模块综合测试,添加新用户roess,为其分配一般管理员角色,查看一般管理员角色权限,保存设置,以roess身份登录,查看所拥有权限。
  3. 最后按照音乐网站管理系统的设计与实现,以不同角色的身份进入系统,对系统各模块功能进行测试,测试模块间逻辑功是否有误。

经过测试,发现此开发系统可以满足音乐网站管理系统流程的基本工作流程和基本要求。

第7章  总结

经过几个月的努力还坚持,音乐网站管理系统终于完成了,程序功能模块能按照需求来运行,能实现多用户的迸发使用,但是系统由于设计经验以及专业知识的局限性,在本系统的开发过程中,在一些功能方面和业务逻辑方面做得不是很完善,系统还存在一些缺陷。界面的设计从布局到外观,受限于自身的设计功底较低,没能达到自己所要设计的界面要求,另一方面,系统存在一些没有考虑的问题和模块。

在学习的过程中首次进行独立设计工作,编码过程出现了许多问题和困难,原以为正确无误的程序运行过程中不会遇到问题,但是在运行过程中也总会出现各种各样的问题,在调试过程中找不出运行出错的原因。而这些基本问题却都是一些简单的问题,例如标点符号应该是英文状态下的,却因为不好的编程习惯造成了一些中文的符号输入,经过仔细观察和老师的帮组下,还是将问题解决了。

目前系统的功能比较简单,还存在许多瑕疵,这是一份遗憾,也是促进我不断进步的动力。

致  谢

经历了近三个多月的动手实践及老师辛勤的指导和同学朋友热心的帮助下,本人的毕业设计音乐网站管理系统的基本功能也基本完成。

此次设计中,通过不断的探讨与学习使我熟悉、使我初步了解了JAVA相关技术。做的是一个B/S结构的音乐网站管理系统,使我对做网站所需要,及运行的环境有了初步的了解,在此次设计中我翻阅了较多的书籍,在有限的时间了丰富了对音乐网站管理系统技术的知识也积累了少许的经验。起初对JSP的初步认识,通过这次设计更进一步的了解了其工作原理,懂得了配置服务器环境,连接数据库源,在设计过程中,也学会了用dreamweaver设计一个简单的页面,增强了动手的能力,激发了在此方面的兴趣。

但是由于时间、基础及缺乏实践等多方面的问题,还有诸多需要解决的问题依然存在,设计中很多方面考虑不够周全或者考虑不到。

非常感谢我的老师,我的同学,我的朋友并希望在今后的学习生活中不断陪养多方面的兴趣,不断学习进步从而能够实现独立完成。设计中存在的诸多缺点诚肯老师的原谅。

参考文献

[1]刘晓华,周慧贞.JSP应用开发详解[M].北京:电子工业出版社,2013:35-126

[2]阿斯利森,舒塔,金灵等译.Ajax基础教程[M].北京:人民邮电出版社,2014:15-26 

[3]孙鑫.Struts 2深入详解[M].北京:电子工业出版社,2012:8-16 

[4]王珊,萨师煊.数据库系统概论[M].北京:高等教育出版社出版社,2010:7-15 

[5]王毅,周峰,孙更新.J2EE经典案例设计与实现[M].北京:电子工业出版,2013:6-18 

[6]孙鑫.Struts 2深入详解(Java技术大系)[M].北京:电子工业出版社,2012:5-14 

[7]郑阿奇.MySQL 实用教程[M].北京:电子工业出版社,2013:26-42 

[8]谭庆平,毛新军编著.软件工程实践[M].北京:高等教育出版社,2014:34-87 

[9]林邦杰.Java程序设计入门教程[M]. 北京:中国青年出版社,2011:63-99 

[10]谢希仁.计算机网络[M]. 北京:电子工业出版社,2012: 89-125 

[11]布朗,戴维斯,斯坦利克,马召等译.Struts 2实战[M].北京:人民邮电出版社,2012:85-136 

[12]王行言.Java语言与面向对象程序设计[M].北京:清华大学出版社,2013:36-85 

[13]拉夫利,李进华等译.精通Struts 2:Web 2.0开发实战[M].北京:人民邮电出版社,2012:253-276 

[14]陈云芳.精通Struts 2基于MVC的Web应用开发实战[M].北京:人民邮电 出版社, 2012:136-187  

[15] DavidHopkins.Improvingthe Quality of Teaching and Learning[J].Support for Learning,2014(12):162-165. 

[16] Ed Woychowsky.Introducing Ajax[EB/OL]. http://www. webreference.com/programming/ajax_creating_asynchrono us_web_pages/index.html,2015-1-13. 

[17] Roberto Latorre,Francisco Lopez,Antonio E.Martinez.Sharing of procompiled database statements in J2EE application[J]. Software: Practice and Experience,2015(35):301-311. 

[18] Huang,M.Y,Lin,Y.J,Xu,H.A framework for web-based product data management using J2EE.International Journal of Advanced Manufacturing Technology, 2014:825-847. 

[19] Aleassanndro Marchetto,Filippo Ricca,Paolo Tonella.A case study-based comparison of web testing techniques applied to ajax web applications[J].International Journal on software Tools for Technology Transfer(STTT),2015,10(12):477-492.

 [20]D.F.Elliott,and K.Rao.Fast Transforms:Algorothms,Analysas,Applications.New York:Academkic Prdss.2014 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/889409.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【机器学习】在向量的流光中,揽数理星河为衣,以线性代数为钥,轻启机器学习黎明的瑰丽诗章

文章目录 线性代数入门&#xff1a;机器学习零基础小白指南前言一、向量&#xff1a;数据的基本单元1.1 什么是向量&#xff1f;1.1.1 举个例子&#xff1a; 1.2 向量的表示与维度1.2.1 向量的维度1.2.2 向量的表示方法 1.3 向量的基本运算1.3.1 向量加法1.3.2 向量的数乘1.3.3…

SpringBoot——分层解耦、IOC、依赖注入

三层架构 如下图&#xff0c;创建Dao的接口以及该接口的实现类&#xff0c;Service也一样 Dao // Dao接口 public interface UserDao {public List<String> findAll(); }// Dao接口的实现 public class UserDaoImpl implements UserDao {// 加载用户数据Overridepublic …

【数据结构——栈和队列】括号配对(头歌实践教学平台习题)【合集】

目录&#x1f60b; 任务描述 相关知识 测试说明 我的通关代码: 测试结果&#xff1a; 任务描述 本关任务&#xff1a;编写一个程序利用栈判断左、右圆括号是否配对。 相关知识 为了完成本关任务&#xff0c;你需要掌握&#xff1a;栈对括号的处理。 栈对括号的处理 &…

企业级日志分析系统ELK之ELK概述

ELK 概述 ELK 介绍 什么是 ELK 早期IT架构中的系统和应用的日志分散在不同的主机和文件&#xff0c;如果应用出现问题&#xff0c;开发和运维人员想排 查原因&#xff0c;就要先找到相应的主机上的日志文件再进行查找和分析&#xff0c;所以非常不方便&#xff0c;而且还涉及…

pyqt+ubuntu18.04+designer+测试是否安装成功

引用&#xff1a; Ubuntu Linux安装PyQt5并配置Qt Designer 在Visual Studio Code中使用PyQt5开发python GUI应用程序 Linux环境下在Vscode中安装和设置PyQt5插件 其中&#xff0c; 测试是否安装成功 1、设置好之后在vscode编辑器的左侧文件目录栏空白位置右键&#xff0…

torchaudio.load 段错误

使用 torchaudio.load 时出现崩溃&#xff0c;如图 解决&#xff1a; 安装 ffmpeg ​conda install ffmpeg -c conda-forge 尝试但没解决问题的方法包括 重装 cuda&#xff0c;重装 pytorch&#xff0c;安装 PySoundFile、SoundFile、sox。

React 第十六节 useCallback 使用详解注意事项

useCallback 概述 1、useCallback 是在React 中多次渲染缓存函数的 Hook&#xff0c;返回一个函数的 memoized的值&#xff1b; 2、如果多次传入的依赖项不变&#xff0c;那么多次定义的时候&#xff0c;返回的值是相同的,防止频繁触发更新&#xff1b; 3、多应用在 父组件为函…

Chrome webdriver下载-避坑

WebDriver以原生的方式驱动浏览器&#xff0c;不需要调整环境变量。 一、window版 1.chrome和chromedriver下载地址&#xff1a; Chrome for Testing availability 我下载的是如下两个安装包&#xff0c;解压即可。 2.导包 pip install selenium然后用python代码引用即可…

PyQt事件机制练习

一、思维导图 二、代码 import sysfrom PyQt6.QtTextToSpeech import QTextToSpeech from PyQt6.QtWidgets import QApplication, QWidget, QLabel, QPushButton, QLineEdit from PyQt6 import uic from PyQt6.QtCore import Qt, QTimerEvent, QTimeclass MyWidget(QWidget):d…

【Rive】Android与Rive交互

1 Android与Rive交互的常用接口 1.1 RiveAnimationView参数 <app.rive.runtime.kotlin.RiveAnimationViewandroid:id"id/rive_view"android:layout_width"match_parent"android:layout_height"match_parent"android:adjustViewBounds"…

Maven、mybatis框架

一、Maven介绍 1.概念&#xff1a; Maven项目对象模型(POM)&#xff0c;可以通过一小段描述信息来管理项目的构建&#xff0c;报告和文档的项目管理工具软件。 2.为啥使用maven: 之前项目中需要引入大量的jar包。这些jar从网上下载&#xff0c;可能下载地址不同意。这些jar之间…

使用 Python 爬取某网站简历模板(bs4/lxml+协程)

使用 Python 爬取站长素材简历模板 简介 在本教程中&#xff0c;我们将学习如何使用 Python 来爬取站长素材网站上的简历模板。我们将使用requests和BeautifulSoup库来发送 HTTP 请求和解析 HTML 页面。本教程将分为两个部分&#xff1a;第一部分是使用BeautifulSoup的方法&am…

HCIA-Access V2.5_2_2网络通信基础_TCP/IP协议栈报文封装

TCP/IP协议栈的封装过程 用户从应用层发出数据先会交给传输层&#xff0c;传输层会添加TCP或者UDP头部&#xff0c;然后交给网络层&#xff0c;网络层会添加IP头部&#xff0c;然后交给数据链路层&#xff0c;数据链路层会添加以太网头部和以太网尾部&#xff0c;最后变成01这样…

数据湖治理最佳实践

如果没有最佳实践&#xff0c;存储可能会变得无法维护。自动化数据质量、生命周期和隐私功能可持续清理/移动数据湖中的数据。数据湖正成为企业从大数据中提取价值的一种日益可行的解决方案&#xff0c;对于早期采用者和新用户来说都是合理的下一步。在独立的逻辑区域中随时可用…

ssd202d-badblock-坏块检测

这边文章讲述的是坏快检测功能 思路&#xff1a; 1.第一次烧录固件会实现跳坏块&#xff0c;但是后续使用会导致坏块的产生&#xff1b; 于是我在uboot环境变量添加了两个变量来控制坏快 lb_badnum //坏块个数 lb_badoff //坏块所在位置 2.第一次开机会根据lb_badnum是否…

鸿蒙ArkTS如何实现数据可视化:饼状图/柱状图/折线图

鸿蒙数据可视化系列 在我们鸿蒙APP开发中&#xff0c;经常需要使用到一些图表的开发&#xff0c;本文主要介绍使用 McCharts 框架绘制柱状图的方法 配套指导视频地址&#xff1a;鸿蒙数据可视化系列-McCharts使用介绍_哔哩哔哩_bilibili 1. 第三方库介绍 1.1. McCharts Mc…

unity打包sdk热更新笔记

Unity3D项目Plugins目录组织 https://blog.csdn.net/linxinfa/article/details/102978005 IPreprocessBuild 继承提供打包前&#xff0c;打包后接口 BuildAssetBundles UnityWebRequest’s DownloadHandlerAssetBundle / LoadFromFile / LoadFromMemoryAsync 数据完整性校…

使用秘钥登录服务器

在我们测试或生产环境中&#xff0c;为了服务器安全性&#xff0c;有时可能需要以 SSH 密钥的方式登录服务器&#xff0c;接下来&#xff0c;将演示如何通过 SSH 私钥的方式来远程服务器。 一、远程服务器生成密钥对 1、首先在目标远程服务器下生成 SSH 密钥对 ssh-keygen然…

谷粒商城—分布式基础

1. 整体介绍 1)安装vagrant 2)安装Centos7 $ vagrant init centos/7 A `Vagrantfile` has been placed in this directory. You are now ready to `vagrant up` your first virtual environment! Please read the comments in the Vagrantfile as well as documentation on…

TimesFM(Time Series Foundation Model)安装(2)

TimesFM&#xff08;Time Series Foundation Model&#xff09;安装简介 readme TimesFM&#xff08;Time Series Foundation Model&#xff09;安装简介&#xff08;1&#xff09;-CSDN博客https://blog.csdn.net/chenchihwen/article/details/144359861?spm1001.2014.3001…