自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(49)
  • 资源 (5)
  • 收藏
  • 关注

原创 seata回滚LocalDateTime问题

seata 回滚问题

2022-12-07 16:52:07 207 1

原创 seata报错问题总结 Unable to commit against JDBC Connection

Unable to commit against JDBC Connection

2022-12-07 14:42:13 2727

原创 mysql索引

mysql 索引,性能优化

2022-09-07 08:55:00 134

原创 Java对象拷贝

MapStruct

2022-09-01 14:08:50 1103

翻译 MQ 消息丢失、重复、积压问题,如何解决?

rabbirMq

2022-08-24 13:34:03 248

翻译 如何保证接口的幂等性?

接口幂等性

2022-06-13 19:52:13 62

原创 抽象类及抽象方法的实际工作使用

抽象类及抽象方法的实际工作使用

2022-06-01 20:29:56 146

原创 Docker 自动化部署

Docker 自动化部署yum -y install dockersystemctl daemon-reload && systemctl restart docker查看docker版本docker version安装 GitLab Runner在具有gitlab的机子上安装 GitLab RunnerRunner 可以 Shell 方式也可以以 Docker 容器方式运行。Shell 比较简单,问题会比较少。 用 Docker Container 方式一台机器可以装多

2022-05-24 10:32:35 2626

原创 VScode 代码格式化 setting.json文件内容

{// vscode默认启用了根据文件类型自动设置tabsize的选项“editor.detectIndentation”: false,// 重新设定tabsize“editor.tabSize”: 4,// #值设置为true时,每次保存的时候自动格式化;值设置为false时,代码格式化请按shift+alt+F“editor.formatOnSave”: false,// #每次保存的时候将代码按eslint格式进行修复“eslint.autoFixOnSave”: true,//.

2021-11-12 11:22:16 841

原创 SpringBoot的本质或实现原理

SpringBoot的本质:自动装配原理。SpringBoot是在原有的Spring框架上增加了一些注解。@SpringBootApplication注解:复合注解或派生注解。它的底层实现,其最主要的是@EnableAutoConfiguration注解。而@EnableAutoConfiguration注解,也是一个派生注解,它最主要的则是@Import({AutoConfigurationImportSelector.class})注解,AutoConfigurationImportSelec

2021-11-03 10:03:26 1080

原创 单台服务器配置 多个nacos集群环境

1.安装多个nacos2.修改配置文件 修改3个集群的端口号分别为3333、4444、5555修改端口号:server.port=3333/4444/5555在最底下添加mysql配置,(次步很重要,保证多个nacos集群数据一致)3.复制cluster.conf.example改名为cluster.conf配置cluster.conf文件4.分别启动nacos3333、4444、5555服务5.启动后测试http://localhost:3333/nacos, http://

2021-10-16 11:39:01 2432

原创 分销策略及实现

当今社会,电商等行业用分销来拉拢用户群体的场景越演越烈。举例:A分享给B后,A获得一定奖励。B再次分享给C后,A获得80%奖励,B获得60%奖励。C再次分享给D后,A获得80%奖励,B获得60%奖励,C获得40%奖励。等等类似我们得实现方案有两种:方式一:采用邀请码方式。对用户不友好方式二:采用链接或二维码携带加密参数分享。 推荐java 如何实现此需求呢?建库建表,每行数据 id,parent_id parent_id用来关联用户上级。分享地址携带用户id加密奖励时,

2021-10-09 17:05:08 387

原创 程序热部署

我们再开发过程中,都会遇到,每次修改都需要重新启动项目,有些程序员就会觉得很麻烦。采用以下方式,就可以做到修改后,无需手动部署。1.导入依赖包<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <version>2.1.1.RELEASE</vers

2021-09-29 11:38:46 139

原创 idea远程调试jar包

1.远程启动项目配置JVM参数运行-Xdebug -Xrunjdwp:transport=dt_socket,suspend=n,server=y,address=${debug_port}启动举例:nohup java -Xdebug -Xrunjdwp:transport=dt_socket,suspend=n,server=y,address=8189 -Dfile.encoding=utf-8 -jar demo.jar >demo.log 2>&1 &-

2021-09-26 10:28:11 190

原创 注解和反射学习

1.注解:1.1内置注解1.2元注解1.3自定义注解1.@interface用来声明一个注解2.其中的每一个方法实际上是声明一个配置参数3.方法的名称就是参数的名称4.返回值类型就是参数的类型,返回值只能是基本类型(Class,String,Enum)5.可以通过default来声明参数的默认值6.如果只有一个参数成员,一般参数名可以为value7.注解元素必须要有值,我们定义注解元素时,经常使用空字符串,0作为默认值。import java.lang.annotation.*;p

2021-09-24 11:31:29 46

原创 JVM性能调优

谈谈你对JVM的理解?java8虚拟机和之前的更新有什么变化?什么是OOM,什么是栈溢出,怎么分析?JVM的常用调优参数有哪些?内存快照如何抓取,怎么分析Dump下来的文件?JVM类加载器的认识?1.JVM的位置jvm运行在操作系统(windows,linux,mac)上2.JVM的体系结构3.类加载器作用: 加载class文件---new student()4.双亲委派机制自定义一个java.lang包,下创建String类,及toString方法new String.

2021-09-22 21:13:55 155

原创 JUC并发编程

文档使用java官方文档java.util 工具包之前采用的Thread、Runnable开线程Runnable 没有返回值效率相比callable相对较低!所有我们再企业开发中一般不会采用runnable,而是用callable相对较多2.线程和进程进程、线程。如果不能用一句话说出来的技术,不扎实!一个程序表示一个进程,程序中的任务表示线程。一个程序至少一个线程。java默认有几个线程?2个(main,GC),主线程和垃圾回收线程。之前采用的Thread、Runnable开线程。j

2021-09-13 18:04:56 99

原创 activiti7和spring-boot 2.X.X以上的版本整合

1.首先需要引入依赖注:activiti7 默认整合了 SpringSecurity安全框架<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apac

2021-09-13 14:51:01 420

原创 Activiti7

因业务需要,所以对此做下记录 /** * 对流程实例进行挂起或激活操作 */ public void suspendAllPeocessInstance(){ //获取流程实例id 如果只有一个流程实例则采用singleResult()获取 final ProcessDefinition myEve = repositoryService.createProcessDefinitionQuery().processDefinition

2021-09-09 11:12:01 415

原创 JVM虚拟机理解学习

垃圾回收1.如何判断对象为垃圾对象1.1引用计数法1.2可达性分析法1.1引用计数法在对象中添加一个引用计数器,当存在引用对象时,引用计数器的值+1,引用失效时,计数器-1/** * @PACKAGE_NAME: PACKAGE_NAME * @Description: * @Author: liangxu * @Date: 2021/8/30 11:52 上午 * @Version: V1.0 */public class JVMTest { private Objec

2021-08-30 18:10:15 90

原创 java多线程及高并发

进程、线程启动线程有三种方式第一:通过Thread的start方法启动1.一个程序代表一个进程。程序启动后,程序中的每项任务代表一个线程进程的最小单位是线程#案例:定义一个类集成Thread类,并重写run方法public class QrcodeThread extends Thread { public void run() { for(int i = 0;i< 2; i++){ System.out.println("qrcodethread"); } }

2021-08-26 16:34:55 134

原创 java 线程通讯

1.线程为什么要通讯多个线程并发执行时,在默认情况下CPU是随机切换线程的,有时我们希望CPU按我们得规律执行程序,此时就需要线程之间协调通信。2.线程通讯方式线程通讯的常用方式如下:1.休眠唤醒方式Object 的wait,notify,notifyAllCondition的await,signal,signalAll2.CountDownLatdh:用于某个线程A等待若干个其他线程执行完之后,它才执行3.CyclicBarrier:一组线程等待至某个状态之后再全部同时执行4.Semap

2021-08-18 10:53:08 60

原创 java多线程 知识点及实例结合

实际案例:多窗口同时售卖电影票。/** * @PACKAGE_NAME: PACKAGE_NAME * @Description: * @Author: liangxu * @Date: 2021/8/14 11:06 上午 * @Version: V1.0 */public class Ticket implements Runnable{ private int ricknum = 100;//电影票数量 @Override public void run()

2021-08-14 12:12:32 120

原创 工作中用到的mysql知识总结

一、字符函数#1.length 获取参数值的字节个数 (注:utf8、jbk)select length('join');select length('张三丰hahaha'); //utf8:15 一个汉字3字节 //jbk:12 一个汉字2字节#2.concat 拼接字符串select concat('a','b','c'); //abc#3.upper、lower 大小写转换#4.substr 字符串截取 (注:索引从1开始)select subs

2021-08-11 11:50:00 146

原创 数据结构及实例

数据结构_栈类似杯子: 先入后出数据结构_队列类似管道样: 先入先出 队尾入队,队头出队数据结构_数组(查询快,增删满)查询快:因为数组的地址时连续的,可以通过数组的首地址找到数组,通过数组的索引快速查找增删慢:因为数组的长度固定,所以增加\删除时,需要创建一个数组,然后把原数组的数据复制过来数据结构_链表(查询慢,增删快)查询慢:链表中的地址不是连续的,每次查询元素都必须从头开始查询。增删快:链表结构增删一个元素,对链表结构没有影响。例如:Linkedlist

2021-06-23 18:34:42 1123

原创 JAVA开发性能提升

字符串相加推荐使用StringBuilder因为String类型声明为final,不可更改的常量。所以计算机在处理String相加时,需要创建多个String去完成相加功能。而StringBuilder与String的区别就在于,是一个可变的byte[]数组,只需要分配一个内存地址即可。初始长度为16,如超出则会自动进行扩容。估:声明可变字符串时,最好使用StringBuilder。StringBuilder有两个常用方法。append()举例:StringBuilder a = new

2021-06-23 18:04:20 86

翻译 加密方式~

加密方式MD4MD4是麻省理工学院教授 Ronald Rivest 于1990年设计出来的算法。其摘要长度为128位,一般用32位的十六进制来表示MD4在2004年8月清华大学教授王小云已破解。所以MD4已被淘汰。MD51991年,Rivest 开发出技术上更为趋近成熟的MD5算法,它在MD4的基础上增加了"安全-带子"(safety-belts)的概念。虽然 MD5 比 MD4 复杂度大一些,但却更为安全。这个算法很明显的由四个和 MD4 设计有少许不同的步骤组成。MD5 拥有很好的抗修改

2021-06-22 18:18:54 68

翻译 mac OS X配置jdk环境变量

MAC OS X EI Capitan(10.11.2) JDK下载地址:http://www.Oracle.com/technetwork/Java/javase/downloads/index.html 下载mac对应的.dmg文件即可按提示安装好之后,进入以下路径查看JVM[java] view plain copyprint? 1 cd /Library/Java/Java

2017-04-19 15:00:44 399

原创 OS X EL Capitan安装CocoaPods遇过的坑,希望有帮助

1.移除现有Ruby默认源 $gem sources –remove https://rubygems.org/ 2.使用新的源 $gem sources -a https://ruby.taobao.org/ 3.验证新源是否替换成功 gemsources−l4.安装CocoaPods(1)gem sources -l 4.安装CocoaPods (1) sudo gem in

2016-10-17 11:54:38 318

原创 WebStorm开发工具设置React Native代码智能提醒

做React Native开发,我用的webStorm ,开发工具。很多人都希望开发工具有智能提醒功能,然而我们使用上述开发工具进行React Native开发时并没有较好的提示功能。今天给大家介绍一款插件Webstrom live template 使webStrom支持React Native开发智能提醒。插件下载地址:https://github.com/virtoolswebplayer/

2016-10-17 11:18:59 330

原创 CocoaPods 安装 使用

1.开启 terminal 2.移除现有 Ruby 默认源 $ gem sources –remove https://rubygems.org/3.使用新的源 $ gem sources -a https://ruby.taobao.org/4.验证新源是否替换成功 $ gem sources -l5.安装 CocoaPods $ sudo gem install cocoapods$

2016-10-17 10:29:59 279

原创 Xcode8更新后问题总结与解决

Xcode8升级后有以下几个问题,总结可能会不完善,之后会慢慢补充1.common+/ 不能注释了解决: 终端运行sudo /usr/libexec/xpccachectl 关机重启即可!2.出现崩溃报错日志更新到Xcode8以后,发现打印了许多网络相关的日志.[] -[NWConcrete_tcp_connection dealloc] 11 [] nw

2016-10-17 10:03:16 377

原创 极光推送

苹果在iOS10上对APNS推送做了修改 , 极光也是很给力的, 在第一时间就对sdk进行了更新下面对iOS10注册极光推送进行一下记录.注意:兼容iOS10的是极光2.1.9版本的sdk.1.使用cocoaPods添加JPush-ios-sdk(cocoaPods会帮您下载idk并配置)2.在apple Developer配置证书(开发证书和生产证书,并记得包含推送功能),配置描述文件3.将开

2016-09-20 18:30:35 261

转载 源码解析之--YTKNetwork网络层

http://www.jianshu.com/p/521a6437a0b6

2016-08-09 16:56:41 284

原创 Xcode7中创建静态库

一、静态库和动态库的区别:静态库和动态库是相对编译期和运行期的,静态库以 .a 和 .framework 形式存在,链接时,静态库会被完整地复制到可执行文件中,被多次使用就有多份冗余拷贝;动态库以 .dylib 和 .framework 形式存在,链接时不复制,程序运行时由系统动态加载到内存,供程序调用,系统只加载一次,多个程序共用,节省内存,一般只能由系统创建。二、静态库简介:1、静态库分为真机—

2016-08-09 16:53:27 549

原创 iOS 之 cocoapods安装与使用

我们都知道第三方库,一般使用cocoapods管理,cocoapods在我们IOS开发中有着很大的作用。好了,现在看下它的安装步骤: 1.打开终端,输入sudo gem install cocoapods 结果: WARNING: Improper use of the sudo command could lead to data loss or the deletion of importa

2016-08-08 10:28:59 200

翻译 iOS中Bitcode的介绍及配置

今天在一个iOS培训网站上看到一篇关于第三方库不包含bitcode就会报错的文章,感觉剖析得很详细,分享出来,希望可以对iOS初入门者有所帮助。下面我们就一起来看看吧。用Xcode 7 beta 3在真机(iOS 8.3)上运行一下工程,结果发现工程编译不过。看了下问题,报的是以下错误:ld: ‘/Users/**/Framework/SDKs/PolymerPay/Library/mobStat/

2016-08-04 14:52:14 187

转载 一步一步教你做ios推送

看到别人写的一篇推送,觉得不错,分享给大家 点击这里

2016-08-04 14:48:03 227

原创 Mac上更新Ruby

1、安装 RVM RVM:Ruby Version Manager,Ruby版本管理器,包括Ruby的版本管理和Gem库管理(gemset)$ curl -L get.rvm.io | bash -s stable 等待一段时间后就可以成功安装好 RVM。$ source ~/.bashrc$ source ~/.bash_profile 测试是否安装正常rvm -v 查看当前ruby版本$

2016-08-02 10:39:25 189

原创 Mac安装Ruby版本管理器

Mac安装后就安装Xcode是个好主意,它将帮你安装好Unix环境需要的开发包,也可以独立安装command_line_tools_for_xcode 1.安装RVM RVM:Ruby Version Manager,Ruby版本管理器,包括Ruby的版本管理和Gem库管理(gemset).$ curl -L get.rvm.io | bash -s stable或者$ bash -s s

2016-07-28 16:46:18 526

第三方登录

第三方登录,微信,QQ,微博

2016-07-20

button自适应高度和自动换行

button自适应高度和自动换行

2016-07-14

下拉 AlertView自定义弹出列表

下拉 AlertView自定义弹出列表

2016-07-14

FancyTabBa

动画菜单类,点击按钮,从各个角落飞出。

2016-02-01

AlertView自定义

AlertView自定义 简单的一个自定义 大家可以看看

2015-12-21

空空如也

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

TA关注的人

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