自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(51)
  • 收藏
  • 关注

原创 对自己项目的自动化测试

一.测试用例的详细测试用例测试环境;操作系统:Windows 10家庭版项目运行:IDEA2021.3.2、maven、JDK1.8浏览器:Chorme、Edge、FireFox自动化脚本环境:PyCharm2021.2.3网络:127.0.0.1:8080测试技术: 主要采用自动化测试以及手工测试测试人员: 我二、测试的开发与执行1.用python脚本对项目进行自动化测试1.1对首页进行的测试场景1:各功能是否都有响应预期结果:都有响应注册界面、音频录制界面。

2022-10-10 09:45:45 217 1

原创 听书项目3

通过from表单发送HTTP的post请求,后端RegisterDoServlet接收HTTP请求,并进行相关的处理,在这个类里可以进行合法性校验,(然后需要进行密码的加密操作,在service中进行操作),注册之后,将用户对象放入session中,再重定向到首页,重定向之后注册完成。加密操作原理:使用hash技术,用户输入的明文经过hash操作之后变为密文,把密文保存到表中,当用户登录时,再次输入密码,使用同样地hash算法对密码做哈希,与数据库中的密码比对,如果相同则登录成功,不相同则登录失败。

2022-09-20 15:45:10 194

原创 听书项目2

Up主(创作者)需要登录(注册) 后才可以上传、录制自己的音频和查看所有音频,并创建新的专辑与音频进 行绑定,上架发布,供普通用户选择使用。类似于喜马拉雅听书的项目,普通用户可以根据自己的喜欢选择相应的专辑进行专辑列表的歌曲播放。专辑管理:新建专辑、显示专辑列表(包括各个专辑状态)和专辑与音频关联功能。用户->浏览器->网络->Tomcat->MySQL。无需登录,可以查看专辑列表,选择专辑进行音频播放。音频管理:上传音频、录制音频和查看音频列表功能;首页 ---- 查询所有公开的专辑。

2022-09-20 15:25:24 117

原创 搜索引擎项目

classpath∶就代表从 src/main/resources 下进行查找 【这个实际上是错误的理解,但现在这么理解关系不大】完整路径∶ src/main/resources/mapper/index-mapper.xml。其中,下标保存在 index (index = “index”)其中,遍历时的每一项保存在item(item = “item”)批量插入的时候,每次记录不用太多(每次插入10条)倒排索引表(id-pk、word、docid、weight)∶ 构建文档完毕,一共 10460 篇文档。.

2022-08-13 10:51:18 1063 1

原创 测试用例1

淘宝购物车

2022-08-07 09:50:13 238

原创 构造HTTP

3、帮助程序员构造HTTP响应,程序员只要给指定的HttpResponse对象填写一些属性字段,Servlet就会自动的安装HTTP协议的方式构造出一个HTTP响应字符串,并通过Socket写回给客户端。name: 表示构造出的 HTTP 请求的 query string 的 key. query string 的 value 就是输入框的用户``输入的内容.Servlet是一种实现动态页面的技术,是一组Tomcat提供给程序员的API,帮助程序员简单高效的开发一个web app。...

2022-08-06 10:10:25 119

原创 听书项目开发过程及重难点总结(用户管理)

普通用户只能看到专辑列表页,点击专辑进入播放页面进行播放后台管理员可以点击创作中心,进行用户、音频和专辑的管理。其中,音频管理包括上传、录制和列表;用户管理包括注册登录和注销;专辑管理包括新建和查看已有专辑列表注册用户之后,可以录制并上传音频,按需求新建专辑并将音频和专辑进行绑定,发布专辑后在用户页面就可以看到。..................

2022-07-21 08:30:30 551

原创 2022-06-09

动态数组ArrayList:底层是数组,动态扩容,数据查询非常快,但要求连续内存空间。双向队列LinkedList:底层是链表,不需要连续内存空间,但是查询搜索效率极低。键值对集合HashMap:底层是数组加链表,存放键值对,检索快,但由于键是按照hash值存储的,所以无序。TreeMap:底层是优化了的排序二叉树(红黑树),物理实现,使用一个静态内部类Entry代表一个树节点,这是一个完全有序的结构,但是每个树节点都需要保存一个父节点引用,左右孩子节点引用,还有一个value值,效率高但开销大。p

2022-06-13 08:39:17 91

原创 HTTP协议

打开一个网站, 就是通过 HTTP 协议来传输数据的:在浏览器中输入一个 搜狗搜索的 “网址” (URL) 时, 浏览器就给搜狗的服务器发送了一个 HTTP 请 求, 搜狗的服务器返回了一个 HTTP 响应.这个响应结果被浏览器解析之后, 就展示成我们看到的页面内容. (这个过程中浏览器可能会给服务器发送多个 HTTP 请求, 服务器会对应返回多个响应, 这些响应里就包含了页面 HTML, CSS, JavaScript, 图片, 字体等信息)通过TCP/IP,数据能从客户端进程经过路径选择跨网络传送

2022-06-06 18:18:03 2878 3

原创 线程-06-06

设置线程名线程的任务设置线程分组ID,Name…状态优先级(1-10 默认5)守护线程(后台线程)1.在守护线程里面创建的线程,默认是守护线程2.守护线程状态的设置必须放在线程启动之前run属于普通方法,start是启动线程的方法run方法可以执行多次,start方法只能执行一次1.使用全局自定义的变量来终止线程-------->收到终止指令后,会执行完当前任务再终止2.使用线程提供的终止方法 interrupt 来终止线程---->收到终止指令之后,立马终止3.使用线程提供的方法 stop

2022-06-06 15:26:46 86

原创 进程选择题

1.进程和程序的本质区别(1)程序是永存的;进程是暂时的,是程序在数据集上的一次执行,有创建有撤销,存在是暂时的;(2)程序是静态的观念,进程是动态的观念;(3)进程具有并发性,而程序没有;(4)进程是竞争计算机资源的基本单位,程序不是。(5)进程和程序不是一一对应的: 一个程序可对应多个进程即多个进程可执行同一程序; 一个进程可以执行一个或几个程序2.进程状态转变及其事件进程三种状态间的转换一个进程在运行期间,不断地从一种状态转换到另一种状态,它可以多次处于就绪状态和执行状态,也可以多次处于阻塞状

2022-06-01 17:17:37 213

原创 2022-5-30

1.boolean默认值是false2.static3.包装类把基本数据类型封装为对象4.HashSet()子类依靠什么方法区分重复元素先调用对象hashcode方法,将对象映射为数组下标,再通过equals来判断数组元素是否相同。YXYZ5.equals方法6.进程和程序的本质区别(1)程序是永存的;进程是暂时的,是程序在数据集上的一次执行,有创建有撤销,存在是暂时的;(2)程序是静态的观念,进程是动态的观念;(3)进程具有并发性,而程序没有;(4)进程是竞争计算机资源的基本单位,

2022-06-01 09:20:02 75

原创 JS语法。

JS中的数组:线性表+数组JS中的函数:1.一种数据类型 2.匿名函数 3.嵌套定义JS的数据类型:数、字符串、布尔值、异常值、数组、函数JS中的对象(关联数组):Java中对象或者Map<String,Object>1.字面量定义,使用大括号var o={ };var 0={‘name’:‘美女’,‘age’:18}var o={name:‘美女’,age:18}2访问属性(根据key获取value)0.nameo.ageo[‘name’]o[‘age’]3.可以随时

2022-06-01 07:57:08 81

原创 2022-5-27

staticstatic1.static 关键字可以应用于内部类(在另一个类中定义的类)、方法或字段(类的成员变量)。2.静态就是指在编译后所分配的内存会一直存在,直到程序退出内存才会释放这个空间,也就是只要程序在运行,那么这块内存就会一直存在3.equals1.equals()方法是用来判断其他的对象是否和该对象相等2.equals()方法在object类中定义:public boolean equals(Object obj) { return (this == obj);

2022-05-30 07:54:11 64

原创 2011-5-26

instanceofinstanceofinstanceof是Java的一个保留关键字,左边是对象,右边是类,返回类型是Boolean类型。它的具体作用是测试左边的对象是否是右边类或者该类的子类创建的实例对象,是,则返回true,否则返回false。创建Socketjdk1.6垃圾收集器1.Serial收集器2.ParNew收集器3.Parallel Scavenge收集器4.Serial Old收集器5.Parallel Old收集器6.CMS(Concurrent Mark Swee

2022-05-26 15:44:42 68

原创 2022-5-25

JVM内存和线程线程与JVM内存区域和JVM运行时内存线程与JVM运行时内存1.JVM中的Java线程与原生操作系统线程有直接的映射关系2.当线程本地存储、缓冲区分配、同步对象、栈、程序计数器等准备好以后,就会创建一个操作系统原生线程。3.Java 线程结束,原生线程随之被回收。 操作系统负责调度所有线程,并把它们分配到任何可用的 CPU 上。4.当原生线程初始化完毕,就会调用 Java 线程的 run() 方法。当线程结束时,会释放原生线程和 Java 线程的所有资源。线程与JVM内存区域

2022-05-25 17:35:16 97 4

原创 网络原理TCP IP

TCP协议源/目的端口号:表示数据是从哪个进程来,到哪个进程去;32位序号/32位确认号:后面详细讲;4位TCP报头长度:表示该TCP头部有多少个32位bit(有多少个4字节);所以TCP头部最大长度是15 * 4 = 606位标志位:URG:紧急指针是否有效ACK:确认号是否有效PSH:提示接收端应用程序立刻从TCP缓冲区把数据读走RST:对方要求重新建立连接;我们把携带RST标识的称为复位报文段SYN:请求建立连接;我们把携带SYN标识的称为同步报文段FIN:通知对方,本端要关闭了,

2022-05-18 17:19:26 239

原创 网络编程套接字

什么是网络编程网络上的主机,通过不同的进程,以编程的方式实现网络通信。即便是同一个主机,只要是不同进程,基于网络来传输数据,也属于网络编程。基本概念发送端和接收端发送端:数据的发送方进程,发送端主机即网络通信中的源主机接收端:数据的接收方进程,接收端主机即网络通信中的目的主机请求和响应获取一个网络资源涉及到两次网络数据传输:第一次,请求数据发送第二次,响应数据发送客户端和服务端服务端:在常见的网络数据传输场景下,把提供服务的一方进程称为服务端可以对外提供服务客户端:获取服务的一方进程

2022-05-18 09:02:19 157

原创 网络原理1

网络通信基础网络互连的目的是进行网络通信,就是网络数据传输,就是网络主机中的不同进程间 基于网络传输数据那么,在组件的网络中,如何判断到底是从哪台主机,将数据传输到哪台主机呢?这就需要使用IP地址来标识IP地址(收获地址)IP地址主要用于标识网络主机、其他网络设备(如路由器)的网络地址。简单说,IP地址用于定位主机的网络地址。格式IP地址是一个32位的二进制数,通常被分割为4个“8位二进制数”(也就是4个字节),如:01100100.00000100.00000101.00000110。特

2022-05-17 20:22:38 389 1

原创 2022-05-09

1.重载和重写重载:1.发生在本类(在Java中两个或者两个以上的方法之间可以有同一个名字,只要参数列表不同就行,这种情况下,该方法就被称为重载,省了给method重新命名了,差不多的都用一个)2.方法名相同,参数列表不同,与返回值无关重写:重写1.发生在子类和父类之间,是子类对父类允许访问的方法的实现过程进行重新编写2.方法名,参数列表,返回值都相同,外壳不变核心重写2.源文件C语言源文件的后缀是.c;C++语言(C Plus Plus)源文件的后缀是.cpp;Java 源文件

2022-05-09 08:19:31 236

原创 2022-05-06

1.运算符——java常见运算符1.所有的关系运算符的运算结果都是布尔类型,不是true就是false,不可能是其他值。2.使用短路与 && 的时候,当左边的表达式为false的时候,右边的表达式不执行 使用短路或 || 的时候当左边的表达式结果是true的时候,右边的表达式不执行 逻辑运算符两边要求都是布尔类型,并且最终的运算结果也是布尔类型。3.使用扩展赋值运算符的时候,永远都不会改变运算结果类型。int m = 10; m += 10; 类似于 m = m + 1;-----

2022-05-06 18:43:39 142

原创 异常和成员内部类

异常异常就是程序运行过程中出现了不正常现象导致程序的中断。是指运行时抛出的程序错误,编译出错不属于此处的异常在Java中,把各种异常现象进行了抽象形成了异常类1.异常的分类异常主要分为:错误、一般性异常(受控异常)、运行时异常(非受控异常)错误如果应用程序出现了Error,那么将无法恢复,只能重新启动应用程序,最典型的Error的异常是:OutOfMemoryError受控异常这种异常属于一般性异常,出现了这种异常必须显示的处理,不显示处理java程序将无法编译通过。编译器强制普通异常必须

2022-05-06 15:10:58 102

原创 线程安全:

线程不安全现象出现的原因开发者角度1.多个线程之间操作同一块数据了(共享数据)——不仅仅是内存数据2.至少有一个线程在修改这块共享数据,多个线程中至少有一个对共享数据做修改操作系统角度前置知识:1.Java代码中的一条语句,很可能对应多条...

2022-04-28 17:40:56 224

原创 系统和进程1

操作系统1.操作系统的主要职责就是协调——专门的软件来协调工作2.硬件(资源)会被多个任务同时访问,操作系统协调不同任务对硬件资源的访问,操作系统管理着硬件资源,分配给不同的任务去使用3.操作系统是一个管理者,管理硬件软件的资源;操作系统是一个协调者,协调不同的任务队硬件资源的访问;操作系统是一个分配者,分配的主体就是任务,站在任务的角度解释一切硬件资源都要找操作系统申请后才能被授权使用程序 进程 任务 作业1.程序就是一套做数据处理的步骤,程序=指令+数据,程序是静态的,一般表现为一个或一组文

2022-04-27 12:52:31 140

原创 java-线程

操作系统一、硬件硬件组成:冯诺伊曼结构/普林斯顿体系结构注意事项:CPU和输入设备与输出设备之间不能直接交互,需要靠存储。内存和硬盘的区别:1.内存的读写速度远远大于磁盘,内存的读写速度是纳秒级别的,硬盘的读写速度是微秒级别的;2.运行的程序都在内存中运行,内存的价格远大于硬盘;3.内存中的数据不能永久的存储,当电脑重启之后数据就没了,不能持久化,而硬盘是可以持久化的;二、软件 OS——操作系统操作系统:程序的集合。组成:内核(进程管理、内存管理、文件管理、驱动管理)、其他程序(函数库、

2022-04-20 12:40:06 109

原创 计算机网络课程设计实验报告

计算机网络课程设计设计报告(40分)正文:报告题目;报告摘要;报告提纲;亮点展示附件:设计报告全文(WORD)企业网络规划设计摘要在科学技术飞速发展的时代,网络互联技术显示出了它蓬勃发展的生命力,它逐渐进入了人们的家居生活,使得当今社会的智能化和网络化越来越来明显。由于Internet的信息和服务内容不断的扩大,使得用户对网络的需求急剧增加。家庭、学生宿舍等场所纷纷布网加入到Internet中,越来越多的家庭或学生宿舍中都不只一台电脑,那么如何架构不受地域性影响,价廉速快的实用型网络。校园网已成

2022-04-14 16:48:39 18779 6

原创 数据结构——八大排序

八大排序插入排序 直接插入将一个记录插入到已排序好的有序表中,从而得到一个新,记录数增1的有序表。即:先将序列的第1个记录看成是一个有序的子序列,然后从第2个记录逐个进行插入,直至整个序列有序为止。// 直接插入排序 // 每次从无序区间中拿第一个值插入到已经排序区间的合适位置,直到整个数组有序 public static void insertionSort(int[] arr){ //已排序区间[0...i) //未排序区间[i...n]

2022-04-14 16:44:14 104

原创 接口--制定标准

定义接口实例:interface A{ //定义一个接口 public static final String MESSAGE="HelloWorld"; //全局常量 public abstract void print(); //定义抽象方法 default public void otherprint(){

2022-01-13 17:02:00 228

原创 重写和重载

重载(Overloading)重载发生在本类,方法名相同,参数列表不同,与返回值无关,只和方法名,参数列表,参数的类型有关.重载(Overload):首先是位于一个类之中或者其子类中,具有相同的方法名,但是方法的参数不同,返回值类型可以相同也可以不同。(1):方法名必须相同(2):方法的参数列表一定不一样。(3):访问修饰符和返回值类型可以相同也可以不同。其实简单而言:重载就是对于不同的情况写不同的方法。 比如,同一个类中,写不同的构造函数用于初始化不同的参数。public class Tes

2022-01-11 10:35:03 2118

原创 递归111

递归使用条件1,一个大问题可以拆分为几个子问题的解2.拆分后的子问题与原问题除数据规模不一样,其他完全相同3.存在递归终止条件注意1.不需要关心方法具体怎样实现,只需要关心方法怎样帮助解决问题2.只处理当前能解决的问题,处理不了的交给子函数例如:求阶乘的递归中:F(n)函数中,当n大于1,只知道n,把剩下的 怎么求(n-1)的阶乘的问题交给子函数F(n-1)`public class Main { public static void main(String[] args) {

2021-11-27 09:12:33 225

原创 【无标题】

1.finalfinal修饰的变量必须定义时赋值final2.命名规范3.类型转换类型转换小类型→大类型:运算时自动进行大类型→小类型:强制类型转换,可能出错丢失精度特殊:String和intInteger(integer和+4.逻辑运算符5.条件运算符6.位运算符7.输入输出输入流输入流Scanner类Scanner8.Math类Math.sqrt平方根.pow平方.abs绝对值.max.min9.重载和重写重载:在同一个类中定义了若干个方法名称相同,参数列表

2021-11-20 16:19:29 69

原创 2021-11-11

Java的数据类型1.在基本数据类型中,除了boolean类型所占长度与平台有关外,其他数据类型长度都是与平台无关的。比如:int永远占4个字节(1 Byte=8 bit)2.基本数据类型的默认值仅在作为类中属性时生效在方法内部必须先对基本数据类型变量赋值后才能使用,否则编译不通过。引用数据类型:引用类型指向一个对象,不是原始值,指向对象的变量是引用变量在java里面除去基本数据类型的其他类型都是引用类型,自己定义的class类都是引用类型,可以像基本类型一样使用。引用类型常见的有:Str

2021-11-11 21:23:52 260

原创 基本数据类型和引用数据类型

基本数据类型注意:1、基本数据类型的默认值仅在类中作为属性时生效,在方法中必须给他赋值,否则编译不通过。2、类型转换时,小类型的变量赋值给大类型,会自动转换,大类型的变量赋值给小类型,强制转换。实例:将int类型转换为short类型int i=-1;short s=(short)i;(将想要转换成的类型放到变量前,用括号括起来)引用数据类型当用sout打印一个引用的时候,会默认调用object的toString方法...

2021-08-18 11:19:39 84

原创 Arrays

Arrays详解一、Arrays定义Arrays是java.util包里面的一个类,主要包含了操纵数组的各种方法,使用时导包import java.util.Arrays二、Arrays常用函数(都是静态的)静态1、void Arrays.sort()void Arrays.sort(object[] array)object功能,对数组按照升序排序实例int[] nums={2,5,1,-10,8};arrays.sort(nums);for(int i: nums);System.

2021-08-17 10:24:59 108

原创 Collection<String>n=new ArrayList<String>()与List<String>n=new ArrayList()的区别

这里写目录标题概念区别java中的ArrayList 、List、LinkedList、Collection关系概念接口:工作中很多时候,我们需要把很多种类的实例对象,全部扔到一个集合,这个时候我们应该寻找到一个标准,接口就是一个标准。或者可以理解:把很多种类的子类实例对象全部扔到存放父类实例的集合。向上转型:子类对象会遗失和父类不同的方法,丢失子类的特有方法。向下转型:可以调用子类那些特有的方法,重新调用丢失的子类特有方法。向上转型的理解:https://blog.csdn.net/weixin

2021-02-04 11:31:43 1217 8

转载 Java向上转型作用的理解

今天看到一道Java的练习题,题目如下当时对于主函数中Car car =(Car) new Benz();不是很理解,也并不知道有什么意义,因为如果仅仅写Car car = new Benz(); 程序运行结果是一样的。在经过阅读书籍和查看别的博主写的关于向上向下转型的博客后,发现题目中这么写完全就是为了出题用,它和仅仅写Car car = new Benz(); 是一样的,都是向上转型。但是相信还是会有人对于向上转型意义不太明白,所以我这里就这道题写一下关于向上转型的用法。首先为了大家

2021-02-04 11:19:50 317 2

原创 树与二叉树,哈夫曼

树的概念与定义1.树的概念树是n(n≥0)个结点的有限集合T。当n=0时,称为空树;当n>0时,该集合满足如下条 件:(1) 其中必有一个称为根(root)的特定结点,它没有直接前驱,但有零个或多个直接后继。(2) 其余n-1个结点可以划分成m(m≥0)个互不相交的有限集T1,T2,T3,…,Tm,其中Ti又是一棵树,称为根root的子树。每棵子树的根结点有且仅有一个直接前驱,但有零个或多个直接后继。2.有关树的一些术语:1.结点:包含一个数据元素及若干指向其它结点的分支信息。

2021-02-02 16:08:47 477 3

原创 数据结构期末复习题-------算法

编写一个算法,实现在非递减的有序单链表中插入一个值为x的数据元素,并使单链表仍然保持有序。#include <stdio.h>#include <stdlib.h>#include <string.h>typedef char datatype;typedef struct node{datatype data;struct node *next;} linklist;linklistcreatelist(){//int num;dataty.

2021-02-02 09:53:44 3492 1

原创 数据结构期末复习题------选择判断

• 选择题。1.算法计算量的大小称为算法的( B )。A、效率 B、复杂性 C、现实性 D、难度2.以下数据结构中,( B )不是线性结构。A、广义表 B、二叉树 C、稀疏矩阵 D、串3、下面程序段中,对x赋值语句的频度为( C )。for(i=1;i<=n;i++)for(j=1;j<=n;j++)x=x+1;A、O(2n) B、O(n) C、O(n2) D、O(log2n

2021-02-02 09:52:15 6180 2

原创 数据结构课设------学生管理系统

学生成绩管理系统现有学生成绩信息文件1(1.txt),内容如下姓名 学号 语文 数学 英语张明明 01 67 78 82李成友 02 78 91 88张辉灿 03 68 82 56王露 04 56 45 77陈东明 05 67 38 47…. … … … …学生成绩信息文件2(2.txt),内容如下:姓名 学号 语文 数学

2021-02-02 09:49:25 2971 5

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除