- 博客(82)
- 资源 (17)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 android手机版tcp或者udp通讯测试工具,可以用于工业设备或者系统开发时间测试tcp或是udp连接通讯是否正常工作
另外这个工具由于是通用的,可以收发16进制字符串或者直接是字符串(utf-8),所以在用netty时没有进行收发的编码解码,这样很大的信息会丢,这里设置了一个比较大缓冲区64k(65536)(.option(ChannelOption.RCVBUF_ALLOCATOR, AdaptiveRecvByteBufAllocator(3069, 4096, 65536))//设置tcp缓冲区),如果超过这个大小会丢,后面有空我会更新一篇用在实际的项目中如何写netty接收编码解码的来解决这个问题,
2023-02-22 08:17:10
4469
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 springboot好用的国际化封装方法
springboot好用的国际化封闭方法。二、springboot默认的区域信息解析是从请求头部信息中获取用哪种语言,这里我们改一下自定义区域信息解析器,要求首先地址栏如果有指定优先用地址栏指定的语言,如果没有就用请求头部信息中的内容,如果都没有,用服务器的语言。五、这里对properties的key做了封装SaCode,为了有空做一下统一异常处理,统一异常处理后比如这里如果判断用户不存在直接抛个异常,不用单独写这个SaResult,后期更新给大家看,先看一下SaCode代码吧。
2022-11-24 10:33:02
333
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 使用sa-token和mybatis-plus分页时swagger中显示返回结果内容配置
我们直接用sa-token的SaResult里面是没有@Api注解的,swagger是无法识别的,所以我们自定义一个SaResult,同理mybatis-plus里的Page, 我们也学着自定义一个。Page这里有点小小的不完善,要用mybatis-plus的分页方法一定要实现IPage,而这个OrderItem是在IPage里写的,没办法自定义用到自己写的。只能先这样注释一下,这样,平台的接口返回内容就完整了,可以交给前端写用了,不过前端也是我自己。
2022-11-24 10:03:14
848
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 像mybatis-plus一样自定义封装BaseMapper方法
像mybatis-plus一样自定义封装BaseMapper方法,所以我看一下mybatis-plus的BaseMapper中的exists方法,发现也是用的select count来判断的。三、现在就需要自己写一个sql注入器了,不然mapper里的select1limit1方法也不知道自己的实现是Select1limi1这个方法。加"@Param(Constants.WRAPPER)",不然运行时会报找不到ew的异常
2022-11-24 09:25:16
2110
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 spring整合mina开发web项目和简单mina客户端的使用
场景要求在web项目中使用mina与一些客户端通讯xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 htt
2017-04-08 13:39:00
9829
6
原创 阿里云域名动态解析
你有一个阿里云的域名,想让它解析到你家用宽带动态ip上。2、发现变化时,通过阿里云提供的sdk修改域名解析。1、定时查看宽带的ip;
2024-04-23 13:42:14
1187
1
原创 Clickhouse异常:Exception: No operation equals between Decimal(X, X) and Float64
会报错如下:Exception: No operation equals between Decimal(X, X) and Float64。不管Decimal映射的java类型是Double还是BigDecimal都会报错,说到底它还是到数据库执行时报错了。原因是clickhouse会将10.2认为是float64类型,不是decimal类型,无法互转。
2024-03-22 09:32:52
553
原创 mybatis-plus自动填充,比如创建时间,修改时间等
mybatis-plus3.3以后,不管有没有fill = FieldFill.insert都会执行insertFill方法,使用setFieldValByName会把没有标注FieldFill的也重新赋值了。mybatis-plus3.3以后,使用strictInsertFill强制过滤标注FieldFill的属性。
2024-03-20 10:48:58
299
原创 springboot同时使用redis的0和1数据库,1号数据库用于保存session,添加过期监听
【代码】springboot同时使用redis的0和1数据库,1号数据库用于保存session,添加过期监听。
2024-03-15 11:42:51
407
原创 springboot2.7使用redis的redission组件实现分布式锁
是我另外加的,用于判断是否启用redission,这里redission使用第二个数据库。redissionClient的使用方。redission配置,
2024-03-15 11:22:07
433
原创 springboot+thymeleaf 封装自定义解析json字符串标签方法
一共四个方法,用于转换json或json数组,或者直接从json或json数组中取值。二、接下来是表达式配置工厂类,以后添加别的方法也可以用,不用再写一个。三、将表达式工厂添加到springboot配置四、在页面中使用自定义的方法
2023-11-16 19:58:08
1257
原创 关于使用jQuery.i18n.properties时的一个value.length的错误
jQuery.i18n.properties 配置文件中key不能是message。可能message是配置文件的关键字,那么可能不能使用配置文件文件名作为key。
2023-11-15 11:05:08
203
原创 时区的规则发生变化时,如何同步时区
l, --location url-link-to-archive-file 从提供的tzdata.tar.gz包中编译、测试和更新 JRE 时区数据,例如-l https://www.iana.org/time-zones/repository/tzdata-latest.tar.gz. 支持的 URL 协议:http://、https://、file://。1、在安装的 JDK/JRE 软件上运行 TZUpdater 工具之前,您必须停止操作系统上的 JDK/JRE 软件的任何正在运行的服务。
2023-07-27 14:48:04
192
原创 android获取wifi名称
1、没有使用FLAG_INCLUDE_LOCATION_INFO会获取不到名称,一定要加上,如上面代码ConnectivityManager.NetworkCallback(FLAG_INCLUDE_LOCATION_INFO)。2、如果在修改wifi时,app退到后台,此时监听会生效,但是名称是<unknown ssid>,所以在需要app退到后台这种情况下,可以在返回app后再注册监听,这里返回当前wifi信息名称就对了。直接上代码再说明一下,有时一直获取<unknown ssid>的问题,
2023-07-14 14:59:58
1703
4
原创 android打开混淆时retrofit无法获取到接口数据
使用retrofit请求数据时,你一般会定义一个实体类接收api返回的数据,些问题出现minifyEnabled设置为true时,返回的实体类中的属性都为空,应该是gson无法将接收到的json数据对应的属性转成实体类中的属性。那么要研究一下proguard-rules.pro,网上有很多写法,都没有用。然后网上有说是要给实体类加上实现Serializable, 也没有用。最后我发现加上在实体类的属性前加上。
2023-06-24 13:56:13
619
原创 canvas.scale放大后,再使用canvas.translate移动时方向就相反了
在此示例中,该方法将画布的大小加倍,因此矩形的大小将是不缩放时的两倍。但是,该方法基于其原始坐标系(而不是缩放的坐标系)移动画布。因此,当我们向右平移 50 像素和向下平移 50 像素时,它似乎在每个方向上移动了 100 像素,因为坐标系已缩放了 2 倍。当您 用于放大画布,然后用于移动画布时,方向可能看起来是相反的。这是因为该方法根据其当前坐标系移动画布,该坐标系已由该方法缩放。若要解决此问题,可以颠倒 和 方法的顺序。
2023-06-05 22:42:06
430
原创 Android - Fragment 内嵌 ViewPager ,ViewPager各个页面使用Fragment第二次进入空白界
直接说解决办法,在activity中创建adapter时fragment管理参数用supportFragmentManager,而在fragment中创建adpater时参数用childFragmentManager分开管理,就可以了。错误原因:我在fragmetn中创建adpater用了activity.supportFragmentManager,自作聪明了。
2023-05-30 17:57:27
186
原创 com.google.android.material.tabs.TabLayout为每个tab平均分配宽度
【代码】com.google.android.material.tabs.TabLayout为每个tab平均分配宽度。
2023-05-16 17:04:24
722
原创 Mybatis-flex配置全局参数
第一次使用springboot整合mybatis-flex,想配置一下常规配置比如不打印banner,修改数据库的方言(默认是mysql),开启或关闭二级缓存(默认开启),不打印sql日志等等,然后在application.yaml中配置都不起作用,最后看了一下源码 ,可以在使用@Configuration配置,现在记录一下:
2023-05-12 14:19:41
2550
原创 springboot2.7整合redis idea报错Could not autowire. No beans of ‘***ConnectionFactory‘ type found.
能正常运行,就是不好看,我也不想降低springboot的版本,可以在方法上加上@SuppressWarnings("all"),不让idea报红色错误。下面分享一下redis配置类、redis工具类、和mybatis配置redis二级缓存的代码。五、当然还需要在配置中开启mybatis的二级缓存功能。一、LettuceRedisConfig类。三、MybatisRedisCache类。四、在mapper接口中使用cache。二、RedisUtil类。
2023-05-12 13:46:56
2049
原创 NoPadding填充方式不会对明文块进行填充,就会出现“Input length not multiple of 8 bytes“
DES/ECB/PKCS5Padding和DES/ECB/NoPadding的区别。DES是一种对称加密算法,它可以使用不同的模式和填充方式进行加密。在Java Cipher API中,提供了四种DES加密模式:ECB、CBC、CFB和OFB。其中,ECB模式是最简单的一种模式,它将明文分成若干个固定大小的块,然后对每个块进行加密。ECB模式的缺点是容易受到重放攻击,因为同样的明文块会得到相同的密文块。为了解决ECB模式的缺点,可以使用CBC模式。在CBC模式中,每个明文块都需要与前一个密文块进行异或操作,
2023-05-06 16:48:36
759
原创 Picasso.get()异步加载图片。省去了自己手动开线程
implementation 'com.squareup.picasso:picasso:2.71828' //异步加载图片。省去了自己手动开线程。
2023-04-27 17:00:35
94
原创 java.time.zone.ZoneRulesException: Unknown time-zone ID: Europe/Kyiv
l, --location url-link-to-archive-file 从提供的tzdata.tar.gz包中编译、测试和更新 JRE 时区数据,例如-l https://www.iana.org/time-zones/repository/tzdata-latest.tar.gz. 支持的 URL 协议:http://、https://、file://。在安装的 JDK/JRE 软件上运行 TZUpdater 工具之前,您必须停止操作系统上的 JDK/JRE 软件的任何正在运行的服务。
2023-04-26 12:46:37
1031
原创 记一次amd平台win10/win11随机死机蓝屏重启的问题
还没结束,先网上找了一下,aida64内存测试就重启的问题,基本都amd平台的电脑有这个问题,看到一个朋友说,没办法可以给内存加个压或者降个频率,不知道是什么道理, 一个个试试吧。网上主要说是芯片组驱动的问题,官网上找最新的安装上,也升级过主板bios,都没有用,问题一直会发生,但是win11的确好一些,也有说是固态硬盘的原因,也有说是主板或者cpu坏了。我内存是频率3200的,主板默认频率是自动选择auto,进入bios改成2666,重启,再用aida64测试没问题了,完美,加压就不试了。
2023-04-22 13:02:21
5168
原创 使用 synchronized(this) 和 synchronized(Demo.class)
时,锁定的是类的 Class 对象,即只有一个线程可以访问该类的同步代码块或方法,不管有多少个实例。这意味着无论有多少个对象实例,它们都共享同一个 Class 对象,只有一个线程可以访问该类的同步代码块或方法。时,锁定的是当前对象实例,即只有一个线程可以访问该对象实例的同步代码块或方法。这意味着如果有多个对象实例,每个对象实例都有自己的同步代码块或方法,可以同时被一个线程访问。的区别在于它们锁定的对象不同,分别是当前对象实例和类的 Class 对象。的区别在于它们锁定的对象不同。
2023-04-19 15:46:46
109
原创 synchronized (成员变量) 和 synchronized (静态成员变量)
在 Java 中,每个对象都有一个“内置锁”或“对象锁”,也称为“monitor 对象”,它可以用来同步代码块或方法。,则锁定的是类的 Class 对象,即只有一个线程可以访问该类的同步代码块或方法,不管有多少个实例。,则锁定的是当前对象实例,即只有一个线程可以访问该对象实例的同步代码块或方法。可以用于不同的同步目的,锁定不同的对象,从而控制多个线程对共享资源的访问。是用于不同目的的,锁定不同的对象。锁定的是类的 Class 对象。锁定的是当前对象实例,而。在同步方面有不同的效果。
2023-04-19 15:44:47
1243
原创 springboot使用dynamic-datasource和druid配置多数据库连接及druid监控
【代码】springboot使用dynamic-datasource和druid配置多数据库连接及druid监控。
2023-04-12 10:48:37
3130
原创 linux命令sd卡分区及格式化sd卡
写一个命令如果sd卡已分区,就格式化sd卡,如果没有分区先分区再格式化,最后重启系统。取非,可以在方括号前面加上一个感叹号。echo -e处理特殊字符。分区命令 fdisk。
2023-04-10 16:23:00
1040
原创 使用sh脚本备份springboot项目后重启新项目
先备份项目名为-org的jar包,然后检查是否有-new的jar是否需要替换重启,最后停止项目,重启项目,直接上脚本代码,谢谢
2023-04-09 21:29:52
63
原创 crontab配合sh脚本实现springboot项目自动备份后替换jar包最后重启项目
data是放置sh脚本的目录,这句话的意思是在每天0点01分执行sh脚本,把执行的日志写到.log文件中。
2023-04-09 21:26:02
260
spring+mybatis generator生成代码eclipse插件
2017-03-17
springmvc+mybatis核心类包括登录校验验证码统一异常处理多种接口与父类
2017-03-17
字符串文件http密码资源文件openoffice图片等工具等
2017-03-17
spring+springmvc+mybatis项目案例实现用户角色权限管理
2017-03-17
bootstrap-fileinput-master解决数组无法用data-赋值问题
2016-01-28
springmvc项目代码生成eclipse插件
2016-01-27
mysql,oracle,sqlserver三大数据库备份与还原
2016-01-14
局域网聊天程序
2013-07-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人