自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 回溯法

回溯法字符串 正则匹配 public boolean match(String str, String pattern) { return helper(str, pattern, ""); } public boolean helper(String str, String pattern, String pre) { if (str.equals(pattern)) { return true; }

2021-04-11 00:36:10 126 1

原创 知识点

IOBIONIOAIO集合ArrayList 的扩容机制线程安全的listHashMapJDK1.8之前HashMap底层是数组和链表结合在一起使用也就是链表散列。HashMap通过key 的hashCode经过扰动函数处理过后得到hash值,然后通过(n- 1)&hash判断当前元素存放的位置(这里的n指的是数组的长度),如果当前位置存在元素的话,就判断该元素与要存入的元素的hash值以及key是否相同,如果相同的话,直接覆盖,不相同就通过拉链法解决冲突。所谓扰动函

2021-03-28 23:12:59 104

原创 mysql 锁相关

mysql 数据隔离级别基础设置全局的隔离级别时,会同步修改当前会话的隔离级别;修改会话隔离级别时,对全局无影响查看当前会话隔离级别SELECT @@tx_isolation;设置当前会话隔离级别set session transaction isolation level repeatable read;查看系统当前隔离级别select @@global.tx_isolation;设计当前系统隔离级别set global transaction isolati

2021-03-24 00:18:06 126

原创 Linux 常用命令

文件相关从底部查看文件

2020-08-16 20:31:13 90

原创 数据库 bigData

数据库性能 mysql5.7: 最大连接数:默认151 ,可以通过max_connections进行设置 qps 四核 16g :二到三万 tps 四核 16g : 一千左右 压测工具:Sysbench 参考数据:华为云https://support.huaweicloud.com/pwp-rds/rds_swp_mysql_03.html prepare 阶段必须要插入数据 --table-size=1 --mysql-debug...

2020-08-10 23:12:47 366

原创 Hashmap

hashmap计算hashcode时 ,为什么会右移16位减少碰撞 让值分布的更加均匀计算位置时,hssh值会和length-1进行&操作,在其长度范围内取hash值因为hashmap的长度一般不会超过16位,所以hash值的前16位可能不参与位置的计算,所以取高16位与低16位异或,取出高16位与低16位不同的地方,即各自的特征,进行位置的运算...

2020-07-28 11:05:59 140

原创 hashcode和equal重写

2020-07-24 17:31:58 92

原创 WEB请求与响应

请求与响应下载操作文件下载仅需要将文件字节流写入到response中即可过程:构建响应头获取到文件字节流读取字节流到数组中,并将字节数组写入到response中//构建响应头response.setHeader("content-type", "application/octet-stream");response.setContentType("application/octet-stream");response.setHeader("Content-Disposition

2020-07-14 16:58:22 217

原创 java随机数

基础生成随机数的三种Math.random();java.util.Random伪随机数(线性同余法生成);java.security.SecureRandom真随机数;Math.random 方式通过random实现java.util.Random方式伪随机值通过种子得到随机值,种子相同时,随机值相同seed 种子long值,可以手动通过setSeed(seed);方式赋值默认 的seed为,一纳秒为基准,拼接一个固定值组成seed相同时,得到的随机数相同

2020-05-20 22:12:08 112

原创 数据库基础

数据库设计对于一对多的关系,维护点在多的一方,为一的一方不做任何改变,多的一方增加字段来维护关系对于多对多的关系,增加一张中间表,中间表与其他两张表都是多对一的关系,中间表为多的一方,其他两张表为少的一方语句语句类型数据查询语言DQL,数据操纵语言DML,数据定义语言DDL,数据控制语言DCL数据查询语言DQL基本结构是由SELECT子句,FROM子句,WHERE子句组成的查询块数据操纵语言DML(Data Manipulation Language)主要有三种形式:插入:INSE

2020-05-09 20:05:25 438

原创

基础变量名以字母、下划线或者美元符开头,不能以数字开头,后面跟字母、下划线、美元符、数字,变量名对大小写敏感,无长度限制类变量为类中的静态变量,实例变量为通过对象来访问的变量在当前类构造时先执行属性赋值,类中实例属性赋值和构造代码块之间按顺序执行,构造函数中的语句最后执行在语句块中定义的语句在语句块之外不可以访问,(包括静态代码块和实例代码块)当类中存在final类型的变量时,需要在有...

2020-05-08 14:06:08 92

原创 RedisTemplate使用

基础封装了reids的操作;对redis操作进行了归类封装,将同一类型操作封装为operation接口,如下ValueOperations:简单K-V操作SetOperations:set类型数据操作ZSetOperations:zset类型数据操作HashOperations:针对map类型的数据操作ListOperations:针对list类型的数据操作List ite...

2020-05-08 14:05:42 92

原创 Redis 使用

搭建下载对应的安装包,解压缩版选择对应版本下载,如地址解压后,跳转至对应目录,打开cmd执行 redis-server 命令,启动redis ;其后可以加入配置文件的地址,配置文件名为redis.windows-serviceredis-server redis.windows-service重新在对应目录打开cmd,执行redis-cli,打开客户端,可以进...

2020-05-03 20:00:57 89

原创 spring bean 相关

基础注解@Bean方法级别注解 ,配合@Configuration 标签使用,代表方法的返回值为一个Bean

2020-05-03 18:35:40 82

原创 Java 泛型

基础泛型值泛型值只能为类对象,不可以是基本类型,需要使用基本类型的包装类型当泛型参数未指定时,默认为泛型类型为object类型,如 ArrayList li=new ArrayList(); li.add("ni"); li.add(2);继承关系泛型之间不可以继承,如Integer和Number是继承关系, Box和Box没有关系存...

2020-05-03 17:38:36 104

原创 Word 使用

基础段前空2个汉字进入段落具体设置页面特殊格式 :首行缩进 2字符设置单倍行距进入段落设置设置具体值时,会自动变成多倍行距,具体指自定义页面边距进入页面具体设置设置具体值, 以厘米为单位...

2020-05-01 15:16:26 142

原创 逆向工具使用 (根据表生成类)

mybatis generaotjava 方式生成引入依赖 <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>...

2020-04-28 13:11:25 174

原创 Spring 项目搭建

spring boot 项目搭建日志基础spring boot 默认日志系统为 logback引入 spring-boot-starter-logging 依赖,一般在spring-boot-starter中已经导入;完整的依赖为 <dependency> <groupId>org.springframework.boot</groupId&...

2020-04-24 22:09:15 413

原创 Idea 插件

Mybaits 相关插件Free Mybatis plugin功能生成mapper xml文件快速从代码跳转到mapper及从mapper返回代码mybatis自动补全及语法错误提示集成mybatis generator gui界面详细快速跳转:点击图标可以实现xml 文件和接口文件的相互跳转...

2020-04-24 22:08:47 101

原创 Mybatis 使用

使用插入记录后返回主键idxml文件中配置 keyProperty属性,值为主键字段名称插入操作仅返回修改的记录行数,具体的主键值要从参数entity中取<insert id="insertSelective" parameterType="com.knowledge.dao.entity.UserInfo" keyProperty="id">...

2020-04-24 22:08:28 66

原创 thymeleaf 使用

基础取值普通取值 使用${value};要在th 下使用js 中取值,使用 [[${value}]],引入的script要使用如下方式:<script th:inline="javascript" type="text/javascript">超链接使用 th ,其中值需要添加@标记如:th:href="@{'http字符串'+${model中的na...

2020-04-24 22:07:02 135

原创 数据库表设计

字段datetime 类型的字段,默认是需要有date和time ,如’1999-00-00 00:00:00’ 形式;添加额外字段 `modify_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, `create_time` timestamp NOT NULL DEFA...

2020-04-24 22:06:33 145

原创 前端页面使用

基础跳转到controller 中时,其路径使用相对路径,路径开头前加“/”,使其相对于根路径开始不添加“/”时,会相对于当前路径,导致无法跳转到对应的controllerjquery使用基础页面加载完后执行简单方式$(function() {});复杂方式:$(document).ready(function() { };获取元素(可以使用单引号和双引号)$...

2020-04-24 22:06:15 275

原创 数据结构整理(字符串)

BruteForce /** * 存在回溯的匹配 * 以源字符串为主 ,逐个匹配模式pattern * 双层循环 ,第二层循环为模式 ,取值时,注意源字符串下标 * * @param s 年代 * @param p p * @return * @createTime 2020年04月18日 * @autho...

2020-04-20 16:36:42 147

原创 数据结构基本整理(图)

图基础深度优先遍历 /** * 深度优先遍历(仅针对一个节点的深度优先) * 当前点输出且设置为以访问 * 寻找下一个未被访问的点,输出 ,寻找下一个点 * 到达最深处时,会自动回溯,for循环寻找父级的同层次可访问节点 * * @param p * @param graph */ public ...

2020-04-16 17:34:21 104

原创 mockito 整理

mockito 整理引入mockito使用springboot test 时会自动导入mockito -core使用maven<dependency> <groupId>org.mockito</groupId> <artifactId>mockito-all</artifactId> <vers...

2020-02-18 14:51:14 137

原创 电脑常用命令

端口占用情况netstat -aon | findstr :80 可以用来查询占用对应端口的应用,找到其pidtasklist|findstr “12824” 可以查询对应pid 对应的应用

2020-02-06 16:12:29 91

原创 四 微信网页开发

概念网页授权:在微信访问第三方网页时,通过授权的方式,使第三方网站可以获取用户的基本信息过程授权方式获取用户基本信息使用户授权时,将真正路径MD5后存入redis,加密后的值为key,真正路径存入redis中;将路径的key存入state 参数 ,redirect_uri 参数设置为本地接收对应回调的路径。拼接 https://open.weixin.qq.com/connect/...

2020-01-31 11:51:19 196

原创 一 微信开发

微信开发概念平台微信公众号平台微信公众平台用于管理、开放微信公众号(包括订阅号、服务号、企业号),简单的说就是微信公众号的后台运营、管理系统仅对单一公众号提供服务微信开放平台主要面对移动应用/网站应用开发者,为其提供微信登录、分享、支付等相关权限和服务。微信开放平台还提供了数据统计功能,用于开发者统计接入应用的登录、分享等数据情况。可以实现多公众号和移动用户间的用户共通(...

2020-01-30 19:19:50 364

原创 三 消息管理

概念普通消息:用户向公众号发送的消息,文本 图片 语音 视频 小视频 上报地理位置 链接消息事件推送:用户的某些操作会触发一定的事件,此时,微信服务器会将对应的事件发送到用户,如关注取消,扫码,上报地理位置,自定义菜单,点击菜单时触发的消息拉取和页面跳转被动回复:微信一般不允许主动向用户发送消息,一般都是用户触发某些情况后,公众号向用户回复某些消息。消息加解密:用户在触发某些情况,...

2020-01-30 13:12:38 295

原创 java 内存回收

引用类型强引用正常创建对象,不会被会收,当内存不足时,会抛出堆溢出异常集合类的内存回收clear 方法不会回收集合对象本身,会遍历集合数据,将集合中的每一个元素置空;此时,集合中的数据会被回收,但集合不会被回收,集合本身所维护的内部数组也不会被回收,仍会保持回收前的大小(可能是一个大数组)集合置null,会回收与集合有关的所有内存,clear方法仅回收数据将强引用对象转换为其...

2020-01-15 20:02:51 214

原创 redis 基础整理

介绍redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。Redis 是一个高...

2020-01-10 17:35:10 142

原创 编码

ASCII码介绍ASCII ((American Standard Code for Information Interchange): 美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。到目前为止共定义了128个字符用于将字符转换未二进制码ASCII 码使用指定的 7 位或 8 位二进制数组合来表示 128 或 256 种可能的字符。标准 AS...

2020-01-02 11:14:26 308

原创 java 时间相关

CalendarCalendar类用于日期和时间字段的操作,它可以通过特定的方式设置和读取日期的特定部分,比如年、月、日、时等。Calendar类是一个抽象类,通过Calendar calendar = Calendar.getInstance();获取对应实例,此时实例中存储的为当前时间可以有针对性的获取,设置,增加,删除日期中某一部分的值,如年月日;月份从0开始,取出时要+1日期、月份...

2019-12-31 17:52:11 96

原创 安全攻击

XSS跨站脚本攻击,xss漏洞通常是通过输出函数将javascript代码输出到html页面中,通过用户本地浏览器执行的,所以xss漏洞关键就是寻找参数未过滤的输出函数。反射性,将script代码添加到url参数中,若网站会直接将url中参数显示到页面,则会出现该漏洞,;此种情况下用户正常操作,但额外的附加代码会暴露信息;即进入该网站的初始url存在恶意参数,一般容易出现在搜索页面。存储型...

2019-12-24 19:23:28 157 1

原创 微信开发

基础所有的微信接口调用需要access_token,2小时内有效,过期需要重新获取,但1天内获取次数有限;一般统一获取后缓存起来公众平台接口调用仅支持80端口。每个接口都有每日接口调用频次限制,在开发过程中,可以使用接口调试工具来在线调试某些接口。https://developers.weixin.qq.com/doc/offiaccount/Getting_Started...

2019-12-24 19:22:07 97

原创

锁join为阻塞当前线程,底层为wait,会释放锁Suspend 会使线程沉睡(调用该方法的线程),且不释放锁,会造成死锁,sleep使线程沉睡(主线程,而非调用者)也不释放锁,但会被自动唤醒Wait会释放锁Object的wait和notify方法使用前需要获取锁,因为两个方法都需要获取对象的monitor(监视器),该方法会使当前线程阻塞,不需要指定线程,当对象空闲时,需要调用noti...

2019-12-24 19:18:08 101

原创 线程

基础getStackTrace()会返回函数栈,保存有调用类的名称,方法名,行号;返回的数据中,thread类的getstacktrace方法始终为最顶端,下标为0,之后为所调用的方法,最顶级的调用者在栈底,最新的在顶部,当方法结束后,栈中的信息也会清除上方法中,0为getstacktrace方法,1位调用getstacktrace方法的类,2为更上一级线程只可以被启动一次,重复启动时会报...

2019-12-24 19:17:11 85

原创 加密

加密算法密算法分 对称加密 和 非对称加密,其中对称加密算法的加密与解密 密钥相同,非对称加密算法的加密密钥与解密 密钥不同,此外,还有一类 不需要密钥 的 散列算法常见的 对称加密 算法主要有 DES、3DES、AES 等,常见的 非对称算法 主要有 RSA、DSA 等散列算法 主要有 SHA-1、MD5具体MD5加密1. 散列加密,生成128bit的大整数,返回的字节数组为...

2019-12-24 19:12:57 145

原创 web 过滤器

web 过滤器1. 基础过滤器可以在servlet处理前进行过滤方法的处理在dofilter方法中filterChain.doFilter(request, wrapperResponse),该语句为跳转到下一个过滤器,同时,也可以使请求为controller处理,该语句前为处理请求,其后为处理返回值执行顺序在web.xml中,filter执行顺序跟<filter-mappi...

2019-12-10 11:55:15 122

空空如也

空空如也

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

TA关注的人

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