- 博客(925)
- 资源 (33)
- 收藏
- 关注
原创 curl获取本机公网IP
背景: 经常需要查询到本机/本网络所在的 IP 地址。比如把本机的外网IP加到某个服务的白名单中。方案:除了在百度上输入IP搜索得到本机IP地址外, 也可以使用命令行快捷。访问能够返回 IP 地址的 网址。
2024-09-12 09:45:54 190
原创 EasyExcel导入合并单元格数据
在invok解析完所有数据以后,先将所有解析的数据存储在tempDataList中,此时合并单元格是没数据的。然后经过convertDataMapToData方法处理完合并单元格数据后,最后才得到完整的单元格数据。
2024-06-29 18:18:14 615
原创 在 IntelliJ IDEA 中远程调试 Java 程序
3. 在本地启动项目,其实调用的远程服务器上的服务。然后在前端页面上点击,后端代码打断点,然后可以看到本地代码暂停住了。2. 配置启动脚本5005监听。
2024-03-14 14:28:07 844
原创 Application/octet-stream,http服务器设置响应头让浏览器下载内容
application 表明是某种二进制数据 application/octet-stream, application/pkcs12, application/vnd.mspowerpoint, application/xhtml+xml, application/xml, application/pdf。audio 表明是某种音频文件 audio/midi, audio/mpeg, audio/webm, audio/ogg, audio/wav。
2023-12-08 17:02:34 3994
原创 阿里云企业邮箱基于Spring Boot快速实现发送邮件功能
邮件在项目中经常会被用到,比如用邮件发送通知。比如,通过邮件注册、认证、找回密码、系统报警通知、报表信息等。本篇文章带大家通过SpringBoot快速实现一个发送邮件的功能。
2023-10-26 10:56:54 1867
原创 springBoot ssl 证书报错 DerInputStream.getLength(): lengthTag=111 too big
ssl 证书报错 DerInputStream.getLength(): lengthTag=111 too big
2023-04-06 17:02:19 759 1
转载 Mysql 中 RC、RR隔离级别的原理及区别
总结∶在RC隔离级别下,是每个快照读都会生成并获取最新的Read View,而在RR隔离级别下,则是同一个事务中的第一个快照读才会创建Read View,之后的快照读获取的都是同一个Read View。2)、在RR级别下,快照读生成ReadView时,Read View会记录此时所有其他活跃事务的快照,这些事务的修改对于当前事务都不可见的, 而早于Read View创建的事务所做的修改均是可见。二、实验对比 RR、RC的区别:采用mysql 5.6之后的版本。另外,更新一条数据的操作也可以演示此效果!
2023-02-12 17:13:10 883
转载 Spring Boot 优雅配置多数据源
大约在19年的这个时候,老同事公司在做医疗系统,需要和HIS系统对接一些信息,比如患者、医护、医嘱、科室等信息。但是起初并不知道如何与HIS无缝对接,于是向我取经。最终经过讨论采用了视图对接的方式,大致就是HIS系统提供视图,他们进行对接。什么是多数据源?最常见的单一应用中最多涉及到一个数据库,即是一个数据源(Datasource)。那么顾名思义,多数据源就是在一个单一应用中涉及到了两个及以上的数据库了。其实在配置数据源的时候就已经很明确这个定义了,如以下代码:@Bean(name =
2022-05-18 15:08:22 778 1
转载 SpringBoot 启动时自动执行代码的几种方式
一 目录 前言 java自身的启动时加载方式 Spring启动时加载方式 代码测试 总结 二 前言目前开发的SpringBoot项目在启动的时候需要预加载一些资源。而如何实现启动过程中执行代码,或启动成功后执行,是有很多种方式可以选择,我们可以在static代码块中实现,也可以在构造方法里实现,也可以使用@PostConstruct注解实现。当然也可以去实现Spring的ApplicationRunner与CommandLineRun
2022-05-10 20:31:34 210
原创 Spring事务监听管理器TransactionSynchronizationManager的使用
1. Spring 提供了事务同步管理器让我们能监听Spring的事务操作,这个可以获取到当前是否存在事务。TransactionSynchronizationManager.isSynchronizationActive()2. 这是注册一个监听器,需要传入一个对象TransactionSynchronizationTransactionSynchronizationManager.registerSynchronization()他有两个方法,一个是事务提交后执行,一个是事务完成
2022-04-12 14:04:40 4879
原创 Linux日志命令汇总
/** 使用grep查找文件中的最后一次匹配项,显示最后5行内容 grep 'passport/getAccessToken' -A 1 out.log:从后(-A,After)获取out.log文件里的关键字日志里的一行 tail -n 5 :显示最后5条日志,感觉日志多的话,可以改成2条**/grep 'passport/getAccessToken' -A 1 out.log | tail -n 5 ...
2022-04-11 10:08:50 4369
原创 Docker打包发布
一. 什么是docker?docker 是一个开源的应用容器引擎,是一个用于开发,交付和运行应用程序的开放平台。1. 解决了环境配置问题2.docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上。3.容器是完全使用沙箱机制,相互之间不会有任何接口二. docker 的优点?1. 快速交付产品,快速部署应用. 就能够将现有的应用部署到其它机器上,从而实现一次打包,多次部署的目的。2. docker基于镜像可以秒级启动
2022-01-21 17:14:45 2381
原创 Sharding-JDBC实战(水平分表,读写分离)
Sharding-JDBC是一个轻量级 Java 框架,在 Java 的 JDBC 层提供的额外服务, 它使用客户端直连数据库,以 jar 包形式提供服务,无需额外部署和依赖,可理解为增强版的 JDBC 驱动,完全兼容 JDBC 和各种 ORM 框架 在使用Sharding-JDBC首先要清楚以下几点:它是一个轻量级的Java框架,可以理解是增强的JDBC驱动 Sharding-JDBC是不做分库分表的,库与表是由数据库工程师分好的,通过引入Sharding-JDBC.jar配置好配置,解决多数据源切换
2021-12-30 17:49:07 922
原创 ios ASTextNode中富文本多行中文显示问题解决
在使用ASTextNode计算view的高度时,利用富文本计算高度的方法计算多行中文显示时,会在底部多出一些空白区域的高度简单点说,1.中文字符串在利用NSAttributedString 的boundingRectWithSize:options:context来计算ASTextNode的高度时,实际高度比需要的高度高出一些区域 2.纯英文字符在利用
2021-11-25 09:43:48 335
原创 Mysql启动时报错 The server quit without updating PID file (/data/mysql/mysql.pid)
在执行mysql启动命令后,报错了,如下:sudo mysql.server startStarting MySQL. ERROR! The server quit without updating PID file (/data/mysql/mysql.pid).解决办法:删除 /data下的mysql文件,然后使用命令行初始化mysql,如下初始化数据库信息cd /usr/local/mysql/bin./mysqld --defaults-file=/etc/my.cn
2021-11-25 09:43:06 1649
原创 Navicat连接mysql - Authentication plugin ‘caching_sha2_password‘ cannot be loaded: dlopen
解决办法:1. 跳过秘密验证修改密码: vim /etc/my.cnf 中添加 skip-grant-tables修改密码:[root@centos-linux bin]# ./mysql -u root -pEnter password: Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 7Server version: 8.0.18 MySQL Communi.
2021-11-25 09:42:23 478
原创 Java应用cpu使用率过高问题排查(jstack实战模拟操作)
1. 上传我们需要实战模拟的Jar包到linux服务器scp /Users/sunww/Desktop/demo-0.0.1-SNAPSHOT.jar root@10.50.15.60:/httx/packjar2. 启动Jar包java -jar demo-0.0.1-SNAPSHOT.jar3. 发起请求curl http://localhost:8080/admin/test?a=1服务器在循环打印数据:4. 利用top命令查看通过上面可以...
2021-09-27 09:53:44 1452
原创 Linux下后台启动springboot项目
我们知道启动springboot的项目有三种方式:运行主方法启动 使用命令 mvn spring-boot:run”在命令行启动该应用 运行“mvn package”进行打包时,会打包成一个可以直接运行的 JAR 文件,使用“java -jar”命令就可以直接运行。我们在开发的时候,通常会使用前两种,而在部署的时候往往会使用第三种。但是,我们在使用java -jar来运行的时候,并非后台运行。下面我们来说说服务器上如何后台启动springboot项目。实际上,实现的方法有很多种,这里就列两种还
2021-09-18 17:15:02 1680
转载 mysql5.7之json格式与json_extract方法使用
数据初始化json_test表数据,id和jsonstr字段(类型json){ "no": "7", "title": "运动方式", "content": [{ "text": "您平时经常进行的运动及时间", "item1": [{ "text": "慢跑 / 快走 / 走跑结合", "type": "select", "value": "selected"
2021-09-18 17:07:45 833
原创 Mysql JSON_EXTRACT 获取JSON数据
1. mysql数据库中的ext存的是json字段,如下:CREATE TABLE `volume` ( `volumeId` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', `ext` json DEFAULT NULL COMMENT '扩展字段', PRIMARY KEY (`volumeId`)) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='量表'.
2021-09-17 11:15:40 4164
原创 idea中Mybatis自动生成pojo、mapper.xml、接口
一. 在idea中安装插件二. 在maven工程中的resource中创建generatorConfig.xml配置generatorConfig.xml的<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" ...
2021-08-24 18:52:53 859
原创 WebMagic 发起POST表单请求,同时传入Cookie来下载文件
发起post请求的2种方式:1. 直接给Spider传入request对象(包含下载地址),定义好请求方式post,参数通过formdata/json,header里传cookie public static void main(String[] args) throws IOException {string URL = https://bbbb.com/column_more_data_v2/column_more_data Map<String, Object&.
2021-08-19 18:32:00 927
原创 SpringBoot 存储JSON数据到Mysql对应的JSON字段
1. 引入Gson<dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> </dependency>2. 定义要存储的JSON字段@Datapublic class LJUserExt implements Serializable {
2021-08-17 17:07:49 4360
原创 利用SpringBoot的RestTemplate 发起Http请求(POST,请求参数JSON)
1. 先将RestTemplate以Bean的形式加载进来@Configurationpublic class SpringBeanConfig { @Bean public RestTemplate restTemplate(){ return new RestTemplate(); }}2. 发起一个 Http请求(POST,请求参数JSON)Map<String, Object> verifyParams = new HashMap<String, ..
2021-08-17 15:30:15 2378
原创 Netty 搭建Http服务端
1. 通过浏览器请求接口,http://localhost:8000/Netty的Http服务器返回 Netty Http Server2. 服务端打印的日志Netty的Http服务器源码如下:package server;import io.netty.buffer.Unpooled;import io.netty.channel.ChannelHandlerContext;import io.netty.channel.ChannelInboundHandlerAdapt
2021-04-13 17:49:00 289
原创 Spring提交数组时超过256个值报错解决办法
使用SpringMVC或者SpringBoot提交数组时,如果list大小超过256,就会报错。原因是DataBinder 中默认限制了list最大只能增长到256。private int autoGrowCollectionLimit = DEFAULT_AUTO_GROW_COLLECTION_LIMIT;解决方案:在需要的Action中添加InitBinder方法。@InitBinderpublic void initBinder(WebDataBinder binder)
2021-04-06 10:16:18 1485
原创 Springboot集成Sentinel实战
一. Sentinel介绍随着微服务的流行,服务和服务之间的稳定性变得越来越重要。Sentinel 以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。Sentinel 具有以下特征:丰富的应用场景:Sentinel 承接了阿里巴巴近 10 年的双十一大促流量的核心场景,例如秒杀(即突发流量控制在系统容量可以承受的范围)、消息削峰填谷、集群流量控制、实时熔断下游不可用应用等。 完备的实时监控:Sentinel 同时提供实时的监控功能。您可以在控制台中看到接入应用的单台
2021-03-11 14:12:56 1246
原创 Mysql for update 悲观锁实践
InnoDB行锁实现方式InnoDB行锁是通过给索引项加锁来实现的,如果没有索引,InnoDB将通过隐藏的聚簇索引来对记录枷锁。共享锁(S):允许一个事务去读取一行,阻止其他事务获取相同数据集的排他锁。 排他锁(X):允许获得排他锁的事务更新数据,组织其他事务获取相同数据集的共享锁和排他锁。for update是在数据库中上锁用的,可以为数据库中的行上一个排它锁。当一个事务的操作未完成时候,其他事务可以读取但是不能写入或更新。for update 仅适用于InnoDB,并且必须开启事务,
2021-02-22 16:13:44 200
原创 FastJSON解析JSON字符串数据
需要解析的JSON数据如下:解析代码: public static void main(String[] args) { String result = "{\"msg\":\"success\",\"code\":0,\"data\":[{\"invoice_code\":\"3700194130\",\"total_amount\":22090.39,\"total_amount_excluding_tax\":20266.41,\"total_tax_amount\".
2021-02-08 14:59:05 821
原创 Java接收数组,要求前端给他字符串(用“,“分割)?
一. 用Postman发起请求,传个数组给后端接口,如下:localhost:8080/web/order/selectOrderList?orderCodes=21010807414510001,21010807424120001,21010807430810001二. Spring来接收数组数据,如下:OrderQuery@DATApublic class OrderQuery extends BaseObject { private static final lon.
2021-02-07 14:59:48 816
原创 Ngnix负载均衡实战配置
一、Nginx优势1、作为Web服务器,Nginx处理静态文件、索引文件,自动索引的效率非常高2、作为代理服务器,Nginx可以实现无缓存的反向代理加速,提高网站运行速度3、作为负载均衡服务器,Nginx既可以在内部直接支持Rails和PHP,也可以支持HTTP代理服务器对外进行服务,同时还支持简单的容错和利用算法进行负载均衡4、在性能方面,Nginx是专门为性能优化而开发的,实现上非常注重效率。它采用内核Poll模型,可以支持更多的并发连接,最大可以支持对5万个并发连接数的响应,而且只占用
2021-02-03 09:26:22 204
IOS stream模拟http请求获取数据
2016-09-16
ios ESTMusicPlayer音乐播放器源码
2016-05-16
swift demo 包含登陆登出 四个底部TabBar按钮
2016-05-09
Swift UITableView and protocol 学习使用
2016-02-22
IOS tableView(一张图片标题详细说明)
2015-01-11
IOS 自定义导航栏 和表格 学习笔记
2015-01-11
IOS delegate button版本
2014-12-12
IOS 消息远程推送 PushMeBaby demo 测试通过
2014-10-31
IOS delegate 的简单demo
2014-09-29
IOS Tableview远程加载数据并显示
2014-09-14
C51 单片机 利用printf函数输出字符串
2014-08-19
MQTT 开发手册大全
2014-04-29
MQTT——移动消息传递和 M2M 客户机开发API包
2014-04-19
MQTT android 端程序包---已经成功在手机上验证
2014-03-14
com.ibm.micro.client.mqttv3.jar
2014-03-14
C51单片机 测试通过定时器0 向串口1s钟发送一次数据
2014-02-18
STM32上实现的IAP功能 下载可以直接测试使用
2013-11-16
IAP——STM32官网USART例程——编译直接可以运行
2013-11-05
STM32上移植的UCOS 跑了两个TASK
2013-09-24
GPRS 短信 收发程序 远程控制 详细的注释
2013-09-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人