logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

jquery计算两个日期天数差

计算方法如下:function DateDiff(sDate, eDate) { //sDate和eDate是yyyy-MM-dd格式  var date1 = new Date(sDate);  var date2 = new Date(eDate);  var date3=date2.getTime()-date1.getTime();  var days=Math.floor(date3/(

#javascript#html#jquery
基于本地事务表+MQ实现分布式事务

分布式事务解决方案有许多比如二阶段提交、TCC、最大努力通知、Saga事务等,本文介绍本地消息表+MQ这种方式解决分布式事务消息最总一致性问题。目前利用本地消息表+MQ方案实现最终消息一致性的比较多,它的核心思想是,将分布式事务拆分成本地事务进行处理,不同事务之间通过消息表和MQ通信,最后通过定时任务扫描失败的数据进行重试,当在有效重试次数限制内,再次重试回调失败的数据,最终实现消息重复发送,达到

文章图片
#分布式
Mybatis实现数据库交互的原理

Mybatis实现数据库交互的原理一、JDBC二、反射+jdk动态代理MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对

定时任务分批删除大表数据策略

随着时间的积累,数据量越来越大,其中最大的一个表数据量达到了22亿,因此需要对这些临时表进行定时清理,节省数据库存储空间和提升查询效率。分批执行的最大时间不超过默认配置时间2h,若在2h内还没有执行完成,则终止删除,等下次调度时间再重新发起执行删除操作。(1)新建相同表结构的数据表,新表补充creation_date的索引,利用同步工具同步最新15天的数据到新表。需要保留最近15天的数据且数据量太

文章图片
#java#数据库
基于SpringBoot+Redis实现RabbitMQ幂等性设计,解决MQ重复消费问题

配置死信交换机和死信队列,对于那些重复投递依然无法正确处理的消息,可以转移到死信队列,并设置相应的重试策略及最大重试次数,超过限制则记录日志、报警或手动介入处理。如果在执行消费的过程中,出错了(抛出Exception),则记录消费失败的状态,MQ会再次尝试去进行消费。这里是为了避免在消息开始消费后,RabbitMq宕机了,此时MQ并不知道这个消息最终有没有消费完成,因此重启MQ之后,MQ会重新消费

文章图片
#java-rabbitmq#spring boot#redis
Mybatis原理分析

MyBatis的工作原理以及核心流程详解MyBatis的基本工作原理就是:先封装SQL,接着调用JDBC操作数据库,最后把数据库返回的表结果封装成Java类。JDBC有四个核心对象:(1)DriverManager,用于注册数据库连接。(2)Connection,与数据库连接对象。(3)Statement/PrepareStatement,操作数据库SQL语句的对象。(4)ResultSet,结果

#mybatis#java
SpringBoot打包方式以及将war包部署到Tomcat服务器

SpringBoot打成war包一、修改pom.xml文件将默认的jar方式改为war二、排除内置的Tomcat容器(两种方式都可)1.排除spring-boot-starter-web中的Tomcat2.添加依赖三、继承SpringBootServletInitializer实现configure方法1.方式一,启动类继承SpringBootServletInitializer实现configu

#tomcat#spring boot#服务器
数据库的脏读、不可重复读、幻读以及四种隔离级别

一、数据库的脏读、不可重复读和幻读1、脏读: (读取了未提交的新事物,然后被回滚了)事务A读取了事务B中尚未提交的数据。如果事务B回滚,则A读取使用了错误的数据。比如我给你转了100万,但是我还没有提交,此时你查询自己账户,多了100万,很开心。然后我发现转错人了,回滚了事物。然后你100万就没了。在过程中你查到了没有提交事物的数据(多出的100万),这就是脏读。解决:如果一个事物在读的时候,禁止

#mysql#oracle
/etc/init.d/mysql: /usr/bin/my_print_defaults: /lib/ld-linux.so.2: bad ELF interpreter: 没有那个文件或目录

修复/lib/ld-linux.so.2: bad ELF interpreter: No such file or directory问题1、在64系统里执行32位程序如果出现/lib/ld-linux.so.2:bad ELF interpreter: No such file or directory,安装下glic即可sudo yum install glibc.

#linux
ServletContext 和 WebApplicationContext的理解

一、ServletContext介绍JavaEE标准规定:在项目启动时,Servlet容器(Tomcat、Jboss等)需要给项目初始化一个ServletContext作为公共环境容器存放公共信息,而ServletContext中的信息都是由容器提供的。启动Web容器,执行流程如下:1、启动WEB项目时,容器(如:Tomcat)会去读它的配置文件web.xml,读两个节点: 和 ;2、容器创建一个

#java
    共 29 条
  • 1
  • 2
  • 3
  • 请选择