- 博客(149)
- 资源 (6)
- 问答 (2)
- 收藏
- 关注
原创 linux中 nginx+tomcat 部署方式 tomcat挂掉设置自动启动
linux设置tomcat挂掉后自动启动,解决执行脚本报syntax error: unexpected end of file或syntax error near unexpected token `fi'错误的问题
2024-06-28 18:01:44
620
原创 调用第三方接口过长导致数据库连接超时( Communications link failure during rollback(). Transaction resolution unknown.)
业务逻辑是:推送按钮-处理推送逻辑-往第三方系统推送文件(大文件几十分钟)-推送完成-记录推送状态-操作完成。最后把推送方法脱离事务范围之外就可以了,至此长时间推送后业务持久化操作正常了。脱离事务的方式有很多中,要看什么框架以及框架版本和配置的优先级等等。原因是事务导致的,所以这个推送方法还得脱离事务。-- 只对业务逻辑层实施事务 -->2、把包名命名在配置事务处理范围外。
2024-02-29 09:55:34
1085
1
原创 hutool HttpRequest.post 请求包含大文件报错Java heap space
setChunkedStreamingMode(0) 就是表示使用PosterOutputStream输出流,会把文件全部缓存到内存后发送,需要设置对应分块大小,例如setChunkedStreamingMode(4096)才会使用StreamingOutputStream输出流。具体异常如下,可以定位到是execute执行请求时抛出的,有一点需要注意,try catch (Throwable e)才能打印出改异常,用Exception还打印不出来。hutool版本: hutool-all-5.7.20。
2024-01-10 16:14:04
2634
原创 IndexOutOfBoundsException: Index: 2048, Size: 2048] Controller接收对象集合长度超过2048错误
Spring接受前台的数据超过2048出现如下异常:前台的Form 元素绑定到 后台的JaveBean对象,做的一个映射,但是这个映射的List长度不可以超过2048。溯源了下Spring的代码,找到了DataBinder,先解释下DataBinder类的作用,见链接。可以在controller 规定 长度即可;
2024-01-08 10:20:29
677
原创 使用pt-query-digest分析慢查询日志
pt-query-digest 属于 Percona Toolkit 工具集中较为常用的工具,用于分析 slow log,可以分析 MySQL 数据库的 binary log 、 general log 日志,同时也可以使用 show processlist 或从 tcpdump 抓取的 MySQL 协议数据来进行分析。
2023-12-29 09:31:39
1254
原创 mybatis升级后导致alias表名设置设备诊断
mybatis从1.3.2 升级 2.0.7到后部分系统解析 alias出错了,具体错误如下:下面从TypeAliasRegistry.registerAlias 开始逐步分析两个版本差异和抛出问题原因。
2023-12-27 10:59:14
1212
原创 NFS原理详解
它的主要功能是通过网络让不同的机器系统之间可以彼此共享文件和目录。NFS服务器可以允许NFS客户端将远端NFS服务器端的共享目录挂载到本地的NFS客户端中。在本地的NFS客户端的机器看来,NFS服务器端共享的目录就好像自己的磁盘分区和目录一样。一般客户端挂载到本地目录的名字可以随便,但为方便管理,我们要和服务器端一样比较好。NFS一般用来存储共享视频,图片等静态数据。《什么是NFS》就是通过网络共享目录,让网络上的其他服务器能够挂载访问共享目录内的数据。(一般共享视频,图片等静态数据)
2023-12-19 09:36:55
1025
原创 NFS|在linux环境下的安装和配置NFS
NFS全称网络文件系统,可用于不同服务器之间的文件共享。接下来介绍下NFS在linux环境下安装和配置。主要分为服务端和客户端。
2023-12-15 16:38:49
1157
原创 Date/Timestamp类型前端传空请求400
Timestamp类型字段前端传参空的 就请求400。这边采用第三种解决的,在提交前去掉就行。3、前端请求前判断如果是空的就去掉。1、直接页面干掉这几个字段不传。2、后端修改类型为String。
2023-12-15 16:01:53
757
原创 mysql间隙锁,next-key lock,row锁加锁范围分析
mysql可重复读隔离级别的实现主要依赖mvcc(多版本并发控制)和间隙锁,行锁,多种锁的组合使用来解决可重复读和幻读的问题。mvcc:主要是给保存每行数据的多个版本,每个版本多了2个字段,一个为最后更新事务的id,一个是删除事务的id。在可重复读隔离级别下,每个事务都只能查询出小于等于自己事务id的版本记录。但这只针对于普通的,不加锁的select语句。对于update,delete语句如果想避免幻读,则需要间歇锁。
2023-12-13 13:59:52
694
原创 JAVA 可执行文件格式
按文件结构约定依赖jar包必须放在 WEB-INF/lib 下,任何运行时必须但部署到传统web容器时不必须的依赖放到 WEB-INF/lib-provided 目录下,而应用程序的 classes 必须放在 BOOT-INF/classes 目录下。springboot 加载 嵌套jars 核心入口 org.springframework.boot.loader.jar.JarFile。springboot 程序使用 Maven PLugin插件编译时,可以生成可执行的 jar 和 war 程序。
2023-12-04 16:31:46
1636
原创 java.lang.NoClassDefFoundError: Could not initialize class sun.awt.X11GraphicsEnvironment
使用Xshell远程连接启动tomcat导致图片不显示,报错Could not initialize class sun.awt.X11GraphicsEnvironment。取消勾选转发X11连接即可,如果还不行,重启下xshell或者换个终端工具重启tomcat。
2023-12-01 13:59:41
1299
原创 shiro权限设置
在spring配置文件spring-config-mvc.xml中配置开启shiro注解支持。注解要求当前的Subject被允许一个或多个权限,以便执行注解的方法。logical=Logical.OR 表示设置多个权限;1、在jsp页面中引入shiro标签库。技术:使用shiro标签进行权限控制。配置事务注解,强制使用cglib代理。技术:使用shiro注解权限控制。备注:项目已声明,无需再次配置。在controller配置注解。2、在页面中使用标签。
2023-11-29 11:10:21
1129
原创 mvn 编译时报错 java heap space
使用IDEA进行war打包时,编译类都正常,但是最后生成 war 包时很慢,有些时候还会报错: java head space。idea 工具的内存大小是控制idea 开发工具的。而mvn是外部进程,不同进程有不同jvm参数配置。
2023-11-29 11:07:09
1267
原创 IDEA:Command line is too long
Idea启动项目报错:Command line is too long. Shorten command line for className or also for JUnit defaultconfiguration.在该项目文件夹.idea/workspace.xml中找到。
2023-11-27 09:14:51
1028
原创 Mysql性能分析
MySQL 的Optimizer(优化元件)在优化SQL语句时,首先需要收集一些相关信息,其中就包括表的cardinality(可以翻译为“散列程度”),它表示某个索引对应的列包含多少个不同的值——如果cardinality大大少于数据的实际散列程度,那么索引就基本失效了。innodb实现了行数,InnoDB行锁实现是通过索引上的索引项加锁实现的,意味着:只有通过索引条件检索数据,InnoDB才会使用行锁,否则使用表锁。如果表经常更新,就应当定期运行Optimize Table语句,保证效率。
2023-11-24 08:55:39
1401
原创 使用pt-query-digest分析慢查询日志
pt-query-digest 属于 Percona Toolkit 工具集中较为常用的工具,用于分析 slow log,可以分析 MySQL 数据库的 binary log 、 general log 日志,同时也可以使用 show processlist 或从 tcpdump 抓取的 MySQL 协议数据来进行分析。
2023-11-23 16:28:38
548
原创 卸载本机已安装的node.js(v.16.13.0版本)
因为要用多版本的node,准备安装一个nvm管理,所以需要先卸载掉原来安装的v.16.13.0版本。
2023-08-03 10:00:38
2588
原创 如何正确使用npm常用命令
D) : 安装的包只用于开发环境,不用于生产环境,会出现在 package.json 文件中的 devDependenceies 属性中。-S) : 安装的包需要发布到生产环境的,会出现在 package.json 文件中的 dependenceies 属性中。13. npm info(npm view) 指定包名 : 查看远程npm上指定包的所有版本信息。18. npm ls包名 -g : 查看全局安装的指定包及版本信息,没有显示empty。8. npm --help : 查看npm帮助命令。
2023-07-27 11:13:21
2525
原创 SSM框架使用多数据源(druid连接池)
最近有个数据归集的需求用到了多数据源,在业务库保存后同时向归集库插入或数据。之前好像还没做过这块的东西,简单记录下防止下次又忘记了~
2022-11-22 17:40:11
2036
2
原创 Java发送QQ邮件问题Could not connect to SMTP host: smtp.qq.com, port: 465(内附完整代码)
Could not connect to SMTP host: smtp.qq.com, port: 587;
2022-08-26 16:39:43
15949
9
原创 Springboot+vue从零开始做网站13-前后端项目部署到服务器
上篇在服务器中安装好了nginx,也把服务器远优于一个系统改成nginx配置了,接下来就是配置ltblog啦。
2022-06-01 15:37:19
481
原创 Springboot+vue从零开始做网站10-后台管理系统开发
后台主要是发文章的功能了,各个模块加在一块代码还挺多就不上代码了,需要代码我可以在发下,简单说下哪些模块吧。
2022-05-29 22:50:04
254
海康威视HCUsbSDK
2020-11-20
JS渲染问题,多次ajax怎么即时渲染
2020-11-16
JS循环ajax,如何在每一次请求成功后及时渲染
2020-11-16
TA创建的收藏夹 TA关注的收藏夹
TA关注的人