自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(79)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 自动化测试

目录一、禅道二、自动化测试总结一、禅道禅道是一款项目管理工具,可以管理整个软件开发的生命周期。可以进行:测试用例管理,BUG管理(创建BUG,设置状态:解决,关闭),报表统计(测试用例,BUG情况)禅道的工作流程:产品经理:创建需求,创建计划(添加需求),版本管理;项目经理:管理项目(迭代),关联产品,关联需求,分配任务,管理团队;开发人员:记录任务的执行状态,管理指向自己的BUG状态;测试人员:管理测试过程,创建测试用例,创建BUG;二、自动化测试什么是自定化测试?按照设定好的条

2022-09-17 19:58:53 397

原创 Selenium +Python自动化测试

**selenium工具**:自动化测试工具、UI测试工具**selenium的特点**:**轻量级,免费开源**;**支持多语言**,Java Python C#ruby JavaScript**支持多浏览器**:Chrome Firefox edge Opera Safari lE**支持分布式**: selenium Grid

2022-08-26 17:12:21 545

原创 网页版五子棋实时对战系统

用户模块主要负责用户的注册, 登录, 分数记录功能.使用 MySQL 数据库存储数据.客户端提供一个登录页面+注册页面.服务器端基于 Spring + MyBatis 来实现数据库的增删改查.匹配模块用户登录成功, 则进入游戏大厅页面.游戏大厅中, 能够显示用户的名字, 天梯分数, 比赛场数和获胜场数.同时显示一个 "匹配按钮".点击匹配按钮则用户进入匹配队列, 并且界面上显示为 "取消匹配" .再次点击则把用户从匹配队列中删除.如果匹配成功, 则跳转进入到游戏房间页面

2022-08-25 17:21:30 3061 4

原创 测试用例的设计方法及测试分类

文章目录一、测试用例的设计方法二、具体的设计方法2.1等价类2.2 边界值2.3 因果图总结一、测试用例的设计方法从整体角度设计分析的测试用例基于需求的设计:(1)验证需求的正确性和合理性。(2)分析需求,细化需求,从需求中分解出测试项,根据测试项找出功能,进行测试用例的编写。例如:用户需求:购买3000块钱以内的华为智能手机测试用例:1.价格<=3000元2.品牌为华为3.智能手机4.手机功能验证:4-1.打电话4-2.接电话4-3.发短信4-4.收短信…软件需求

2022-08-24 22:01:36 2182 6

原创 Spring Boot 日志文件

日志功能: 1. 记录用户登录日志,方便分析用户是正常登录还是恶意破解用户。 2. 记录系统的操作日志,方便数据恢复和定位操作人。 3. 记录程序的执行时间,方便为以后优化程序提供数据支持。

2022-08-21 16:21:16 244

原创 是小张的在线音乐播放系统项目详解

在线音乐播放系统:1. 用户登录2. 上传音乐3. 删除指定音乐4. 批量删除选中的音乐5. 查询你想要的音乐(支持模糊查询)6. 添加音乐至喜欢的列表7. 移除喜欢的音乐

2022-08-16 17:02:26 1371 5

原创 SpringBoot概念、创建和运行及配置文件

Spring 的诞生是为了**简化 Java程序的开发**的,而`Spring Boot`的诞生是为了简化`Spring`程序开发的。Spring Boot翻译一下就是**Spring脚手架**。`Spring Boot` 就是 `Spring` 框架的脚手架,它就是为了快速开发 `Spring` 框架而诞生的。...

2022-08-16 10:16:57 241

原创 Bean作用域和生命周期

限定程序中变量的可用范围叫做**作用域**,或者说在源代码中定义变量的某个区域就叫做作用域。而**Bean的作用域是指Bean在 Spring 整个框架中的某种行为模式**,比效 `singleton`单例作用域,就表示Bean 在整个Spring 中只有一份,它是全局共享的,那么当其他人修改了这个值之后,另一个人读取到的就是被修改的值。...

2022-08-10 09:43:22 249 15

原创 Spring更简单的读取和存储对象

在Spring 中想要更简单的存储和读取对象的核心是**使用注解**,也就是我们接下来要学习Spring 中的相关注解,来存储和读取 Bean对象。

2022-08-05 16:35:39 209 3

原创 Spring的创建和使用

Spring项目的创建和使用 1. 创建Spring项目 2. 将对象存储到Spring框架 3. 将对象从Spring框架读出来(使用)

2022-08-03 21:41:16 262

原创 Spring核心与设计思想

`Spring` 指的是 `Spring Framework`(`Spring` 框架)**`Spring`是一个包含了众多工具的`IoC`容器。**`IoC = Inversion of Control` 翻译成中⽂是“**控制反转**”的意思,也就是说 **Spring 是一个“控制反转”的容器**。...

2022-07-30 18:14:24 295

原创 JVM内存布局、类加载机制及垃圾回收机制详解

JVM 是 `Java Virtual Machine` 的简称,意为 **Java虚拟机**。虚拟机是指**通过软件模拟的具有完整硬件功能的、运行在一个完全隔离的环境中的完整计算机系统**。

2022-07-28 09:26:49 472 1

原创 Linux下搭建 Java 部署环境

Linux下搭建Java环境

2022-07-22 15:22:51 401

原创 Linux 常用命令及相关权限

Linux常用命令

2022-07-18 15:34:16 519 1

原创 Cookie 和 Session

目录一、`HttpServletRequest` 类中的相关方法`HttpSession` 类中的相关方法Cookie 类中的相关方法HttpServletResponse 类中的相关方法代码示例: 实现用户登陆在Servlet中,对于Cookie和Session都有很好的支持,此处就可以基于这个API来完成会话管理的操作。比如去医院时候的就诊卡:去医院的挂号处,就会先获得到一个就诊卡,就诊卡上就包含了当前患者的关键信息(就相当于cookie ),在各个科室都能刷就诊卡,刷就诊卡的时候,就可以通过医院的

2022-07-12 16:04:25 323 8

原创 Servlet详解

目录一、一级标题1.1 二级标题Servlet 是一种实现动态页面的技术. 是一组 Tomcat 提供给程序猿的 API, 帮助程序猿简单高效的开发一个 web app.一、一级标题1.1 二级标题

2022-06-22 19:53:09 1238 9

原创 HTTP协议

目录一、理解 "应用层协议"1.1 HTTP请求1.2 HTTP响应为什么 HTTP 报文中要存在 "空行"?二、HTTP 请求 (Request)详细解释2.1 URL基本格式2.2 关于 URL encode/URL decode2.3 认识方法谈谈 GET 和 POST 的区别2.4 认识请求 "报头" (header)User-Agent (简称 UA)RefererCookie认识请求 "正文" (body)三、HTTP 响应详解3.1 认识 "状态码" (status code)3.2 认识响应

2022-06-11 10:40:08 303 18

原创 JavaScript(WebAPI)

目录一、DOM 基本概念1.1 获取元素querySelector二、事件初识三、操作元素3.1 操作元素内容JS 分成三个大的部分ECMAScript(JS): 基础语法部分;DOM API: 操作页面结构;(最核心的库)BOM API: 操作浏览器;WebAPI 就包含了 DOM + BOM所谓的 API 本质上就是一些现成的函数/对象, 让程序猿拿来就用, 方便开发.API参考文档一、DOM 基本概念DOM 全称为 Document Object Model.W3C 标准给我们

2022-05-25 10:36:46 1563 14

原创 Java Script基础语法

目录引言一、JavaScript 的书写形式1.1行内式1.2 内嵌式1.3 外部式二、输入输出2.1 输入: prompt2.2 输出: alert2.3 输出: console.log三、语法概览3.1 变量的使用3.2 基本数据类型四、运算符4.1相等运算符4.2 逻辑运算符五、数组5.1 创建数组5.2 获取数组元素5.3 获取数组长度5.4 使用 push 进行追加元素5.5 删除数组中的元素.六、函数6.1 语法格式6.2 函数表达式6.3 关于参数个数6.4 作用域七、对象7.1 使用 字面量

2022-05-15 22:37:38 1349 6

原创 CSS选择器的用法及常见属性

目录一、CSS基本语法规范二、引入方式2.1 内部样式表2.2 内联样式2.3 外部样式--实际开发中用的最多三、代码风格3.1 样式格式3.2 样式大小写3.3 空格规范四、选择器4.1 选择器的种类4.2 基础选择器1. 标签选择器2. 类选择器3.id选择器4.通配符选择器4.3 复合选择器1. 后代选择器把 `ol` 中的 `li` 修改颜色, 不影响 `ul`代码示例: 元素 2 不一定非是 儿子, 也可以是孙子.可以是任意基础选择器的组合. (包括类选择器, id 选择器)2. 子选择器3.并集

2022-05-09 21:27:04 2485 12

原创 HTML基础

目录一、HTML 结构1.1 HTML 文件基本结构1.2 标签层次结构1.3 快速生成代码框架二、HTML 常见标签2.1 注释标签2.2 标题标签: h1-h62.3 段落标签: p2.4 换行标签: br2.5 格式化标签一、HTML 结构HTML 代码是由 “标签” 构成的.形如:<body>he11o</body>标签名 (body) 放到 < > 中大部分标签成对出现. <body> 为开始标签, </body> 为结束

2022-05-04 09:50:16 553 3

原创 网络原理:TCP/UDP

@[TOC]目录TCP/IP五层协议中,除应用层外的其他四层,都是操作系统,驱动,硬件,是实现好了的.咱们不需要管.(除非你是系统工程师,驱动开发工程师…);在应用层这里,最重要的事情,就是“设计并实现一个应用层协议"。设计一个应用层协议,主要就是包含两个工作:明确传输的信息(根据需求)明确数据的组织格式(参考现有的模板:xml,json,protobuffer)一、数据组织格式当下比较流行的一些协议的模板(数据的组织格式)有:xml:可读性好,但是运行效率不高json :可读性好,但

2022-04-28 16:49:09 1023 12

原创 网络编程(TCP/UDP)套接字

目录一、套接字二、UDP数据报套接字编程一、套接字Socket套接字,是由系统提供用于网络通信的技术(操作系统给应用程序提供的一组API叫做Socket API),是基于TCP/IP协议的网络通信的基本操作单元。基于Socket套接字的网络程序开发就是网络编程。socket可以视为是应用层和传输层之间的通信桥梁;传输层的核心协议有两种:TCP,UDP;socket API也有对应的两组,由于TCP和UDP协议差别很大,因此,这两组API差别也挺大。分类:Socket套接字主要针对传输层协议划

2022-04-26 09:01:12 1917 9

原创 网络通信基础(局域网、广域网、IP地址、端口号、协议、封装、分用)

目录一、局域网和广域网1.1 局域网LAN1.2 广域网二、网络通信基础2.1 IP地址2.2 端口号2.3 协议2.4 协议分层OSI七层网络模型TCP/IP五层(或四层)模型网络设备所在分层三、封装和分用3.1 封装应用层(QQ应用程序)传输层(操作系统内核)网络层(操作系统内核)数据链路层(驱动程序)物理层(硬件设备)3.2 分用物理层(硬件设备,网卡)数据链路层(驱动)网络层(操作系统内核)传输层(操作系统内核)应用层(应用程序QQ)独立模式:计算机之间相互独立。随着时代的发展,越来越需要计

2022-04-23 11:17:43 3002 10

原创 文件操作--IO

目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as snsimport warningswarnings.filterwarnings('

2022-04-19 09:39:45 262 5

原创 多线程(面试必考)

目录一、常见锁策略1.1 悲观锁 vs 乐观锁1.2 读写锁1.3 重量级锁 vs 轻量级锁1.4 挂起等待锁 vs 自旋锁1.5 公平锁 vs 非公平锁1.6 可重入锁 vs 不可重入锁二、CAS(重点)CAS中的ABA问题一、常见锁策略锁策略不仅仅是局限于 Java . 任何和 “锁” 相关的话题, 都可能会涉及到以下内容. 这些特性主要是给锁的实现者来参考的.1.1 悲观锁 vs 乐观锁悲观锁:预期锁冲突的概率很高;乐观锁:预期锁冲突的概率很低;悲观锁,做的工作更多,付出的成本更多,更

2022-04-15 17:15:49 569 19

原创 多线程案例(单例模式、阻塞式队列、定时器及线程池)

目录一、单例模式二、阻塞式队列标准库中的阻塞队列阻塞队列实现总结一、单例模式单例模式能保证某个类在程序中只存在唯一一份实例, 而不会创建出多个实例.这一点在很多场景上都需要. 比如 JDBC 中的 DataSource 实例就只需要一个。二、阻塞式队列阻塞队列是什么?阻塞队列是一种特殊的队列. 也遵守 “先进先出” 的原则.阻塞队列是一种线程安全的数据结构, 并且具有以下特性 : 产生阻塞效果当队列满的时候, 继续入队列就会阻塞, 直到有其他线程从队列中取走元素.当队列空的时候, 继

2022-04-10 21:36:29 874 15

原创 线程的状态及多线程带来的风险

目录一、线程的状态1.1 NEW1.2 RUNNABLE1.3 BLOCKED1.4 WAITING1.5 TIMED_WAITING1.6 TERMINATED二、多线程带来的的风险-线程安全2.1 线程安全的概念2.2 线程不安全的典型案例2.3 线程不安全的原因synchronized 关键字-监视器锁monitor locksynchronized的使用方式总结一、线程的状态1.1 NEWNEW: 安排了工作, 还未开始行动;把 Thread对象创建好了,但是还没有调用start 。

2022-04-07 21:50:17 1371 21

原创 进程、线程的创建方法及 Thread 类的基本用法

一、进程操作系统是一个管理的软件。对下,要管理好各种硬件设备,对上,操作系统要个各种软件提供稳定的运行环境。进程是操作系统对一个正在运行的程序的一种抽象,换言之,可以把进程看做程序的一次运行过程;同时,在操作系统内部,进程又是操作系统进行资源分配的基本单位。进程(process)又叫任务(task)操作系统是如何管理进程的?1.先描述一个进程(描述出一个进程上的一些相关属性)2.再组织若干个进程(使用一些数据结构,把很多描述进程的信息放在一起买方便进行增删改

2022-04-01 21:23:03 968 16

原创 MySQL-JDBC编程

目录前言一、JDBC使用步骤1.创建项目2. 引入依赖2.1 下载驱动包2.2 将驱动包导入到项目中3. 编写代码3.1 创建数据源3.2 让代码和数据库建立连接3.3 操作数据库(已插入数据库为例)3.4 执行sql,释放资源二、增删改查操作2.1 插入2.2 删除2.3 修改2.4 查找前言JDBC,即Java Database Connectivity,java数据库连接。是一种用于执行SQL语句的Java API,它是Java中的数据库连接规范。这个API由 java.sql.*,javax.

2022-03-27 20:44:28 1974 22

原创 MySQL索引事务

目录一、索引1.1 概念1.2 作用1.3 和索引相关的sql1.3.1 查看索引1.3.2 创建索引1.3.3 删除索引1.4 索引背后的数据结构B树(B-树)B+树二、事务2.1 为什么使用事务2.2 事务的四个基本特性原子性一致性持久性隔离性并发执行事务可能带来的问题1. 脏读问题2. 幻读问题MySQL中事务的隔离级别总结一、索引1.1 概念索引是一种特殊的文件,包含着对数据表里所有记录的引用指针。可以对表中的一列或多列创建索引,并指定索引的类型,各类索引有各自的数据结构实现。索引就相当

2022-03-23 20:32:43 1714 17

原创 MySQL表的增删改查(进阶)

目录一、数据库约束1.1 NULL约束1.2 UNIQUE:唯一约束1.3 DEFAULT:默认值约束1.4 PRIMARY KEY:主键约束二、使用步骤2.读入数据总结一、数据库约束约束就是数据库在使用的时候,对于里面能够存的数据提出的要求和限制.1.1 NULL约束not null-指示某列不能存储NULL值.给id这一列设为not null之后,上图中紫色框里的值就变成NO了.如果尝试往这里插入空值,就会直接报错:注意:NOT NULL是可以给任意个列来进行设置,不仅仅是这一个列

2022-03-17 17:32:01 6186 25

原创 测试篇基础概念

(1) 什么是软件测试?软件: APP , web系统,软件产品(office)软件测试是测试软件是否满足用户的需求。(2) 软件测试和软件开发的区别?首先是测试与调试的区别:目的不同测试的任务是发现程序中的缺陷;是测试人员查看软件是否实现用户的需求.调试是开发人员查看自己写的代码是否实现的他想让代码实现的功能.参与角色不同测试主要是由测试人员和开发人员来执行,黑盒测试主要由测试人员完成、单元/集成测试主要是由:开发人员执行。调试由开发人员完成。执行的阶段不同测试贯穿整个软

2022-03-12 14:59:27 1014 28

原创 MySQL表的增删改查

目录前言一、新增 insert1.1单行数据 + 全列插入1.2 多行数据 + 指定列插入二、查找语句2.1 全列查找2.2 指定列查询2.3 指定查询字段为表达式2.4 查询字段指定别名2.5 针对查询结果去重(distinct)2.6 排序2.7 select 中的条件查询:where2.8 分页查询三、修改四、删除总结前言注释:在SQL中可以使用“--空格+描述”来表示注释说明.CRUD 即增加(Create)、查询(Retrieve)、更新(Update)、删除(Delete)四个单词的首字

2022-03-07 16:40:55 4877 28

原创 MySQL数据库基础

目录数据库概念内存和外存的区别一、数据库基本操作1.1 显示当前的数据库1.2 创建数据库1.3 使用数据库1.4 删除数据库二、常用数据类型2.1 数据类型2.2 字符串类型2.3 日期类型三、表的操作3.1 创建表3.2 查看表3.3 查看表的结构3.4 删除表数据库概念数据库是一个软件(是一类软件):这一类软件功能就是"管理数据".实现数据库软件的内部,会广泛的使用到各种数据结构.数据库管理的数据一般保存在硬盘上.也有少数数据库,是把数据存在内存中的(Redis,Tair…)MySQL就是一个

2022-03-05 20:22:16 1040 20

原创 Java中反射、枚举及lambda表达式的使用

目录一、反射1.1 定义1.2 用途1.3 反射基本信息1.4 与反射相关的类1.5 Class类(反射机制的起源 )1.6 Class类中的相关方法1.7 获得Class对象的三种方式1.8 反射的使用1.9 反射优点和缺点二、枚举2.1 Enum 类的常用方法2.2 枚举的优点和缺点三、Lambda 表达式总结一、反射1.1 定义Java的反射(reflection)机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性,既然能拿到,那

2022-03-02 18:01:05 1306 5

原创 搜索树与哈希表详解

目录一、搜索树1.1 概念1.2 查找1.3 插入1.4 删除1.5 性能分析1.6 与java集类的关系二、哈希表2.1 概念总结一、搜索树1.1 概念二叉搜索树又称二叉排序树,它或者是一棵空树,或者是具有以下性质的二叉树:若它的左子树不为空,则左子树上所有节点的值都小于根节点的值;若它的右子树不为空,则右子树上所有节点的值都大于根节点的值;它的左右子树也分别为二叉搜索树。如:1.2 查找若根节点不为空:如果根节点==查找key 返回当前节点;如果根节点 >查找key在

2022-02-27 17:24:49 1204 20

原创 Java中关于内部类详解

一、 本地内部类二、实例内部类三、静态内部类四、匿名内部类

2022-02-25 17:27:54 772

原创 动态规划问题经典例题

DP(Dynamic Programming)定义:动态规划是分治思想的延伸,通俗一点来说就是大事化小,小事化无的艺术。在将大问题化解为小问题的分治过程中,保存对这些小问题已经处理好的结果,并供后面处理更大规模的问题时直接使用这些结果。动态规划具备了以下三个特点:把原来的问题分解成了几个相似的子问题。所有的子问题都只需要解决一次。储存子问题的解动态规划的本质,是对问题状态的定义和状态转移方程的定义(状态以及状态

2022-02-23 22:07:13 7672 11

原创 面试相关高频算法考点4

目录一、求二叉树深度二、异或理解,求数组中只出现一次的两个数三、滑动窗口,求和为S的连续正数序列总结一、求二叉树深度牛客链接描述:输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度,根节点的深度视为 1 。方法一:使用递归方式分别遍历根的左和根的右,然后取两边中较大的一边,最后再加上有根节点的那一层就是整棵树的深度。public class Solution { public int TreeDepth(TreeNod

2022-02-15 20:26:38 714 15

Study_tongxun.zip

实现通讯录的增删改查

2021-10-26

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

TA关注的人

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