- 博客(83)
- 资源 (6)
- 收藏
- 关注
原创 java编译和反编译
Java开发必会的反编译知识(附支持对Lambda进行反编译的工具) (qq.com)https://mp.weixin.qq.com/s?__biz=MzI3NzE0NjcwMg==&mid=2650120609&idx=1&sn=5659f96310963ad57d55b48cee63c788&chksm=f36bbc80c41c3596a1e4bf9501c6280481f1b9e06d07af354474e6f3ed366fef016df673a7ba&sce
2021-12-31 16:34:10
697
原创 JVM内存详解
1,主流的四种JVMoracle官网下载的jdk(商用版和社区版)基于hotspot实现,国内外bat等厂商基于openjdk做一些定制化jvm规范,有基于JRocket,J9。hotspot:Longview Technologies 公司在 1999 年首次发布了虚拟机 HotSpot--------->在 1997 年时, Sun 公司将 Longview Technologies 公司收购,从此之后 HotSpot 也就归属于 Sun 公司--------->Oracle
2021-12-31 16:00:17
755
原创 selenium操作css元素
css表达式-上篇 | 白月黑羽 (byhy.net)http://www.byhy.net/tut/auto/selenium/css_1/1,CSS Selector 语法用来选择元素通过 CSS Selector 选择单个元素的方法是find_element(By.CSS_SELECTOR, CSS Selector参数)选择所有元素的方法是(element比上面方法多一个s)find_elements(By.CSS_SELECTOR, CSS Selector参数)2,
2021-12-30 18:10:45
1906
原创 判断系统是windows还是linux
ping判断服务器用的什么系统还可以用一个简单的方法,在dos下或虚拟dos下或在Linux下输入ping命令比如你要查百度的服务器就输入pingwww.baidu.com你会看到如下的信息注意TTL那一项,我们可以根据它的值判断所ping主机的操作系统类型。TTL被称为生存期,也就是你所传输的数据在网络上经过的路由器的最大个数。当TTL为0的时候,该数据还没有被传到目的主机,就会被丢弃,这样可以防止垃圾数据占据宝贵的带宽。(防止错误的数据,在网络的无限期传播)TTL...
2021-12-29 15:32:54
7028
原创 数据库之 事务
1,数据库事务特性:ACID数据库事务特征,即 ACID:A Atomicity 原子性事务是一个原子性质的操作单元,事务里面的对数据库的操作要么都执行,要么都不执行,eg:张三给李四转钱,要么张三的钱减少李四的增多,要么两个人的钱都不变。C Consistent 一致性在事务开始之前和完成之后,数据都必须保持一致状态,必须保证数据库的完整性。也就是说,数据必须符合数据库的规则。本来 张三有1000元 李四有1000元 一共2000。张三给李四转账100元,成功:张三9.
2021-12-24 16:45:43
363
原创 Jenkins的pipeline怎么写?
1,搭建流水线官方文档:开始使用 Jenkinshttps://www.jenkins.io/zh/doc/pipeline/tour/getting-started/2,pipeline有声明式和脚本式声明式流水线的是 Jenkins 流水线更近的特性: 相比脚本化的流水线语法,它提供更丰富的语法特性, 是为了使编写和读取流水线代码更容易而设计的。 3,编写pipeline(1)agent/optionsagent:指定脚本在那个环境运行,比如在abc这台服务.
2021-12-24 16:29:02
2320
原创 java中for、foreach、stream性能比较
java中for、foreach、stream性能比较进步你我他 2020-04-06 19:20:13 5879 收藏 8文章标签: java 算法版权我们在开发中循环遍历一个数组经常会用到,jdk8推出了一些新特性,对循环做了比较,通过代码亲测,记录一下!1、for循环public static void main(String[] args) { Long startTime = System.currentTimeMillis(); formMethod...
2021-12-22 09:31:49
4716
1
原创 Flask入门(conda版本)
一、 web应用框架二、 flask简介三、 安装虚拟环境和flask0,管理员身份运行conda prompt命令行1,安装虚拟环境(by conda),-name名字为flaskvir,python为所需要的版本conda create -n flaskvir python=3.82,查看虚拟环境是否安装成功conda info --envs3,安装flaskpip install flask4,查看版本四、r...
2021-12-21 19:10:55
2484
原创 Pytest + Allure + Jenkins
1,pytest测试框架(1)单元测试:对软件中最小的单元(如函数‘,模块)进行测试(2)框架:规范,帮助进行用例管理(3)自动化框架:app自动化------appium web自动化--------selenium 接口自动化--------request1.2,具体使用import pytestclass Testcase: ...
2021-12-16 13:49:14
2759
1
原创 牛客:操作系统
1. 进程和线程的区别?调度:进程是资源管理的基本单位,线程是程序执行的基本单位。 切换:线程上下文切换比进程上下文切换要快得多。 拥有资源: 进程是拥有资源的一个独立单位,线程不拥有系统资源,但是可以访问隶属于进程的资源。 系统开销: 创建或撤销进程时,系统都要为之分配或回收系统资源,如内存空间,I/O设备等,OS所付出的开销显著大于在创建或撤销线程时的开销,进程切换的开销也远大于线程切换的开销。为什么需要线程?线程产生的原因:进程可以使多个程序能并发执行,以提高资源的利用率和系统的吞..
2021-12-07 21:15:50
489
原创 数据库binlog(二进制日志binary log)
二进制日志中存储的内容称之为事件,每一个数据库更新操作(Insert、Update、Delete,不包括Select)等都对应一个事件。mysql binlog基本原理 - 简书 (jianshu.com)https://www.jianshu.com/p/a0bcb778b7f5(27条消息) 消息中间件(一)MQ详解及四大MQ比较_jcpp9527的博客-CSDN博客_mqhttps://blog.csdn.net/wqc19920906/article/details/82193316基于bi
2021-12-01 10:23:27
7343
1
原创 高并发问题如何回答?
(19 封私信 / 62 条消息) 我没有高并发项目经验,但是面试的时候经常被问到高并发、性能调优方面的问题,有什么办法可以解决吗? - 知乎 (zhihu.com)https://www.zhihu.com/question/421237964/answer/1795200233下面我结合我面试候选人的经验,以及我对高并发的理解,给你一个非常完整的建议。如果能认真看完,我相信一定有所收获,至少应付面试没啥问题。首先说一下,当我作为面试官问候选人「对于高并发的理解」时,我觉得「答得不好」的情况分.
2021-11-29 15:09:51
707
原创 【架构知识】微服务有什么认识?微服务演进?
1,单体架构Web应用程序发展的早期,大部分web工程是将所有的功能模块(service side)打包到一起并放在一个web容器中运行,很多企业的Java应用程序打包为war包。其他语言(Ruby,Python或者C++)写的程序也有类似的问题。假设你正在构建一个在线商店系统:客户下订单、核对清单和信用卡额度,并将货物运输给客户。很快,你们团队一定能构造出如下图所示的系统。这种将所有功能都部署在一个web容器中运行的系统就叫做单体架构(也叫:巨石型应用)单体架构有很多好处:IDE都是为
2021-11-29 11:24:40
698
原创 Docker【狂神笔记】
1,what?打包装箱,每个互相隔离,将服务器利用到极致传统:开发jar包,运维下载然后自己配环境运行now:开发、打包、部署、上线,一套流程做完java-----apk---发布(应用商店)----张三使用spk----安装即可用java-----jar(环境·)-----打包项目带上环境(镜像)------(Docker仓库:商店)------下载我们发布的镜像---直接运行2,...
2021-11-26 16:02:02
270
原创 Linux基本命令
1,ls,touch,mkdir//创建文件touch 11111.txt//创建隐藏文件touch .22.txt//创建文件夹mkdir 222//列出文件和隐藏文件ls -a //以列表形式显示ls -l//以列表显示文件时,以合适的单位来显示ls -l -h//以2开头的所有文件ls 2*//以2开头的,后面必须只有一位的文件(一个?只表示一位)ls 2?//顺序不唯一,结果都一样ls -l -h -a <======>ls
2021-11-16 15:28:53
1825
原创 基本类型long在内存中以补码存在
深度剖析数据在内存中的存储(原码、补码、反码、大小端、面试题)_m0_49622667的博客-CSDN博客我们知道基本的数据类型有char ,short, int, long,long long ,float,double.那么这些数据在内存中是怎样存储的呢? 一、整形在内存中的存储int a=10;这句代码大家应该扫一眼就能看懂;这代表我们为变量a分配4个字节;那这个数据在内存中怎么存储的?我先为大家解开谜题:对于整形来说,数据存放内存中其实是存放补码。补码又是什么鬼?接下来咱们先补补课计算机中的有符..
2021-11-08 10:39:19
742
原创 Win10 端口被占用解决方案
Windows平台在windows命令行窗口下执行:C:>netstat -aon|findstr "80"TCP 127.0.0.1:80 0.0.0.0:0 LISTENING 2448可知:端口被进程号为2448的进程占用,继续执行下面命令:根据进程号来查看相应的进程:C:>tasklist|findstr "2448"thread.exe 2016 Console 0 16,064 K很清楚吧,thread占用了你的端口,Kill it如果第二步查不到,那就开任务管理
2021-11-04 18:16:57
3333
原创 transient关键字
java中的关键字transient,这篇文章你再也不发愁了https://baijiahao.baidu.com/s?id=1636557218432721275&wfr=spider&for=pc这个关键字的作用其实我在写java的序列化机制中曾经写过,不过那时候只是简单地认识,只要其简单的用法,没有深入的去分析。这篇文章就是去深入分析一下transient关键字。先给出这篇文章的大致脉络首先,介绍了transient的基本概念和基本用法、然后,介绍深入分析一下transie
2021-11-02 10:28:20
182
原创 Comparator的comparing实现排序
public static void main(String[] args) { ArrayList<Model> models = new ArrayList<>(); Model model1 = new Model(); model1.setAge(300); model1.setName("a"); models.add(model1); Model model2 = ne...
2021-10-29 16:15:21
1930
原创 排序算法模板总结【y总最简洁模板】
1,各算法复杂度2,冒泡排序优化:加一个bool flag = false;只要扫一遍之后没有swap交换过,则flag就一直为false。然后flag部位true,则跳出注意每次循环,结尾的是最大的,不需要再次比对 public static int[] BubbleSort(int[] nums) { boolean flag = false; for (int i = 0; i < nums.length; i++) { .
2021-10-28 14:12:16
393
原创 在一个循环中将许多字符串连接在一起时,使用 StringBuilder类可以提升性能
String对象是不可改变的。每次使用System.String类中的方法之一时,都要在内存中创建一个新的字符串对象,这就需要为该新对象分配新的空间。在需要对字符串执行重复修改的情况下,与创建新的String对象相关的系统开销可能会非常昂贵。如果要修改字符串而不创建新的对象,则可以使用System.Text.StringBuilder类。 通过用一个重载的构造函数方法初始化变量,可以创建StringBuilder类的新实例,正如以下示例中所阐释的那样。StringBuilder My...
2021-10-27 16:49:09
441
原创 直接继承InputStream的类和需要filterInputstream过滤的类
FilterInputStream, read(), OutputStream, PushbackInputStream下面哪个是FilterInputStream的子类?继承FilterInputStream,需要被过滤的数据:BufferedInputStream,, DataInputStream直接继承InputStream:ByteArrayInputStream,FileInputStream,PipedInputStream...
2021-10-25 15:37:05
430
原创 算法(y总)
目录1,二分算法模板如何选择差别:mid计算不同,一个下取,一个上取(L + R + 1 >>> 1)1,二分算法模板如何选择若二分的点是绿色的(绿线最左边的黄色点),则用模板一;若二分的点是红色的(红线最右边的黄色点),则用模板二。模板一中:如果M(二分得到的中点)取到,是在绿色线上,则黄点在M左边且M可能正好取到黄点上,所以区间变为【L,M】。如果M取到在红线上,黄点在M右边且M不可能取到,所以是【M+1,R】;模板二同理...
2021-10-15 17:02:39
1811
原创 查看端口被占用的进程并关闭
命令:netstat -ano|findstr 80801.使用cmd命令查看端口号占用情况,例如查看端口 8014,可以看出进程号为10728;netstat -ano | findstr 端口号2.关闭该进程方法一:使用任务管理器关闭:菜单栏 -> 右键 - > 任务管理器 -> 详细信息,根据PID排序找到PID为10728的进程,选择后点击结束任务。方法二: 使用命令关闭命令:taskkill -PID 进程号 -F...
2021-10-13 15:11:29
1189
原创 java基础
1,字符编码字符串也是一种数据类型,但是,字符串比较特殊的是还有一个编码问题。因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理。最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255(二进制11111111=十进制255),如果要表示更大的整数,就必须用更多的字节。比如两个字节可以表示的最大整数是65535,4个字节可以表示的最大整数是4294967295。由于计算机是美国人发明的,因此,最早只有127个字符被编码到
2021-09-10 15:31:46
107
原创 23种设计模式
1,重叠构造器模式,javaBean模式,Builder模式的优缺点模式 优点 缺点 重叠构造器模式 形式简单 容易出错,参数表太长不容易控制,而且难以阅读 javaBean模式 容易阅读,创建实例比较容易 构造过程被分割到好多个set中容易造成线程不安全,导致对象处于不一致的状态 Builder模式 代码容易编写 创建对象,必须先创造构建器,造成一定的性能上的开销 示例代码://重...
2021-09-09 10:15:34
73
原创 三道题套路解决递归问题
递归解题三部曲何为递归?程序反复调用自身即是递归。我自己在刚开始解决递归问题的时候,总是会去纠结这一层函数做了什么,它调用自身后的下一层函数又做了什么…然后就会觉得实现一个递归解法十分复杂,根本就无从下手。相信很多初学者和我一样,这是一个思维误区,一定要走出来。既然递归是一个反复调用自身的过程,这就说明它每一级的功能都是一样的,因此我们只需要关注一级递归的解决过程即可。如上图所示,我们需要关心的主要是以下三点:整个递归的终止条件。 一级递归需要做什么? 应该返回给上一级的返回
2021-09-08 11:18:23
127
原创 Spring之事务理解
事务管理是保证数据操作的事务性(即原子性、一致性、隔离性、持久性,即所谓的 ACID)。Java中的事务类型主要有三种:JDBC事务、JTA(Java Transaction API)事务和容器事务。1. JDBC事务JDBC 事务是通过 Connection 接口( java.sql.Connection )控制的。JDBC Connection 接口提供了两种事务模式:自动提交和手工提交,支持五个事务隔离级别,两个锁密度。五个事务隔离级别是(Connection中的定义):...
2021-09-07 16:06:16
362
原创 狂神add.html静态资源
<main role="main" class="col-md-9 ml-sm-auto col-lg-10 pt-3 px-4"> <form> <div class="form-group"> <label>LastName</label> <input type="text" name...
2021-09-06 16:12:17
146
原创 leetcode编程疑难记录
1,NC41最长无重复子数组https://www.nowcoder.com/practice/b56799ebfd684fb394bd315e89324fb4?tpId=117&&tqId=37816&rp=1&ru=/activity/oj&qru=/ta/job-code-high/question-ranking public int maxLength (int[] arr) { HashMap<Integer, In.
2021-09-06 16:11:19
86
原创 spring整合mybatis等框架
目录1,spring-dao.xml2,spring-mvc.xml3,spring-service.xml4,applicationContext.xml(整合三个spring文件)5,mybatis.xml6,database.properties1,spring-dao.xml<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/sc
2021-08-26 16:33:20
71
原创 【springMVC】 简单MVC程序---配置文件
Hello,SpringMVC在上一节中,我们讲解了 什么是SpringMVC以及它的执行原理!狂神说SpringMVC01:什么是SpringMVC现在我们来看看如何快速使用SpringMVC编写我们的程序吧!配置版1、新建一个Moudle , springmvc-02-hello , 添加web的支持!2、确定导入了SpringMVC 的依赖!3、配置web.xml , 注册DispatcherServlet<?xml version="1.0" encodin.
2021-08-17 17:19:42
536
原创 计算机网络知识
1,ping网关和pingDNS的作用分别如下:1、ping网关的作用:Ping是Windows、Unix和Linux系统下的一个命令。ping也属于一个通信协议,是TCP/IP协议的一部分。利用“ping”命令可以检查网络是否连通,可以很好地帮助我们分析和判定网络故障。通常用来作为可用性的检查, 但是某些病毒木马会强行大量远程执行ping命令抢占你的网络资源,导致系统变慢,网速变慢。严禁ping入侵作为大多数防火墙的一个基本功能提供给用户进行选择。通常的情况下你如果不用作服务器或者进行网络测试,可
2021-08-17 17:15:02
2500
原创 Git学习(含部分linux基础命令)
学习git:用于版本控制(记录版本迭代,保留老版本1,和新版本,查看版本修改历史,恢复以前的版本等,多人开发必须版本记录)的工工具之一,还有一些主流控制器:SVN,CVS,VSS和TFS等。2,版本控制分类:本地版本控制(记录每次版本更新,适合个人,如RCS),集中版本控制(版本数据都放在集中服务器上,多个人可上传自己代码并同步更新,不联网就看不到历史版本,所以要定时联网上传,否则可能因服务器坏掉而丢失数据。如SVN,CVS ,VSS),分布式版本控制(每人都有全部代码,无中央服务器..
2021-08-17 11:10:50
75
原创 动态代理学习
1,问:为什么动态代理必须针对接口?**答:**JDK动态代理的原理是根据定义好的规则,用传入的接口创建一个新类,这就是为什么采用动态代理时为什么只能用接口引用指向代理,而不能用传入的类引用执行动态类。(摘自网络 自己没有看源码)Clientpackage com.kuang.demo02;public class Client { public static void main(String[] args) { //真实角色 Rent2 re
2021-08-09 15:03:05
80
原创 java-----hashset,hashmap等接口对比
1,HashTable几乎可以等价HashMapHashTable是JDK1.0的java特性,它是线程安全的,而HashMap非线程安全的,HashTable支持序列化,因此在单线程的环境下HashTable相比HashMap效率要第。HashTable不支持key和value为空,而HashMap没有这个限制。2,HashSet和HashListHashSet实现了Set接口,它不允许集合中有重复的值,当我们提到HashSet时,第一件事情就是在将对象存储在HashSet之前,要先确保对象重
2021-08-05 15:12:16
195
原创 Java序列化 serialVersionUID IDEA自动生成设置
目录1,为什么java类集成Serial接口要序列化2,如何生成serialVersionUID1,为什么java类集成Serial接口要序列化一、前言SerialVersionUid,简言之,其目的是序列化对象版本控制,有关各版本反序列化时是否兼容。如果在新版本中这个值修改了,新版本就不兼容旧版本,反序列化时会抛出InvalidClassException异常。如果修改较小,比如仅仅是增加了一个属性,我们希望向下兼容,老版本的数据都能保留,那就不用修改;如果我们删除了一个属性,或者
2021-07-29 11:37:55
873
原创 Java的异常处理
1,List,Map和Set接口区别list: (1)可以插入重复对象 (2)可插入多个null元素 (3)有序容器:按插入顺序排序 (4)常用实现类:ArrayList(提供使用索引随意访问),LinkList(适合经常要从List中添加和删除元素)和Vector。set: (1)不允许重复对象 (2)无序容器,TreeSe...
2021-07-27 18:53:43
188
原创 JavaWeb
1、基本概念1.1、前言web开发:web,网页的意思,www.baidu.com· 静态webhtml,sss 提供给所有人看的数据始终不会发生变化!动态web淘宝,几乎是所有的网站; 提供给所有人看的数据始终会发生变化,每个人在不同的时间,不同的地点看到的信息各不相同! 技术栈:Servlet/ISP,ASP,PHP1.2、web应用程序web应用程序:可以提供浏览器访问的程序;a.html、b.html.….多个web资源,这些web资源可以被外界访问,对外界提供
2021-07-20 09:47:42
98
原创 Spring-Mybatis出现数据库报错怎么解决啊?
org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: ### Error querying database. Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection; nested exce
2021-06-12 16:02:07
396
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅