- 博客(27)
- 收藏
- 关注
原创 MySQL字符集改造
原因:一个英文字符占用一个字节的存储空间,一个中文(含繁体)占用三个字节的存储空间,在MySQL中的“:😊(用户昵称包含、评论中包含),无法兼容导致报错。MySQL中原来的字符集为UTF8,某天业务中出现。MySQL中表和字段的字符集改为UTF8mb4。每字符,而Emoji表情占。
2023-07-28 10:52:19
103
原创 LocalDate和LocalDateTime
在JAVA中,常用的处理日期和时间的类主要有Date,Calendar,而在JDK1.8中,新增了两个处理日期和时间的类,一个是LocalDate,另一个是LocalTime,下面我来介绍一下这两个类中常用方法的用法。从1和2中可以看出,LocalDate的方法主要都是用来处理日期的,而LocalTime的方法主要都是用来处理时间的,但两个类都提供了表示日期 + 时间的方法。with开头的方法,我的理解是将参数替换localTime中的对应属性,将参数中的"小时"替换localTime中的"小时"
2022-11-15 17:04:49
2094
原创 Cglib和jdk动态代理
前言:动态代理解决了方法之间的紧耦合,IOC解决了类与类之间的紧耦合。Cglib和jdk动态代理的区别?1、Jdk动态代理:利用拦截器(必须实现InvocationHandler)加上反射机制生成一个代理接口的匿名类,在调用具体方法前调用InvokeHandler来处理2、 Cglib动态代理:利用ASM框架,对代理对象类生成的class文件加载进来,通过修改其字节码生成子类来处理什么时候用cglib什么时候用jdk动态代理?1、目标对象生成了接口 默认用JDK动态代理2、如果目标对象使用了.
2022-04-25 18:09:13
969
原创 Linux常用命令和工具
一、jps:虚拟机进程状况工具二、jstat:虚拟机统计信息监视工具三、jinfo:Java配置信息工具四、jmap:Java内存映像工具五、jhat:虚拟机堆转储快照分析工具六、jstack:Java堆栈跟踪工具// 显示系统各个进程的资源使用情况top// 查看某个进程中的线程占用情况top -Hp pid// 查看当前 Java 进程的线程堆栈信息jstack pid// 查看当前的 JVM 参数配置ps -ef | grep java// 查看 Java 进程的配置信息,
2022-04-02 14:48:06
1188
原创 java-日期操作总结
获得某天最大时间 public Date getEndOfDay(Date date) { LocalDateTime localDateTime = LocalDateTime.ofInstant(Instant.ofEpochMilli(date.getTime()), ZoneId.systemDefault());; LocalDateTime endOfDay = localDateTime.with(LocalTime.MAX);
2022-03-31 18:46:29
173
转载 MySQL VARCHAR字段最大长度到底是多少
**转载自:MySQL VARCHAR字段最大长度到底是多少varchar(n),n表示什么?MySQL5.0.3之前varchar(n)这里的n表示字节数MySQL5.0.3之后varchar(n)这里的n表示字符数,比如varchar(200),不管是英文还是中文都可以存放200个n最大可以是多少MySQL行长度MySQL要求一个行定义长度不能超过65535个字节,不包括text、blob等大字段类型,varchar长度受此长度限制,和其他非大字段加起来不能超过65535个字节.超过以上
2022-03-23 18:46:33
5747
原创 雪花算法-
public class SnowFlake { //因为二进制里第一个 bit 为如果是 1,那么都是负数,但是我们生成的 id 都是正数,所以第一个 bit 统一都是 0。 //机器ID 2进制5位 32位减掉1位 31个 private long workerId; //机房ID 2进制5位 32位减掉1位 31个 private long datacenterId; //代表一毫秒内生成的多个id的最新序号 12位 4096 -1 = 40
2022-03-22 18:16:10
494
原创 普通Hash算法/一致性Hash算法
public class ConsistentHash { // 定义服务器ip private static String[] tomcatServers = new String[]{"123.111.0.0", "123.101.3.1", "111.20.35.2", "123.98.26.3"}; // 定义客户端IP private static String[] clients = new String[]{"10.78.12.3", "113.25.63.1
2022-03-22 17:55:40
104
转载 一看就懂-grep命令详解
转载自:https://www.zsythink.net/archives/1733如果你是一个新手,请从头阅读这篇文章,如果你只是忘记了grep命令的一些常用选项,直接查看文章尾部的总结部分即可。先说说grep命令能做什么?我们可以使用grep命令在文本中查找指定的字符串,就像你在windows中打开txt文件,使用快捷键 “Ctrl+F” 在文本中查找某个字符串一样,说白了,可以把grep理解成字符查找工具。grep是Linux中最常用的”文本处理工具”之一,grep与sed、awk合称为Lin
2022-03-22 14:33:36
29054
8
原创 IDEA撤销已经commit的代码和记录
不小心commit时 提交 备注写错 或者 不想 提交 idea 提供撤销的方法:1.右键项目然后点击进去,输入“^”号就是撤销上一次的commit记录 ^ -------shift + 6 即可在Git中,有一个HEAD指针指向当前分支中最新的提交。当前版本,我们使用 "HEAD^",那么再前一个版本可以使用"HEAD^^",如果想回退到更早的提交,可以使用"HEAD-n"。(也就是,HEAD^=HEAD~1,HEAD^^=HEAD~2)...
2022-03-18 11:49:32
2096
1
原创 MyBatis批量更新
UPDATE tableName SET orderId = CASE id WHEN 1 THEN 3 WHEN 2 THEN 4 WHEN 3 THEN 5 ENDWHERE id IN (1,2,3)这句sql 的意思是,更新orderId 字段,如果id=1 则orderId 的值为3,如果id=2 则orderId 的值为4……where部分不影响代码的执行,但是会提高sql执行的效率。确保sql语句仅执行需要修改的行
2022-03-03 15:02:43
1800
转载 PowerDesigner 逆向工程 从SQL文件转换成PDM 从PDM转成CDM
从SQL文件逆向工程到PDM:①选择file -> Reverse Engineer - > Database②在General选项卡中选择MySQL数据库,点击确定。③using script file 选择你的sql文件,最后选择确定。从PDM转成CDM:①选择工具 -> General CDM (Ctrl + Shift + C)②点击确定...
2021-09-23 13:34:06
872
转载 idea切换Git分支时保存未提交的文件
**问题描述我们现在需要开发一个新功能A时,我们需要从Dev分支上创建一个新的功能分支Feature_A,然后我们就在这个分支上进行开发。假设有一天,你正在开发,本地已经在Feature_A上修改了几个文件,但是功能还没有完全开发完成,你不想commit,此时测试跟你说在现在的一个测试分支Test_B上有1个Bug,希望你去修复。这个时候你有两种选择:提交Feature_A上的文件,然后切换到Test_B修复Bug。(你不想这么干)不提交Feature_A上的文件,直接切换到Test_B修复Bug,
2021-07-29 19:27:04
3790
3
转载 windows下将ES和kibana作为服务启动
windows下将ES和kibana作为服务启动1.将elasticsearch设置为windows系统服务:elasticsearch的bin目录下有一个elasticsearch-service.bat进入bin目录下执行:elasticsearch-service.bat install在win服务中心可以看到ES服务了可以选择手动启动2.将kibana作为服务启动(1)下载NSSM,下载地址:http://www.nssm.cc/download(2)将NSSM解压并将nssm
2021-07-16 14:19:10
1128
原创 linux开机机自动登录root用户,已解决
修改/etc/gdm/custom.conf 文件修改 [daemon] 选项AutomaticLoginEnable=trueAutomaticLogin=rootTimedLoginEnable=true修改 [security]AllowRoot=true如果没有 /etc/gdm/custom.conf 文件:[root@localhost gdm]# yum install gdm
2021-04-22 11:47:22
901
原创 Docker常用命令
Docker的常用命令docker version #显示docker的版本信息docker info #显示docker的系统信息,包括镜像和容器的数量docker --help #docker帮助命令docker logs {服务名称}镜像命令docker images 查看所有本地主机上的镜像docker search mysql 搜索镜像docker pull mysql 下载镜像docker pull mysql:5.7 指定版本下载docker rmi -f ID/nam
2021-02-10 22:30:03
178
转载 Docker安装MySql%
下载 mysql 镜像docker pull mysql:5.7启动容器docker run -p 3306:3306 --name mysql \-v /mydata/mysql/log:/var/log/mysql \-v /mydata/mysql/data:/var/lib/mysql \-v /mydata/mysql/conf:/etc/mysql \-e MYSQL_ROOT_PASSWORD=root \-d mysql:5.7修改配置文件vi /mydata/mys
2021-02-06 21:42:39
118
转载 Centos7上安装docker
Docker从1.13版本之后采用时间线的方式作为版本号,分为社区版CE和企业版EE。社区版是免费提供给个人开发者和小型团体使用的,企业版会提供额外的收费服务,比如经过官方测试认证过的基础设施、容器、插件等。社区版按照stable和edge两种方式发布,每个季度更新stable版本,如17.06,17.09;每个月份更新edge版本,如17.09,17.10。一、安装docker1、Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否
2021-02-05 00:03:06
74
转载 Java编译时类型和运行时类型
Java编译时类型和运行时类型一、是什么Java引用变量有两个类型,一个是编译时类型,还有一个是运行时类型。编译时类型是由声明该变量时使用的类型所决定,运行时类型是由该变量指向的对象类型决定如果两种类型不一致,就会出现多态,因此就会将子类对象之间赋值给父类引用变量,称为向上转型,而不用进行类型转换。如 Animal a = new Bird(),其中引用变量 a 的编译时类型是 Animal,运行时类型是 Bird,两者不一致,因此出现多态当使用该对象引用进行调用的时候,有这么一条规则,对象调用编
2021-02-04 18:15:39
266
转载 【问题解决】SpringBoot工程无法找到父依赖 parent-pom Failure to find com.xxx:parent-pom:pom:1.0.0.RELEASE
【问题解决】SpringBoot工程无法找到父依赖 parent-pom Failure to find com.xxx:parent-pom:pom:1.0.0.RELEASE问题:Non-resolvable parent POM for com.alili:base-model:[unknown-version]:Failure to find com.alili:parent-pom:pom:1.0.0.RELEASE解决办法 :总结在前:记住在一个新的环境进行打包时,首先要确保私服里
2021-02-04 10:36:03
2368
转载 kafkatool安装并连接linux
下载kafkatool_64bit.exe下载地址:http://www.kafkatool.com/安装(傻瓜式安装,一直next,可以自己选择安装路径)连接linux:点击File —> add new connection… —>填写如下内容:填写完成后不会自动更新,重启软件:这里就出现了我们刚刚连接的!当我们查看Topics中的partition时:如果文件格式不清晰,解决方法:1、点击右上角Tools2、点击setting…3、点击Topics设置如下
2021-01-26 09:42:20
491
2
转载 node.js以及cnpm安装全教程
node.js以及cnpm安装全教程Node.js历史版本下载地址:https://npm.taobao.org/mirrors/node打开网址,选择要下载的版本号点击进去,一般下载x64.msi,我这里下载的是10.15.3文件即可(安装版)下载完成后,点击打开,安装安装完成后,按下win(ctrl旁边的按键)+r ,输入cmd打开终端,在终端中输入node -v,npm -v 出现版本号证明安装成功注意: node.js和npm是配套安装的,所以我们不需要再单独安装npm如果输入命
2021-01-17 22:16:38
1438
原创 问题:You can‘t operate on a closed Connection-已解决
You can't operate on a closed Connection!!!已解决在调用手写的jdbc工具类时,没有在工具类的方法中创建连接对象,并且又由于重复的使用,在使用jdbc或其他连接的时候,需要对流进行关闭操作。所以在第一次使用后,连接池就已经被关闭了,之后便无法再次使用如果在Connection关闭之后,再次调用涉及Connection的方法,就会出现这个错误修改前://增删改public static int adu(String sql, Object..
2020-09-03 21:34:17
676
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人