Java
pigcoffee
精通C++、分布式应用,数据仓库、PostgreSQL相关工作。
展开
-
Gradle导入已有工程
1、Gradle安装右键“计算机”-“属性”,进入“高级配置”,选择“环境变量”,点击”新建“,配 置”GRADLE_HOME“,D:\Program Files\gradle-2.4继续在此处选择“path”,进行修改,加入";%GRADLE_HOME%\bin"在命令行窗口输入"gradle -v"进行验证2、Eclipse安装gradle插件3、编译g原创 2017-10-25 10:42:01 · 593 阅读 · 0 评论 -
javax.script详解
接口BindingsA mapping of key/value pairs, all of whose keys are Strings.CompilableThe optional interface implemented by ScriptEngines whose methods compile scripts to a form that can be exec原创 2017-12-11 22:52:03 · 5347 阅读 · 2 评论 -
Spring AOP详解
应用场景适用于那些具有横切逻辑的应用场合,如性能检测、访问控制、事务管理及日志记录主要解决问题通过横向抽取机制将这类无法通过纵向继承提醒进行抽象的重复性代码(比如:性能统计、事务管理)抽取到一个独立的模块中,但如何将这些独立的逻辑融合到业务逻辑中以完成和原来一样的业务流程,是问题的关键,这正是AOP要解决的主要问题。术语连接点 joinpoint特定点是原创 2017-12-01 23:36:49 · 278 阅读 · 0 评论 -
Missing artifact com.oracle:ojdbc6:jar:11.2.0.4解决方法
问题描述Missing artifact com.oracle:ojdbc6:jar:11.2.0.4 pom.xml 问题解决cmd中输入:mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=11.2.0.4 -Dpackaging=jar -Dfile=E:\ms\s原创 2017-12-07 10:31:43 · 10890 阅读 · 0 评论 -
对List集合中的元素进行排序
Collections对List集合中的数据进行排序有时候需要对集合中的元素按照一定的规则进行排序,这就需要用到Java中提供的对集合进行操作的工具类Collections,其中的sort方法先看一个简单的例子:public static void main(String[] args) {List nums = new ArrayList();nums转载 2018-01-14 15:50:14 · 322 阅读 · 0 评论 -
log4j.xml配置详解
Log4j由三个重要的组件构成:日志信息的优先级,日志信息的输出目的地,日志信息的输出格式。日志信息的优先级从高到低有ERROR、WARN、INFO、DEBUG,分别用来指定这条日志信息的重要程度;日志信息的输出目的地指定了日志将打印到控制台还是文件中;而输出格式则控制了日志信息的显示内容。定义配置文件Log4j支持两种配置文件格式,一种是XML格式的文件,一种是Java特性文件(键=原创 2018-01-16 23:07:55 · 4007 阅读 · 0 评论 -
synchronized关键字详解
非线程安全指多个线程对同一个对象中的实例变量进行并发访问时所得到的数据是“脏数据”。实例变量访问如果是方法内部的私有变量,则不存在“非线程安全”问题;如果都个线程同时访问1个对象中的实例变量,则有可能出现“非线程安全”问题;关键字synchronized取得的锁都是对象锁,而不是把一段代码或方法(函数)当作帧,即:哪个线程先执行带synchronized关键字的方法,哪个线程就持有该方法所属对象的原创 2018-01-19 00:04:04 · 270 阅读 · 0 评论 -
volatile详解
volatile关键字主要作用是使变量在多个线程间可见。线程安全包括原子性和可见性两个方面。synchronized和volatile比较1.关键字volatile是线程同步的轻量级实现,所以性能比synchronized要好,volatile只修饰变量,而synchronized可以修改方法及代码块;2.多线程访问volatile不会发生阻塞,而synchronized会原创 2018-01-20 22:41:32 · 599 阅读 · 0 评论 -
DBCP连接池问题分析
背景 生产环境,运维人员核对实时账单和累帐信息,发现有部分用户数据不一致;问题描述消费者日志报生产者线程池满图1生产者堆栈信息部分如下:图2问题分析数据不一致产生原因:累帐表数据是消费者SumCharge服务更新,更新完成后调用生产者AccountProcess服务,由于生产者服务处理慢导致返回超时,更新实时账单表失败;生产者Accou...原创 2018-10-16 21:43:04 · 1367 阅读 · 0 评论