正则表达式零宽断言详解(?=,?<=,?!,?

https://www.cnblogs.com/macq/p/6597366.html

 

在使用正则表达式时,有时我们需要捕获的内容前后必须是特定内容,但又不捕获这些特定内容的时候,零宽断言就起到作用了

正则表达式零宽断言:

零宽断言是正则表达式中的难点,所以重点从匹配原理方面进行分析。零宽断言还有其他的名称,例如”环视”或者”预搜索”等等,不过这些都不是我们关注的重点。

我很强,我想直接看例子上手用

一.基本概念:

零宽断言正如它的名字一样,是一种零宽度的匹配,它匹配到的内容不会保存到匹配结果中去,最终匹配结果只是一个位置而已。

作用是给指[……]

继续阅读

请问这个「 (?<=<(\w+)>).*(?=<\/\1>) 」正则表达式是什么意思呢?

https://www.cnblogs.com/oxspirt/p/8041717.html

 

(?<=<(\w+)>).*(?=<\/\1>)
—————————————————-

正则表达式看懂的最好方法就是一步步分开解析:

1)以 ‘.*’ 为分界,前面括号中的内容可以划分为 ‘?<=’ 和 ‘<(\w+)>’,其中‘<(\w+)>[……]

继续阅读

【RabbitMQ】三种Exchange模式——订阅、路由、通配符模式

https://blog.csdn.net/ww130929/article/details/72842234

https://blog.csdn.net/ww130929/article/details/72835517

https://blog.csdn.net/ww130929/article/details/72818303

https://blog.csdn.net/u013046597/article/details/72817959

 

标准的AMQP Exchange有4种: Direct, Topic, Headers, Fanout,[……]

继续阅读

java中等待所有线程都执行结束(转)

https://www.cnblogs.com/zl1991/p/6930160.html

 

转自:http://blog.csdn.net/liweisnake/article/details/12966761 

 

今天看到一篇文章,是关于java中如何等待所有线程都执行结束,文章总结得很好,原文如下http://software.intel.com/zh-cn/blogs/2013/10/15/java-countdownlatchcyclicbarrier/?utm_campaign=CSDN&utm_source=intel.[……]

继续阅读

Spring的@Transactional事务无法处理thread线程的解决方案

http://www.cnblogs.com/lay2017/p/7273382.html

 

问题描述:

在Spring的web项目中,查询了多行数据,对这些数据遍历处理,并对每一条数据采取线程的方式去执行,方式如下:

复制代码
 1 new Thread(new Runnable() {
 2   @Override
 3   public void run() {
 4      try {
 5         processEachPlan(learn); // 处理逐条数据
 6      } catch (Exception e) {
 7[......]

继续阅读

Java子线程中的异常处理(通用)

https://www.cnblogs.com/yangfanexp/p/7594557.html

 

在普通的单线程程序中,捕获异常只需要通过try … catch … finally …代码块就可以了。那么,在并发情况下,比如在父线程中启动了子线程,如何正确捕获子线程中的异常,从而进行相应的处理呢?

常见错误

也许有人会觉得,很简单嘛,直接在父线程启动子线程的地方try … catch一把就可以了,其实这是不对的。

原因分析

让我们回忆一下Runnable接口的run方法的完整签名,因为没有标识throws语句,所以方法是不会抛出checked[……]

继续阅读

ThreadPoolExecutor使用详解

https://www.cnblogs.com/zedosu/p/6665306.html

 

ThreadPoolExecutor机制 

一、概述
1、ThreadPoolExecutor作为java.util.concurrent包对外提供基础实现,以内部线程池的形式对外提供管理任务执行,线程调度,线程池管理等等服务;
2、Executors方法提供的线程服务,都是通过参数设置来实现不同的线程池机制。
3、先来了解其线程池管理的机制,有助于正确使用,避免错误使用导致严重故障。同时可以根据自己的需求实现自己的线程池
二、核心构造方法讲解
下面是ThreadP[……]

继续阅读

Java Executor并发框架(一)整体介绍

https://www.cnblogs.com/vhua/p/5277694.html

 

一、概述

Java是天生就支持并发的语言,支持并发意味着多线程,线程的频繁创建在高并发及大数据量是非常消耗资源的,因为java提供了线程池。在jdk1.5以前的版本中,线程池的使用是及其简陋的,但是在JDK1.5后,有了很大的改善。JDK1.5之后加入了java.util.concurrent包,java.util.concurrent包的加入给予开发人员开发并发程序以及解决并发问题很大的帮助。这篇文章主要介绍下并发包下的Executor接口,Executor接口虽然作为一个非常旧的[……]

继续阅读

SSM整合出现not found for dependency: expected at least 1 bean which qualifies as autowire错误

https://blog.csdn.net/grit_icpc/article/details/58141424

 

经过上网查资料发现出现这类错误的几个主要因素:

1.扫描包中没有扫描到所需要的类(或者没有扫描包)

2.serviceImpl类中出现死循环

3.没有在对应的类上加注解

4.service和serviceImpl没有放在同一个包下,导致spring扫描的时候没有扫描Impl包

MyBatis传入多个参数的问题

https://www.cnblogs.com/mingyue1818/p/3714162.html

 

一、单个参数:

public List<XXBean> getXXBeanList(String xxCode);  

<select id="getXXXBeanList" parameterType="java.lang.String" resultType="XXBean">

  select t.* from tableName t where t.id= #{id}  

</select>[......]

继续阅读