- 博客(24)
- 资源 (1)
- 收藏
- 关注
原创 批量处理脚本
for project in apply asset account media sys workflow warning report batch cust limit param ledger doc rules request corePc spyPc spyMp notification rulefront common tax apidoc transaction paymentdo git clone "http://xxx/cbc-$project.git"done项目路径:...
2022-03-30 13:57:28 192
原创 避免死锁?
如何排查?MYSQL出现死锁,首先查询information_schema.innodb_trx表,查看哪些mysql查询线程ID导致的,SELECT * FROM information_schema.innodb_trxSELECT * FROM information_schema.innodb_trx 命令是用来查看当前运行的所以事务:说明:FORMATION_SCHEMA提供对数据库元数据的访问、关于MySQL服务器的信息,如数据库或表的名称、列的数据类型或访问权限。
2022-03-20 17:23:11 785
原创 Mysql虚拟列
可以看到这个优化的效果还是很不错的,但是这个优化还是没有绕开最左前缀原则的限制,因此在联合索引你还是要扫描8000万行,那有没有更进一步的优化方法呢?我们可以考虑把名字的第一个字和age来做一个联合索引。这里可以使用MySQL5.7引入的虚拟列来实现。对应的修改表结构的SQL语句:altertablet_peopleaddname_firstvarchar(2)generated(left(name,1)),addindex(name_first,age);我们来看这个SQL...
2022-03-16 17:33:37 3355 1
原创 ServletContext、ApplicationContext、WebApplicationContext三者区别
ServletContext:Servlet容器(Tomcat、Jboss等)需要给项目初始化一个ServletContext作为公共环境容器存放公共信息,而ServletContext中的信息都是由容器提供的。WebApplicationContext:是继承于ApplicationContext的一个接口。扩展了ApplicationContext,是专门为Web应用准备的,它允许从相对于Web根目录的路径中装载配置文件完成初始化。 ApplicationContext:是 Spring ...
2022-02-10 16:54:17 1014
原创 扫描包下类
package com.sz.common.service.sys.web.utils;import com.sz.common.service.sys.service.api.model.sys.dict.SysDict;import com.sz.common.service.sys.service.api.model.sys.dict.SysDictVO;import com.sz.framework.base.enums.annotations.EnumDesc;import java.i
2021-08-09 16:49:00 123
转载 工作流任意节点跳转
根据提供参数获取流程实例:import org.activiti.engine.ProcessEngine;import org.activiti.engine.history.HistoricProcessInstance;import org.activiti.engine.impl.RuntimeServiceImpl;import org.activiti.engine.impl.interceptor.CommandExecutor;import org.activiti.engin
2021-07-05 15:29:21 604
原创 zip加解密
1、添加依赖:<dependency> <groupId>net.lingala.zip4j</groupId> <artifactId>zip4j</artifactId> <version>1.3.2</version></dependency>2、加密工具包:public class DesTool { private static final String
2021-05-24 17:50:50 395
原创 Dubbo配置文件解析
dubbo读取application.properties配置1、OverrideDubboConfigApplicationListener监听ApplicationEnvironmentPreparedEvent事件 //读取dubbo配置,放入缓存 SortedMap<String, Object> dubboProperties = DubboUtils.filterDubboProperties(environment); ConfigUtils.getPro...
2021-05-24 11:44:03 726 1
原创 common-service的SpringContextUtil的getBean方法报NullPointerException
在其他服务里无法,无法使用该工具类,而且报NullPointerException;原因为:SpringBoot默认包扫描机制: 从启动类所在包开始,扫描当前包及其子级包下的所有文件,也就是@ComponentScan未扫描到common-service所在jar包SpringContextUtil工具类,也就是该Bean为实例化,未给context赋值,导致getBean方法使用报错。解决办法:调整springBoot扫描范围,即可@SpringBootApplication(scanB..
2020-12-09 14:49:28 2115
原创 java对接动态库接口
1、动态库部署,window,linux两个系统的动态库是不一样的,动态库调用要区分系统。window为.dll,linux为.so2、动态库的加载一般使用,一下为linux版: static { log.info("java.library.path:{}",System.getProperty("java.library.path")); System.loadLibrary("mrapi"); } 加载的为java.library.path下的...
2020-11-06 17:24:22 689
原创 Java根据注解快速生成xml文件
1、新建注解,区别字段与xml字段/** * xml字段 */@Target({ElementType.TYPE,ElementType.FIELD})@Retention(RetentionPolicy.RUNTIME)@Documentedpublic @interface XmlField { String value() default "";}2、新建工具类import org.jdom2.Document;import org.jdom2.Element
2020-10-28 17:57:18 853 1
原创 线程池源码解读
1、创建线程池,线程池初始化状态new ThreadPoolExecutor(CORE_POOL_SIZE, MAXIMUM_POOL_SIZE, KEEP_ALIVE, TimeUnit.SECONDS, new LinkedBlockingQueue<>(32), new ThreadPoolExecutor.CallerRunsPolicy());线程池初始化状态:实际调用父类的构造方法,this(corePoolSize, m...
2020-10-27 16:50:31 250
原创 枚举在系统中流转
1、前段到后端的HttpMessageConvertercom.lls.scf.common.web.autoconfigure.CommonWebAutoConfiguration HttpMessageConverters initHttpMessageConverters() 枚举反序列化,JSON类型的反序列化方式 final ObjectMapper objectMapper = Jackson2ObjectMapperBuilder.json().serializati...
2020-10-23 14:30:40 313 1
原创 邮件发送:Could not connect to SMTP host: 10.0.76.11, port: 25
这个问题咋看可能是环境配置问题,实际也有可能是ssl协议不支持的问题:2020-10-21 15:32:16.094 [ERROR] [DubboServerHandler-10.244.2.30:17278-thread-11] - com.lls.scf.notification.service.utils.mail.MailSender-116 发送邮件失败liuxiaoxing@linklogis.comjavax.mail.MessagingException: Could not con
2020-10-21 16:01:05 3233
原创 Java邮件发送,ftl模板制作,带集合处理
把邮件发送内容模板,负责到word里面,变量命名如下,如果有集合,在下文会讲到:把word转html,使用筛选方式:生产的html默认编码格式为gb2312,调整html编码格式,并存为ftl文件格式:最后清除掉ftl文档里多余元素;集合元素的处理:<#assign n = 0 /><#list buyers as var><#assign n = n + 1 /><#if n = 1><p class=Mso
2020-10-14 19:17:30 605 1
原创 Mybatis启动调用过程
MybatisPlus启动调用过程:--加载applicationContext容器启动的过程中,加载environment,properties环境变量org.mybatis.spring.annotation.MapperScan Mapper组件扫描并注册1、org.mybatis.spring.annotation.MapperScannerRegistrar Mapper的注册2、org.mybatis.spring.mapper.MapperFactoryBean Mapper B.
2020-10-07 11:52:03 275
原创 Dubbo源码解析
Dubbo学习;1、@Servie、@Reference注解元数据收集org.apache.dubbo.metadata.annotation.processing.ServiceDefinitionMetadataAnnotationProcessor boolean process(Set<? extends TypeElement> annotations, RoundEnvironment roundEnv)->装换为:List<ServiceDefinition...
2020-10-07 11:43:06 466
原创 Spring MVC调用流程解析
DispatcherServlet拦截全部web请求void doService(HttpServletRequest request, HttpServletResponse response) throws Exception 调用里面的void doDispatch(HttpServletRequest request, HttpServletResponse response) throws Exception 校验文件上传:processedRequest = check...
2020-09-24 15:37:11 88
原创 redis事务和lua脚本异同,Redis分布式锁的缺点
redis事物和lua脚本:1.redis事务基本原理为乐观锁,多个client对操作的key进行watch,一旦有一个client进行了exec,那么其它client的exec就会失效。其实现原理可参考 Redis watch机制的分析。2.lua脚本基本原理为使脚本相当于一个redis命令,可以结合redis原有命令,自定义脚本逻辑。两者异同相同点:很好的实现了原子性、一致性、隔离性和持久性,无论是redis事务,还是lua脚本,如果执行期间出现运行错误,之前的执行过的命令是不会回滚的。
2020-09-23 15:45:41 1517
原创 Spring IOC容器依赖注入全过程分析
调用applicationContext.getBean()org.springframework.context.support.AbstractApplicationContext.getBean(); getBeanFactory().getBean(name)方法; org.springframework.beans.factory.support.AbstractBeanFactory.getBean(); doGetBean(name, null, null, ...
2020-09-23 15:08:01 153
转载 quartz定时任务cron表达式详解
原文:https://www.cnblogs.com/lazyInsects/p/8075487.htmlcron表达式用于配置cronTrigger的实例。cron表达式实际上是由七个子表达式组成。这些表达式之间用空格分隔。1.Seconds (秒)2.Minutes(分)3.Hours(小时)4.Day-of-Month (天)5.Month(月)6.Day-of-Week...
2018-09-11 17:37:15 150
转载 Java并发编程:CountDownLatch、CyclicBarrier和 Semaphore
转至:http://www.importnew.com/21889.html在java 1.5中,提供了一些非常有用的辅助类来帮助我们进行并发编程,比如CountDownLatch,CyclicBarrier和Semaphore,今天我们就来学习一下这三个辅助类的用法。以下是本文目录大纲:一.CountDownLatch用法二.CyclicBarrier用法三.Semaphor...
2018-08-20 15:46:06 130
原创 JS客户端RSA加密,Java服务端解密(含分段加解密)
java代码依赖<dependency><groupId>commons-codec</groupId><artifactId>commons-codec</artifactId><version>1.4</version><scope>...
2018-07-20 16:14:09 996 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人