5 东耳佳茗
尚未进行身份认证
东耳佳茗,一个有故事的程序员!
1、jboss启动,web.xml加载spring配置文件需要绝对名称,不能:spring-*.xml,2、jboss和tomcat获取配置文件方式有所不同,读取properties配置文件jboss启动识别不了getClassLoader().getResource,要用getResourceAsStream;...
1、jboss控制台不打印详细日志,因为JBoss WildFly 8 自带了日志功能;解决办法:第一步:在standalone\configuration\standalone.xml 中找到如下配置信息<profile> <subsystem xmlns="urn:jboss:domain:logging:2.0"> ...
最近使用IDEA 导入GIT项目后 Event log 提示 "Unmapped Spring configuration files found.Please configure Spring facet or use 'Create Default Context' to add one including all unmapped file",pom文件也标红项目打包启动没有...
大家在工作中肯定遇到过计数统计需求,单线程的情况下count直接定义int型就行,可是在多线程并发下会产生多个线程同时count++的情况,那么这种情况就需要用到AtomicInteger来保证int型变量操作的原子性。AtomicInteger要点阐述AtomicInteger的实现是基于CAS(Compare And Swop)原理; AtomicInteger的语义是:对Atomi...
给定 nums = [2, 7, 11, 15], target = 9 因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]
员工午餐消费福利每日限制一次,后台有次数校验,自从刷脸消费上线后,刷普通IC卡读卡器和刷脸设备靠在一起,员工刷卡的同时会出现刷脸的误刷,查后台日志发现两笔交易相差几十毫秒,第二笔检查前前一笔还没有入库成功,所以绕过控制,造成误刷,想过加锁机制,但是两笔不是并发,锁不住,队列的话太麻烦,而且中午高峰期消费,要求一两秒一笔,怕影响效率,后来发现刷卡和刷脸次数校验可以分开来控制,刷卡检查消费成功次数,刷...
不少朋友每天都阅读技术文章,但是第二天就忘干净了。工作中领导和同事都认可你的沟通和技术能力,但是跳槽面试却屡屡碰壁。面试官问技术方案,明明心里清楚,用嘴说出来却前言不搭后语。面试官再问底层算法,你说看过但是忘记了。他不在乎你看没看过,答不上就是零分。正如男女相亲,男方谈吐潇洒才能吸引姑娘。可是男方紧张了,平时挺能说,关键时候却支支吾吾,姑娘必然认为他不行。人生充满了许多考试,有形的和无形的,每次考...
今天是1024节,写篇博客纪念下(其实就是想点亮1024勋章,哈哈哈),想到前段时间做flink的数据采集遇到的json转换数值精度问题导致消费端数据转换异常逻辑很简单,就是要将一段json格式的报文转成map,随手用了Gson来转换:Map map=gson.fromJson(mapJson,Map.class);报文中的value值是整型(比如1024),但是转换完就变成...
首先,在Spring中使用Redis需要jedis.jar和spring-data-redis.jarSpring整合Redis有两种方式,一种为注解,另一种为xml配置文件,根据你的Spring IoC配置形式进行选择,下面来分别进行讲解:如果你的IoC容器是以xml文件形式配置的,则在你的IoC配置文件中加入如下代码:<!-- 配置连接池 --> &...
概述 spark作为一个分布式的集群计算框架,其核心为RDD(resilient distribution dataset),即弹性分布式数据集。 整个spark的编程也都是围绕着RDD进行的,大部分情况下的步骤都是:创建RDD -->转换RDD–>操作RDD(action),下面这个单词计数的demo也是按照这个顺序来的。废话不多说,直接上代码:package or...
实际开发过程中有多个环境,每次上不同环境更改配置的话不仅麻烦,而且容易出错,maven项目可以在pom文件中配置实现不同环境不同打包配置<profiles> <profile> <id>test</id> <properties> <deploy.type>test<...
WildFly中默认启动后访问http://localhost:8080/会进入到默认的欢迎Web应用欢迎页面,但在实际中我们需要当访问http://localhost:8080/时进入到自己的应用页面配置自己的Web应用使用根路径(/),编辑jboss-web.xml文件(位于WEB-INF目录下),配置<context-root>属性指向/如下:<jbo...
client:public void start() { try { System.out.println("开始时间:"+DateUtil.getCurTimeAllData()); //---------------------------------------- E...
CountDownLatch是一个非常实用的多线程控制工具类。常用的就下面几个方法:CountDownLatch(int count) //实例化一个倒计数器,count指定计数个数countDown() // 计数减一await() //等待,当计数减到0时,所有线程并行执行模拟10个并发:public class CountDownLatchDemo implements ...
Semaphore 是一个计数信号量,必须由获取它的线程释放。常用于限制可以访问某些资源的线程数量,例如通过 Semaphore 限流。public class SemaphoreDemo { public static void main(String[] args) { ExecutorService exec = Executors.newCachedThr...
限流工具类RateLimiter google开源工具包guava提供了限流工具类RateLimiter,该类基于“令牌桶算法”,非常方便使用。该类的接口具体的使用请参考:RateLimiter使用实践。RateLimiter 使用Demoimport com.google.common.util.concurrent.RateLimiter;public class Rate...
废话不多说,先上代码:public class KafkaClientWrapper { private Producer<String, String> producer = getProducer(); private static final Random rand =new Random(); private Producer<String...
领导要动态实时调整任务的线程数,这真的是个什么烂需求,线程数不是应该根据cpu资源来评估调的最优值吗,但是领导既然说了,硬着头皮也得弄啊,还是具体研究一下,不能做也得给出个理由啊...按照JDK文档的描述,如果池中的实际线程数小于corePoolSize,无论是否其中有空闲的线程,都会给新的任务产生新的线程 如果池中的线程数>corePoolSizeand<maximum...
最近微服务比较火,小明我也学习下Spring Boot框架的使用。首先创建一个项目,创建时选择Spring Initializr,然后Next,如下图:填写项目信息,如下图:下一步:点击finish完成OK,项目创建成功之后接下来我们来看看这个东西要怎么样去运行。首先我们看到在项目创建成功之后,在项目的根目录下会有一个artifactId+Application命名...
第一次用mybatis就踩到一个坑,不是mybatis的坑,而是以前遇到过的低级错误...我的数据库为mysql,程序在Mybatis中执行SQL查询返回的对象为空,但是生成SQL放在数据库中查询是有数据的,并且SQL是正确的!想不通,debug也是返回为空,把日志中的sql、参数拿到数据库执行有数据,纠结了好久...回去好好睡了一觉,早上到公司,继续测试根据id查一条数据,输参数的时...