自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 GUI编程(二)

Swing是GUI(图形用户界面)开发工具包。早期的AWT(抽象窗口工具包)组件开发的图形用户界面,要依赖本地系统,当把AWT组件开发的应用程序移植到其他平台的系统上运行时,不能保证其外观风格,因此AWT是依赖于本地系统平台的。而使用Swing开发的Java应用程序,其界面是不受本地系统平台限制的,也就是说Swing开发的Java应用程序移植到其他系统平台上时,其界面外观是不会改变的。

2023-05-04 21:20:29 1004 3

原创 Loadrunner性能测试(一)

安装Loadrunner

2023-05-04 18:27:43 607

原创 GUI编程(一)

AWT(Abstract Window Toolkit),中文译为抽象窗口工具包。包括了很多类和接口,用于Java Application的GUI(Graphics User Interface 图形用户界面)编程。GUI的各种元素(如:窗口,按钮,文本框等)由Java类来实现。使用AWT所涉及的类一般在Java.AWT包及其子包中。Container和Component是AWT中的两个核心类。

2023-05-03 03:38:35 642

原创 性能测试概述

性能测试是一项综合性的工作,致力于暴露性能问题,评估系统性能趋势。性能测试工作实质上是利用工具去模拟大量用户操作来验证系统能够承受的负载情况,找出潜在的性能问题分析并解决;找出系统性能变化趋势,为后续的扩展做准备。一般地,它主要是针对系统的性能指标制定性能测试方案,执行测试用例,得出测试结果来验证系统的性能指标是否满足既定值。性能指标里包括系统各个方面的能力,如系统并发处理能力,系统响应时间,批量业务处理能力等等。

2023-05-03 01:25:38 547

原创 Redis缓存穿透和雪崩

这里需要注意和缓存击穿的区别,缓存击穿,是指一个key非常热点,在不停的扛着大并发,大并发集中对这一个点进行访问,当这个key在失效的瞬间,持续的大并发就穿破缓存,直接请求数据库,就像在一个屏障上凿开了一个洞。当某个key在过期的瞬间,有大量的请求并发访问,这类数据一般是热点数据,由于缓存过期,会同时访问数据库来查询最新数据,并且回写缓存,会导使数据库瞬间压力过大。

2023-05-02 14:48:25 876

原创 Redis主从复制和哨兵模式

主从切换技术的方法是:当主服务器宕机后,需要手动把一台从服务器切换为主服务器,这就需要人工干预,费事费力,还会造成一段时间内服务不可用。这不是一种推荐的方式,更多时候,我们优先考虑哨兵模式。Redis从2.8开始正式提供了Sentinel(哨兵)架构来解决这个问题。谋朝篡位的自动版,能够后台监控主机是否故障,如果故障了根据投票数自动将从库转换为主库。哨兵模式是一种特殊的模式,首先Redis提供了哨兵的命令,哨兵是一个独立的进程,作为进程,它会独立运行。

2023-05-01 22:35:06 888 3

原创 Redis发布订阅

Redis发布订阅(pub/sub)是一种:发送者(pub)发送消息,订阅者(sub)接收消息。微信,微博,关注系统Redis客户端可以订阅任意数量的频道。

2023-05-01 17:35:59 65

原创 Redis持久化

Redis是内存数据库,如果不将内存中的数据库状态保存到磁盘,那么一旦服务器进程退出,服务器中的数据库状态也会消失。Redis 提供了两种持久化方式—— RDB(Redis DataBase) 和 AOF(Append Only File) ,这可以将 Redis 在内存中的数据库状态保存到磁盘里。

2023-05-01 16:34:51 818

原创 超细Redis(二)

官方文档:翻译:Redis 是一个开源(BSD 许可)内存数据结构存储系统,用作数据库、缓存、消息代理和流引擎。Redis 提供数据结构,例如字符串、哈希、列表、集、带有范围查询的排序集、位图、超日志日志、地理空间索引半径查询。Redis 内置了复制、Lua 脚本、LRU 驱动事件、事务和不同级别的磁盘持久性,并通过 Redis Sentinel 和 Redis 集群的自动分区提供高可用性。

2023-04-30 01:53:54 415

原创 超细Redis(一)

Redis (Remote Dictionary Server),即远程字典服务是一个开源使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的APIredis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。免费和开源!是当下最热门的NoSQL技术之一!也被人们称为结构化数据库!Redis能干嘛?内存存储、持久化。内存中是断电即失,所以持久化很重要(rdb,aof)

2023-04-30 01:39:01 404

原创 实操带你使用MyBatis_Plus(四)之分页插件

UserMapper中定义接口方法public interface UserMapper extends BaseMapper < User > //通过年龄查询用户信息并分页 //MyBatis_Plus所提供的分页对象必须位于第一个参数位置 Page < User > selectPageVo(@Param("page") Page < User > page , @Param("age") Integer age);page对象必须是第一个参数,否则不生效UserMapper.xml中编写SQL。

2023-04-26 07:00:00 894

原创 实操带你使用Mybatis_Plus(三)

Wrapper : 条件构造抽象类,最顶端父类AbstractWrapper : 用于查询条件封装,生成 sql 的 where 条件QueryWrapper : 查询条件封装UpdateWrapper : Update 条件封装AbstractLambdaWrapper : 使用Lambda 语法LambdaQueryWrapper :用于Lambda语法使用的查询WrapperLambdaUpdateWrapper : Lambda 更新封装Wrapper。

2023-04-25 19:52:50 136

原创 实操带你使用Mybatis_plus(2)

MyBatis-Plus中有一个和其,封装了常见的业务层逻辑详情查看源码IService和ServiceImpl注意其中的关系!!!ServiceImpl实现了IService,提供了IService中基础功能的实现。若ServiceImpl无法满足业务需求,则可以使用自定的UserService定义方法,并在实现类中实现。查询总数量数:批量添加测试:经过以上的测试,在使用MyBatis-Plus实现基本的CRUD时,我们并没有指定要操作的表,只是在Mapper接口继承BaseMapper时

2023-04-25 00:58:11 743 1

原创 刷题日记(2)

【代码】刷题日记(2)

2023-04-22 21:49:15 49

原创 实操使用Mybatis_plus

MyBatis-Plus(简称 MP)是一个 MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。创建mapper包(默认)如果需要创建别的名称,需要在appliaction.properties或者application,yml中进行配置UserMapper接口>

2023-04-22 15:34:01 423

原创 MyBatis操作数据库(2)

单表查询,多表查询,SQL注入,序列化,动态SQL语句

2023-04-22 00:03:28 89 1

原创 常用的Linux基本指令

说明: cp指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中。yum 起到的功能和 Maven 的依赖管理功能类似. 使用 Maven 能帮我们方便的安装一些第三方 jar 包, 而yum 方便我们方便的安装第三方程序.如果连续使用多次mkdir创建目录,那么就会创建出很多级的目录,这样我们就难以分清目录的结构了,于是就可以通过tree命令来查看目录的结构了。功能:对于目录,该命令列出该目录下的所有子目录与文件。

2023-04-21 14:11:36 95 1

原创 超细详解MyBatis操作数据库(1)

对于 JDBC 来说,整个操作⾮常的繁琐,我们不但要拼接每⼀个参数,⽽且还要按照模板代码的⽅式,⼀步步的操作数据库,并且在每次操作完,还要⼿动关闭连接等,⽽所有的这些操作步骤都需要在每个⽅法中重复书写。:设置生成键值在表中的列名,在某些数据库(像 PostgreSQL)中,当主键列不是表中的第⼀列的时候,是必须设置的。如果⽣成列不止⼀个,可以⽤逗号分隔多个属性名称。⼀种情况是对自己之前的 Spring 项目进行升级,另⼀种情况是创建⼀个全新的 MyBatis 和 Spring Boot 的项⽬。

2023-04-21 13:59:06 925 2

原创 言简意赅JVM核心

详解JVM运行流程,GC垃圾回收机制,JVM类加载,JVM运行时数据区等

2023-04-20 15:45:50 91

原创 刷题日记(1)

将一句话的单词进行倒置,标点不倒置。比如 I like beijing. 经过函数后变为:beijing. like I。

2023-04-20 13:10:20 42

原创 【测试开发篇】测试用例及方法

判定表(Decision table)是另一种表达逻辑判断的工具,是一种简化了的逻辑图,能直观地表明程序输入条件(原因)和输出动作(结果)之间的相互关系。依据需求将输入(特殊情况下会考虑输出)划分为若干个等价类,从等价类中选出一个测试用例,如果这个测试用例测试通过,则认为所代表的等价类测试通过,这样就可以。错误猜测法是对被测试软件设计的理解,过往经验以及个人直觉,推测出软件可能存在的缺陷,从而针对性地设计测试用例的方法。这个方法强调的是对被测试软件的需求理解以及设计实现的细节把握,还有个人的经验和直觉。

2023-04-13 15:45:25 805

原创 【测试开发篇】处理人际关系

资深测试人员提出问题:网站偶发性500错误,查看日志,是由于mysql数据库8小时超时问题造成。测试人员会提出问题:网站偶发性出现500错误。在测试工作中,最常遇到的是和开发人员的PK,作为测试经理还会和项目经理、产品经理的PK进度、 质量。例如:需求要求可以上传图片作为头像,但是没有定义格式。站在用户角度考虑一下:png,jpg那种格式更多?:清楚–准确、切题–深刻,有意义,有逻辑性–公正、全面。开发人员回答:不常见,不影响使用,暂不修改。开发人员处理:修改xml,增加校验配置项。遇到争执不要怕,记住。

2023-04-12 17:58:36 58

原创 【测试开发篇】软件测试基础--bug

bug的定义每个公司都不一致,在定义级别之前需要查看公司规范。Blocker(崩溃)阻碍开发或测试工作的问题;造成系统崩溃、死机、死循环,导致数据库数据丢失,与数据库连接错误,主要功能丧失,基本模块缺失等问题。如:代码错误、死循环、数据库发生死锁、重要的一级菜单功能不能使用等(该问题在测试中较少出现,一旦出现应立即中止当前版本测试)。Critical(严重)系统主要功能部分丧失、数据库保存调用错误、用户数据丢失,一级功能菜单不能使用但是不影响其他功能的测试。

2023-04-12 16:25:28 154

原创 【测试开发篇】初识软件测试(2)

软件的生命周期,软件的生命周期,测试模型等介绍

2023-04-12 14:11:22 181

原创 数据结构之集合框架

Java 集合框架 Java Collection Framework ,又被称为容器container,是定义在java.util包下的一组接口interfaces和其实现类classes。其主要表现为将多个元素 element 置于一个单元中,用于对这些元素进行快速、便捷的存储 store 、检索 retrieve 、管理 manipulate ,即平时我们俗称的增删查改 CRUD。例如,一副扑克牌(一组牌的集合)、一个邮箱(一组邮件的集合)、一个通讯录(一组姓名和电话的映射关系)等等。

2023-04-06 00:33:44 34

原创 浅入深出之枚举Enum

1、枚举本身就是一个类,其构造方法默认为私有的,且都是默认继承与 java.lang.Enum2、枚举可以避免反射和序列化问题3、枚举的优点和缺点

2023-04-06 00:31:26 69

原创 初识泛型--数据结构基础

一般的类和方法,只能使用具体的类型: 要么是基本类型,要么是自定义的类。如果要编写可以应用于多种类型的 代码,这种刻板的限制对代码的束缚就会很大。泛型是在JDK1.5引入的新的语法,通俗讲,泛型:就是适用于许多许多类型。从代码上讲,就是对类型实现了参数化。

2023-04-06 00:25:01 47

原创 SpringBoot 单元测试简明教程

单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证的过程就叫单元测试。单元测试是开发者编写的⼀小段代码,用于检验被测代码的⼀个很小的、很明确的(代码)功能是否正确。执行单元测试就是为了证明某段代码的执行结果是否符合我们的预期。如果测试结果符合我们的预期,称之为测试通过,否则就是测试未通过(或者叫测试失败)。

2023-04-06 00:20:11 149

原创 Spring MVC详解(学习总结)

官⽅对于 Spring MVC 的描述Spring Web MVC是基于Servlet API构建的原始Web框架,从一开始就包含在Spring框架中。它的正式名称“Spring Web MVC”来自其源模块的名称(Spring-webmvc),但它通常被称为“SpringMVC”。

2023-04-06 00:06:26 205

原创 【测试开发篇】初识软件测试(1)

最常见的理解是:软件测试就是找BUG,发现缺陷。软件测试就是验证软件产品是否满足用户的需求。由开发人员编写好的代码,需要由测试人员检验是否有些地方不符合代码规范/是否符合用户体验等等。为了保证用户的体验、产品的质量,于是就引入了"软件测试"。项目发布给用户之前,一定需要经过测试。但是,测试并不仅仅是在编码结束之后才进行测试,而是贯穿整个软件的生命周期。生活中的测试:考试,做完一遍题目之后, 进行检查, 就是在 “测试”买一台电视, 安装好之后打开试试看能不能正常使用, 也是在 “测试”

2023-04-02 14:13:00 178

原创 详解LinkedList与链表

LinkedList的底层是双向链表结构,由于链表没有将元素存储在连续的空间中,元素存储在单独的节点中,然后通过引用将节点连接起来了,因此在在任意位置插入或者删除元素时,不需要搬移元素,效率比较高。

2023-04-02 13:03:39 109

原创 详解ArrayList与顺序表

详细介绍了ArrayList使用,和简单实现了ArrayList。ArrayList不是线程安全的,在单线程下可以使用,在多线程中可以选择Vector或者 CopyOnWriteArrayList。

2023-04-02 12:58:04 145

原创 创建Maven项目

在pom.xml中引入所需依赖,建立目录

2023-04-01 17:16:49 27

原创 Lambda表达式

Lambda表达式的优点很明显,在代码层次上来说,使代码变得非常的简洁。缺点也很明显,代码不易读。优点1. 代码简洁,开发迅速2. 方便函数式编程3. 非常容易进行并行计算4. Java 引入 Lambda,改善了集合操作缺点1. 代码可读性变差2. 在非并行计算中,很多计算未必有传统的 for 性能要高3. 不容易进行调试

2023-04-01 17:11:57 142

原创 详解多线程(3)

详解阻塞队列,生产者消费者模型,定时器,线程池和线程池的拒绝策略等。

2023-04-01 14:23:12 49

原创 详解多线程(2)

介绍了Java标准库中线程安全类,volatile关键字的使用,懒汉模式和饿汉模式的实现

2023-03-30 21:32:28 45

原创 万字详解多线程(1)

详解多线程概念,创建,有关方法,synchronized关键字等

2023-03-30 13:20:25 46

原创 SpringBoot热部署(社区版)

Spring Boot热部署

2023-03-08 17:03:34 96 1

原创 快速排序算法

快速排序

2022-07-24 11:21:16 130

原创 编程入门——计算机硬件介绍

计算机包括硬件(hardware)和软件(software)两部分。硬件包括计算机中可以看得见的物理部分。而软件提供看不见的指令。这些指令控制硬件并且使得硬件完成特定的任务。在个人计算机上,总线搭建在主板上,主板是一个连接计算机各个部分的电路板。...

2022-07-23 17:05:03 1116

空空如也

空空如也

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

TA关注的人

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