自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

上海 彭彭

大神之路从这里出发

  • 博客(338)
  • 收藏
  • 关注

原创 [安全测试]Burp一直抓不到sqli 本地包解决方法,亲测有效

sqli 本地搭建要用ip 跳转 链接如图:第二个 要是你用谷歌的话 一定要这个删除掉点击这个我的谷歌走的代理设置,是系统的,所以把这个删除掉然后保存就行了

2022-07-02 09:53:13 737 2

原创 Vue中使用element-ui中的el-table时修改列的字体颜色

<el-table-column prop="isPass" label="是否通过"> <template scope="scope"> <span v-if="scope.row.isPass==='审核通过'" style="color: green">审核通过</span> <span v-else-if="scope.row.isPass==='待审核'">待审核</span>

2022-01-05 23:19:50 788

原创 【前端】element 改变icon图标大小,颜色

<i class="el-icon-s-data" style="color:blue;font-size:100%"></i>color 可以动态取值,改变颜色,font-size 可以改变图表的大小

2022-01-05 16:22:19 4392

原创 【python】数据清洗测试思路以及探索

数据清洗(Data cleaning)– 对数据进行重新审查和校验的过程,目的在于删除重复信息、纠正存在的错误,并提供数据一致性。只要有产品的重构,一定存在数据表的改变,功能上线后之前的老数据不适应现在的表的改变,就需要数据清洗适应现在的表结构。清洗数据探索之路:刚开始我们是这么做的, 根据规则随便挑一个类型数据 进行测试,缺点显而易见 ,面对大量数据 几十万条,并不能每条都能测试到,上线后问题很多。随后我们开始研究用excel配规则 和预期的结果进行比较,这样的缺点也是很大,当有大批量异常,如

2021-12-20 10:35:19 1067

原创 【python】一行代码读取excel文件内容,指定表头,并指定某一列为索引

dataframe=pd.read_excel("dataproject.xlsx",names=[i for i in "abcde"],header=None,index_col="d")names 指定表头, index_col 指定d为索引 。

2021-12-19 20:30:25 1687

原创 【python】解决excel 数据合并难题

测试的数据,投资理财项目的数据是需要合并,想了好久没有好的办法,最好想到用数据分析神奇 pandas之前我们测试数据清洗的时候,有些数据是重复的,如果一条拉取去测,一定是错误的,需要把重复的项目进行合并,然后再读取excel思路是:先判断这一列是否有这一项, 如果有显示True ,然后 把这一列的值替换,然后去重, 可以根据行名取投资理财的数据 例如 :dataframe=dataframe.loc[dataframe[“项目”].isin( [‘投资理财’])]参考代码import num

2021-12-18 10:51:49 814

原创 【python 】小数数组 快速拆分为 整数部分和小数部分 (一行代码)

我们要到达的效果如下:[-2.64287727 0.6374574 -1.91953586 -6.10303468 7.09374448 -3.91581868]快速拆分为 :整数部分:[-2. 0. -1. -6. 7. -3.]小数部分: [-0.64287727 0.6374574 -0.91953586 -0.10303468 0.09374448 -0.91581868]import numpyarr=numpy.random.randn(6)*5print(arr)

2021-12-17 11:38:21 1554

原创 【Django】修改Django项目启动IP及端口(超简单)

点击一下进入这个页面:注意这个ip 不要随便填, 否则不通的,要查看自己的IP ,window 用ipconfig 进行查看

2021-12-13 11:34:18 2774

原创 Django 解决迁移表不生效问题

迁移的表也执行了迁移命令就是不生效,请跟着我来做以下操作首先要删除数据库的迁移表,如图:删除被更新的表:第二 删除迁移记录第三执行 变更表迁移命令:python manage.py makemigrations centerDatapython manage.py sqlmigrate centerData 0001 # 这个0001代表迁移序号python manage.py migrate centerData #这一步要删除之前创建的表保证完成了,不完成你可以呼我,就这么

2021-12-12 18:32:56 1074

原创 解决codeceptjs --override 报Unexpected end of JSON input

这个问题一直困扰了我好久 ,我用官方的说明搞的,为什么也报错,官网是这么写的就是报错 如下:我在网上搜索了一遍,没有一个答案,算了我自己debug 看看 ,我debug的过程看下从结果看 你的字符串一定不能有空格,把空格去掉就解决问题了 。应用命令一定不能有空格npx codeceptjs run ./test/card_test.js --steps --override ‘{“helpers”:{“Playwright”:{“url”:“hahhahaha”}}}’但****是系统

2021-11-19 20:24:32 246

原创 Xmind 实现自动填充用例前缀 tc-tp0:

我们写用例有个麻烦 不停在每个用例添加用例前缀 例如 tc-tp0:,不停的复制粘贴,很烦 ,写了一个小工具实现自动填充,如果感觉不合适自己在修改下的等级 例如 tc-tp1:import randomimport xmindworkbook = xmind.load('upload.xmind') //需要转化的XMINDprimary_sheet = workbook.getPrimarySheet()a=primary_sheet.getRootTopic().getSubTopi

2021-11-10 11:14:42 552 1

原创 java-日常练习-多线程-synchronized详解

先举个例子线程不安全的package a;class Test { public int a=0; public void setValue(String name) throws InterruptedException { if(name.equals("a")){ a=100; Thread.sleep(1000); System.out.println

2021-10-19 22:40:13 154

原创 java-日常练习-多线程-统计两个线程消耗的时间

场景如下:我想看下多线程一共消耗了多少时间,请看下这个例子 ,关键是这个类 CommonUtils 里的static 方法。package a;class CommonUtils{ public static long beginTime1; public static long beginTime2; public static long endTime1; public static long endTime2;}class Test {

2021-10-18 15:49:50 445

原创 java-日常练习-多线程暂停以及恢复(suspend和resume)

suspend 暂停线程 ,只是不继续执行任务, 线程对象还存在,可以调用 resume 恢复线程继续运行。package a;class Test extends Thread{ public int i=0; @Override public void run() { super.run(); while (true){ i++; } } }public class S

2021-10-16 17:18:27 619

原创 java-日常练习-用java 实现字符/字母雨,直接复制能运行成功

先看效果如图:import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.KeyAdapter;import java.awt.event.KeyEvent;import java.awt.image.MemoryImageSource;import java.util.Arrays;import java.util.Random

2021-10-16 16:27:28 527

原创 java-日常练习-多线程-停止线程方法介绍(stop,interrupt,结合while使用退出标签)

1.姿势不对interrupt 永远不能停止线程运行package a;class Test extends Thread{ @Override public void run() { super.run(); for (int i = 0; i <1000 ; i++) { System.out.println("i="+i); try { Thread.slee.

2021-10-15 17:58:49 178

原创 java-日常练习-多线程-写一个类锁例子

package a;class Login{ public static String username; public static String password; public Login(String username,String password){ } synchronized public static void doLogin(String username,String password) throws InterruptedExc

2021-10-15 14:23:22 155

原创 java-日常练习-超简单的读写文件

import org.apache.commons.io.IOUtils; import java.io.*; public class Hello { public static void main(String[] args) { FileOutputStream out = null; FileInputStream in; try { File file=n...

2021-09-17 15:30:06 117

原创 java-日常练习-一行代码删除文件夹以及里面的文件

package a;import org.apache.commons.io.FileDeleteStrategy;import java.io.BufferedWriter;import java.io.File;import java.io.FileWriter;import java.io.IOException;public class Hello { public static void main(String[] args) { File file=n

2021-09-16 23:07:14 108

原创 企业微信机器人使用python上传文件并发送示例

def wx_post(file): id_url = 'https://qyapi.weixin.qq.com/cgi-bin/webhook/upload_media?key=机器人key&type=file' # 上传文件接口地址 data = {'file': open(file, 'rb')} # post jason response = requests.post(url=id_url, files=data) # post 请求上传文件 json

2021-09-15 18:13:25 1751

原创 java-日常练习-IntRange 常用方法

IntRange range=new IntRange(-7,9); System.out.println(Arrays.toString(range.toArray())); System.out.println(range.containsInteger(5)); System.out.println(range.getMaximumDouble()); System.out.println(range.getMinimumDouble()); System.out.prin.

2021-09-14 18:32:24 1302

原创 java-日常练习-序列化和反序列化

package a;import org.apache.commons.lang.SerializationUtils;import java.io.*;public class Hello implements Serializable { int id; String name; public void setId(int id){ this.id=id; } public void setName(String name){

2021-09-14 18:12:37 103

原创 java-日常练习-RandomStringUtils实现随机字符串(数字,纯字母,数字和字母组合)

System.out.println(RandomStringUtils.randomAlphabetic(10)); System.out.println(RandomStringUtils.randomNumeric(10)); System.out.println(RandomStringUtils.randomAlphanumeric(10)); System.out.println(RandomStringUtils.randomAscii(10));打印结果:iVCgZAKFS..

2021-09-14 11:41:34 755

原创 java-日常练习-ArraysUtils 数组操作

int[] array=new int[5];Arrays.fill(array,9);System.out.println(Arrays.toString(array)); array= ArrayUtils.add(array,599); System.out.println(Arrays.toString(array)); array=ArrayUtils.add(array,0,1000); System.out.println(Arrays.toString(array)); arr

2021-09-14 11:17:21 277

原创 java-日常练习-随机号码生成器

for (int i = 0; i <5 ; i++) { int a=new Random().nextInt((int)Math.pow(10,7)); String number=(""+a); while (number.length()<7){ number="0"+number; } System.out.println(numbe.

2021-09-14 10:56:01 209

原创 java-日常练习-用GregorianCalendar 制作时钟

package a;import java.io.IOException;import java.util.Calendar;import java.util.GregorianCalendar;public class Arraylist{ public static String format(int number){ return number<10?"0"+number:""+number; } public static String

2021-09-13 23:39:52 137

原创 java-日常练习-泛型两种方法实现栈结构

package a;import java.util.LinkedList;public class HelloWorld<T> { LinkedList<T> list=new LinkedList<T>(); public void push(T i){ list.push(i); } public T pop(){ return list.removeFirst(); } p

2021-09-13 17:17:39 103

原创 java-日常练习-EnumMap 常用方法总结

package a;import java.util.EnumMap;public enum HelloWorld { SMALL,MEDIUM,LARGE,SUPERSTAR; public static void main(String[] args) { EnumMap<HelloWorld,String> cakes=new EnumMap<HelloWorld, String>(HelloWorld.class) ;

2021-09-13 14:43:16 429

原创 java-日常练习-EnumSet 常用操作方法

为了解决 enum 的不可变性, 用EnumSet 解决这个问题package a;import java.util.EnumSet;public enum HelloWorld { SMALL,MEDIUM,LARGE,SUPERSTAR; public static void main(String[] args) { EnumSet<HelloWorld> cake=EnumSet.noneOf(HelloWorld.class);

2021-09-13 14:01:45 103

原创 java-日常练习-扩展枚举类的方法

package a;public enum HelloWorld { SMALL("太小了,小蛋糕"),MEDIUM("中等大小蛋糕,好吃"),LARGE("太大了,超大蛋糕,我喜欢"); private String description; HelloWorld(String s) { this.description=s; } public String getDescription(){ return descripti

2021-09-13 13:26:14 232

原创 java-日常练习-信号量实现线程同步-10000人并发存款

Semaphore当前在多线程环境下被扩放使用,操作系统的信号量是个很重要的概念,在进程控制方面都有应用。Java 并发库 的Semaphore 可以很轻松完成信号量控制,Semaphore可以控制某个资源可被同时访问的个数,通过 acquire() 获取一个许可,如果没有就等待,而 release() 释放一个许可。比如在Windows下可以设置共享文件的最大客户端访问个数。Semaphore实现的功能就类似厕所有5个坑,假如有10个人要上厕所,那么同时只能有多少个人去上厕所呢?同时只能有5个人能够占用

2021-09-12 17:32:56 208

原创 java-日常练习-测试1w并发 ,用线程池和不用线程池内存和时间消耗对比

package a;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;class ExampleThread implements Runnable{ int id=0; @Override public void run() { id++; }}public class Sender { public static vo

2021-09-12 12:57:38 462

原创 java-日常练习-用线程池ThreadPoolExecutor 模拟1000人同时存款

这里面有个坑, 当使用ThreadLocal 注意你开启的线程数一定要等于运行的线程数,否则存入的钱会有问题,原因是: ThreadLocal 只是针对线程的,如果同时运行的线程数小于开启的运行数,ThreadLocal 会出现重复添加package a;import java.util.concurrent.*;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;pub

2021-09-12 11:50:23 270

原创 java-日常练习-利用ThreadLocal,FutureTask和ExecutorService(Callable)实现多线程存款任务

package a;import java.util.concurrent.Callable;import java.util.concurrent.ExecutionException;import java.util.concurrent.FutureTask;public class Sender { ThreadLocal<Integer> amout= new ThreadLocal<Integer>(){ @Override

2021-09-11 20:03:58 214

原创 java-日常练习-使用 LinkedBlockingDeque 实现生产消费模式

package a;import java.util.concurrent.LinkedBlockingDeque;class Receiver implements Runnable{ private LinkedBlockingDeque<String> A ; public Sender sender; public Receiver(Sender sender, LinkedBlockingDeque<String> A ){

2021-09-11 17:31:12 120

原创 java-日常练习-多线程 Thread.yield()实现生产消费模式

package a;class Receiver implements Runnable{ public Sender sender; public Receiver(Sender sender){ this.sender=sender; } @Override public void run() { for (int i = 0; i < 5; i++) { while (!sender.isValid

2021-09-11 09:36:42 86

原创 java-日常练习-求解为什么volatile 线程锁失效 (已解决)

public class HelloWorld { // public static volatile int account=0; public static void main(String[] args) { Thread thread1=new Thread(){ @Override public void run() { for (int i = 0; i <100000 ; i

2021-09-11 08:08:09 306

原创 java-日常练习-利用Boolean值来终止正在运行的线程。

Thread 类提供一个方法stop()来强迫终止线程执行,由于不安全性,我们使用这个方法,直接看代码,都比较简单,不做解释。import static java.lang.Thread.sleep;public class HelloWorld { // static boolean finalStoped = true; public static void main(String[] args) throws InterruptedException {

2021-09-05 21:06:55 139

原创 java-日常练习-守护线程总结

守护线程 不会等 守护对象线程,他们没有先后顺序 ,没有守护线程等服务对象线程结束而结束,守护线程运行完即使服务对象线程没有运行完,他也要结束。只有守护线程和守护对象线程同时存在的时候, 服务对象停止了,自然守护线程就崩掉。为了能一直能守护,所以在守护线程写个 死循环 ,监听某个状态,一直做服务。守护线程就是一个服务,被服务对象不存在他也没有存在的意义 随即就消失...

2021-09-05 20:50:56 104

原创 java-日常练习-实现类对象排序 (重写compareTo())

package a;import java.util.Arrays;public class HelloWorld implements Comparable<HelloWorld> { // 实现Comparable接口,否则会报错 int a; public HelloWorld(int a) { this.a=a; } @Override public int compareTo(HelloWorld o) {

2021-09-03 19:16:17 186

空空如也

空空如也

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

TA关注的人

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