自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

book

有阴影的地方,必定有光

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

原创 Mysql Binlog日志

Mysql Binlog 日志

2023-11-03 15:07:57 238

原创 java thread 状态转换

new(新建):表示线程被创建但尚未启动的状态,刚创建的线程还没有执行start方法。runnable(运行状态):对应操作系统有ready和running两个状态ready(准备就绪):等待cpu资源running(运行中):获取到cpu资源blocked(阻塞):等待IO完成或者锁释放timed waiting(计时等待): 设置了时间参数的 Thread.sleep(long millis) 方法; 设置了时间参数的 Object.w...

2022-01-02 18:18:58 303

原创 IO多路复用模型之select,poll,epoll

IO多路复用模型有三种模式:select,poll,epollselect:通过进程监控文件描述符(fd)的方式每次selelct把fd从用户空间copy到kernel 然后遍历fd判断文件是否就绪 单个进程操作fd数量默认限制1024poll:poll使用链表保存文件描述符。没有fd数量限制。epoll:epoll提供了三个函数,epoll_create,epoll_ctl和epoll_wait,epoll_create是创建一个epoll句柄;epoll_ctl是注册要监听的事件类型;

2022-01-01 18:20:12 665

原创 IO五种模型

同步阻塞IO(同步阻塞):IO请求发出去后同步等待kernel的返回结果,直到结果返回或者异常。中间用户线程处于阻塞等待状态。默认socket都是阻塞的。 同步非阻塞IO(同步非阻塞):IO请求发出去后,马上得到kernel的返回结果。可能是正确结果,或者是异常。用户线程可以重复请求或者去做其他事情。 多路复用IO(异步阻塞IO):用一个或一组线程处理多个IO操作,Java中的Selector和Linux中的epoll都是这种模型。 信号驱动IO(异步阻塞IO):IO请求发出去后,等待kernel的返

2022-01-01 17:44:22 501

原创 Java IO STREAM

java.io数据传输方式区分字节流(InputStream,OutputStream) 字符流(Reader,Writer) 功能区分 文件流(FileInputStream FileOutputStream FileReader FileWriter) 数组流(ByteArrayInputStream ByteArrayOutputStream CharArrayReader CharArrayWriter)...

2022-01-01 17:14:28 226

原创 AbstractQueuedSynchronizer(AQS)实现排它锁、重入锁、共享锁、公平锁

为了方便写到一起了,有些代码需要简单整理:public class MyAQSLock extends AbstractQueuedSynchronizer { private static final MyAQSLock MY_AQS_LOCK = new MyAQSLock(); private static final AtomicInteger SHARE_LOCK = new AtomicInteger(10); public static void main(St.

2020-11-23 18:34:37 186

原创 数值边界问题

当符号相同的时候,三个数比较:a > c - b的方式,可以得到正确结果。如果符号不相同,需要先比较其中两个数的大小,再决定用加减。

2020-08-19 18:45:07 221

原创 nginx文件上传接口500,服务器没有收到请求,其他接口都没问题

今天调试项目遇到一个问题,找了好长时间开发了一个文件上传接口,通过nginx传入后端。用postman测试接口是没问题的,但是在页面上上传文件,接口一直报错500,感觉莫名其妙。后来查看/usr/local/Cellar/nginx/1.17.9/logs 目录下 nginx日志发现下面错误2020/06/23 14:03:38 [crit] 5525#0: *1 open() "/usr/local/var/run/nginx/client_body_temp/0000000001" failed

2020-06-23 15:17:51 1224

原创 14. 最长公共前缀

14. 最长公共前缀编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串""。示例1:输入: ["flower","flow","flight"]输出: "fl"示例2:输入: ["dog","racecar","car"]输出: ""解释: 输入不存在公共前缀。说明:所有输入只包含小写字母a-z。public String longestCommonPrefix(String[] strs) { if (...

2020-05-15 17:58:55 87

原创 13. 罗马数字转整数

13. 罗马数字转整数罗马数字包含以下七种字符:I,V,X,L,C,D和M。字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马数字 2 写做II,即为两个并列的 1。12 写做XII,即为X+II。 27 写做XXVII, 即为XX...

2020-05-15 17:47:04 91

原创 12. 整数转罗马数字

12. 整数转罗马数字难度中等328收藏分享切换为英文关注反馈罗马数字包含以下七种字符:I,V,X,L,C,D和M。字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马数字 2 写做II,即为两个并列的 1。12 写做XII,即为X+II...

2020-05-14 19:49:17 132

原创 11. 盛最多水的容器

11. 盛最多水的容器给你n个非负整数a1,a2,...,an,每个数代表坐标中的一个点(i,ai) 。在坐标内画n条垂直线,垂直线i的两个端点分别为(i,ai) 和 (i, 0)。找出其中的两条线,使得它们与x轴共同构成的容器可以容纳最多的水。说明:你不能倾斜容器,且n的值至少为 2。图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为蓝色部分)的最大值为49。示例:输入:[1,8,6,2,...

2020-05-14 18:59:51 132

原创 10. 正则表达式匹配

10. 正则表达式匹配难度困难1141收藏分享切换为英文关注反馈给你一个字符串s和一个字符规律p,请你来实现一个支持'.'和'*'的正则表达式匹配。'.' 匹配任意单个字符'*' 匹配零个或多个前面的那一个元素所谓匹配,是要涵盖整个字符串s的,而不是部分字符串。说明:s可能为空,且只包含从a-z的小写字母。 p可能为空,且只包含从a-z...

2020-04-30 14:43:05 150

原创 9. 回文数

9. 回文数难度简单1014收藏分享切换为英文关注反馈判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。示例 1:输入: 121输出: true示例2:输入: -121输出: false解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。示例 3:输入: 10输出: f...

2020-04-29 19:11:28 145

原创 1095. 山脉数组中查找目标值

1095. 山脉数组中查找目标值难度困难46收藏分享切换为英文关注反馈(这是一个交互式问题)给你一个山脉数组mountainArr,请你返回能够使得mountainArr.get(index)等于target最小的下标index值。如果不存在这样的下标index,就请返回-1。何为山脉数组?如果数组A是一个山脉数组的话,那它满足如下条件:...

2020-04-29 17:51:27 84

原创 8. 字符串转换整数 (atoi)

8. 字符串转换整数 (atoi)难度中等676收藏分享切换为英文关注反馈请你来实现一个atoi函数,使其能将字符串转换成整数。首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。接下来的转化规则如下:如果第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字字符组合起来,形成一个有符号整数。 假如第一个非空字符是数字,则直接将其与之后...

2020-04-29 12:16:59 128

原创 7. 整数反转

7. 整数反转难度简单1849收藏分享切换为英文关注反馈给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例1:输入: 123输出: 321示例 2:输入: -123输出: -321示例 3:输入: 120输出: 21注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为[−231, 231...

2020-04-28 20:39:22 89

原创 6. Z 字形变换

6. Z 字形变换难度中等647收藏分享切换为英文关注反馈将一个给定字符串根据给定的行数,以从上往下、从左到右进行Z 字形排列。比如输入字符串为"LEETCODEISHIRING"行数为 3 时,排列如下:L C I RE T O E S I I GE D H N之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:"LCIRET...

2020-04-28 20:19:02 87

原创 5. 最长回文子串

5. 最长回文子串给定一个字符串s,找到s中最长的回文子串。你可以假设s的最大长度为 1000。示例 1:输入: "babad"输出: "bab"注意: "aba" 也是一个有效答案。示例 2:输入: "cbbd"输出: "bb"class Solution { public String longestPalindrome(String s...

2020-04-27 20:41:37 84

原创 4. 寻找两个有序数组的中位数

4. 寻找两个有序数组的中位数给定两个大小为 m 和 n 的有序数组nums1和nums2。请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为O(log(m + n))。你可以假设nums1和nums2不会同时为空。示例 1:nums1 = [1, 3]nums2 = [2]则中位数是 2.0示例 2:nums1 = [1, 2]n...

2020-04-27 20:38:09 93

原创 3. 无重复字符的最长子串

3. 无重复字符的最长子串难度中等3514收藏分享切换为英文关注反馈给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。示例1:输入: "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。class Solution { public int lengthOfLongestSubstring(Strin...

2020-04-27 20:34:10 73

原创 2. 两数相加

2. 两数相加给出两个非空的链表用来表示两个非负的整数。其中,它们各自的位数是按照逆序的方式存储的,并且它们的每个节点只能存储一位数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 ...

2020-04-27 20:31:44 82

原创 1. 两数之和

1. 两数之和给定一个整数数组nums和一个目标值target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]...

2020-04-27 18:55:12 124

原创 Linux配置tomcat开机启动

linux的tmp目录新增文件monitor.sh,内容如下:#!/bin/sh# func:自动监控tomcat并且在异常时执行重启操作# 获取tomcat进程IDTomcatID=$(ps -ef |grep tomcat |grep -w 'apache-tomcat-7.0.90'|grep -v 'grep'|awk '{print $2}')echo $TomcatIDSt...

2019-07-18 17:47:47 78

原创 Redis安装

将redis的压缩包,上传到/usr/local下cd /usr/localtar -zxf redis-3.0.0.tar.gz安装c语言环境yum install gcc-c++编译redis源码cd redis-3.0.0make安装redismake install PREFIX=/usr/local/redis将redis解压之后的源码包中的redis....

2019-07-18 17:38:21 72

原创 Mysql数据库安装

下载tar包安装包下载:https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz将mysql安装到/usr/local/mysql下重命名mv /usr/local/mysql-5.7.25-linux-glibc2.12-x86_64 /usr/local/mysql 移动m...

2019-07-18 17:34:25 72

原创 Nginx安装手册

ROOT用户,安装依赖包 yum -y install gcc gcc-c++ autoconf automakelibtoolmake 下载pre包 cd /usr/local/wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.40.tar.gz安装pre包...

2019-07-18 17:25:03 83

原创 Oracle 11g静默安装(详细步骤)

环境准备 root上传Oracle 11g包到服务器/tmp目录,并解压: 文件:linux.x64_11gR2_database_1of2.zip、linux.x64_11gR2_database_2of2.zip 执行解压命令:unzip linux.x64_11gR2_database_1of2.zip && unzip linux.x64_11gR2_datab...

2019-05-14 14:58:41 18116 13

原创 Mybatis读取配置文件编码错误

Caused by: com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: 2 字节的 UTF-8 序列的字节 2 无效。1、编码问题。重新编码文件。2、文件读取错误。读取xml文件时需要指定文件后缀名,否则可能读取到其他非mybatis文件。另外:mybatis配置文件可以不以xm...

2019-05-13 19:10:45 264

原创 Mybatis插入list对象Mapper模板

 oraclebegin<foreach collection="list" separator=";" close=";" item="item"> INSERT INTO CW_GE_USER ( ID, USER_ID, ROLE_ID ) VALUES ( ...

2018-10-22 09:58:12 1242

原创 was8.5.5.9项目部署失败,出现mybatis的jar包异常

项目在was8.5.5.0上部署正常,但是换到was8.5.5.9部署的时候报错:W com.ibm.ws.ecs.internal.scan.context.impl.ScannerContextImpl scanJAR unable to open input stream for resource org/apache/ibatis/javassist/tools/rmi/ObjectN...

2018-09-20 16:31:33 2841

原创 Mybatis的sql配置文件对于参数0的判断处理

在Mybatis的数据库接口层传入参数s=0,在配置文件中用<if test="s != null and s != '' ">语句判断。发现并不能进入,后来跟踪源码发现,在Mybatis的org.apache.ibatis.ognl.OgnlOps.compareWithConversion(Object v1, Object v2)方法中,对比s和空字符串,会把他们转成double...

2018-09-20 14:23:27 740

空空如也

空空如也

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

TA关注的人

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