自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 资源 (6)
  • 收藏
  • 关注

原创 Mybatis中mapper文件传参方式(2种方式)

很长时间没有研究Mybatis了,之前工作Hibernate框架用的较多一些,今天遇到一个有趣的问题,话不多说,直接上代码:public interface BusinessDepartmentMapper { Long insert(@Param("record")BusinessDepartment record); Long updateByPrimaryKey(BusinessD

2017-05-08 20:11:54 1739

原创 IDEA2017激活(给力)

进入ide主页面,help-register-license server,然后输入 http://idea.iteblog.com/key.php(注意:php要小写)

2017-05-03 23:02:57 571

原创 @Transactional注解初见

之前一直使用声明式事务,切面编程的配置方式让编程者忘记了事务的存在,一旦离开,发现这个事务还是蛮重要的;刚刚加入新公司,在这里大家热爱编程式事务或者注解式事务,这里简单了解一下@Transactional注解的使用:public interface userService { public void A(); public void B();}@Transactionalpu

2017-05-03 22:51:11 429

原创 @Resource和@Autowired区别

1.@Resource @Resource注解来着J2EE,优先使用byName方式进行注入,如果没有则在使用byType方式注入; 2.@Autowired @Autowired来自Spring,优先使用byType方式进行注入,如果没有则在使用byName方式注入; @Autowired private UserService userSer

2017-05-03 22:32:30 271

转载 <转>全面分析 Spring 的编程式事务管理及声明式事务管理

开始之前 关于本教程 本教程将深入讲解 Spring 简单而强大的事务管理功能,包括编程式事务和声明式事务。通过对本教程的学习,您将能够理解 Spring 事务管理的本质,并灵活运用之。 先决条件 本教程假定您已经掌握了 Java 基础知识,并对 Spring 有一定了解。您还需要具备基本的事务管理的知识,比如:事务的定义,隔离级别的概念,等等。本文将直接使用这些概念而不做详细解释。另外,您

2017-04-18 12:53:01 299

原创 二叉树遍历(递归与非递归实现)

二叉树的遍历:public class TreeNode { public String key; public String val; public TreeNode left; public TreeNode right;}递归遍历: /** 递归实现中序遍历 */ public static void iterativeInorder(TreeN

2017-04-16 22:01:34 400

翻译 单例模式实现:枚举单例

代码实践:public enum SingletonEnum { INSTANCE; Object object; SingletonEnum() { object = new Object(); } public Object getInstance(){ return object; }}测试:public class

2017-04-16 13:26:39 414

原创 排序(Java实践)

算法可以运用到我们实际开发中,帮助我们迅速开发,今天学习排序: 1.快速排序: 所谓快速排序,就是将第n个元素分别与它后面的元素进行比较,较小交换位置放在前面: 这里是一个开发的工具类:public class SortUtils { public static void change(int[] arr, int i, int j){ int temp = arr[i

2017-04-16 10:12:26 233

原创 百度面试:查找是否存在某元素

查找是否存在某元素: int[] target = new int[]{1,2,3,4,5,7,8,9};需求:查找某元素返回true 或false,使用最优算法: 算法我只会二分法,应该还有别的算法更好,实现如下: public static Boolean isHaveVal(int[] target, int value){ int min = 0; in

2017-04-11 11:47:11 240

原创 百度面试:链表翻转

翻转链表: Node类:public class Node { private int value; private Node next;}需求: public static void main(String[] args) { Node node1 = new Node(1); Node node2 = new Node(2);

2017-04-11 10:54:17 391

原创 浅谈GC(最后更新时间:20170328)

说道GC,不得不提及一下内存模型,JVM主要管理两种类型内存:堆和非堆,堆内存(Heap Memory)是在 Java 虚拟机启动时创建,非堆内存(Non-heap Memory)是在JVM堆之外的内存。 简单来说,堆是Java代码可及的内存,留给开发人员使用的;非堆是JVM留给自己用的,包含方法区、JVM内部处理或优化所需的内存(如 JIT Compiler,Just-in-time Compi

2017-03-28 22:49:25 329

原创 CAS如何保证安全性?(最后更新时间:20170328)

CAS是compareAndSwap的缩写,是Unsafe类中的方法,我们来看源码: /** * Atomically sets the value to the given updated value * if the current value {@code ==} the expected value. * * @param expect the

2017-03-28 18:59:39 1466

原创 Object finalnize()方法学习

Object对象中包含了一个用来回收堆中对象的方法,finalnize(),显示调用该方法并不一定会触发GC的回收,下面我们通过实验查看finalnize()方法工作机制;public class LoanProduct { @Override protected void finalize() throws Throwable { System.out.println

2017-03-25 22:32:39 504

原创 AtomicInteger线程安全的实现机制

java在concurrent包下提供了线程安全的int包装类,AtomicInteger,接下来我们就讲讲AtomicInteger的实现原理:public class AtomicInteger extends Number implements java.io.Serializable { private volatile int value;AtomicInteger 类中的valu

2017-03-24 22:28:25 3088

原创 mysql面试题

SELECT * FROM dbn_binding_user_data b JOIN dbn_person_credit p ON p.bo_id_person = b.person_id AND b.audit_status = ‘approve’ AND b.is_enabled = 1 JOIN dbn_person_information_v t4 ON

2017-03-24 14:27:44 409

原创 事物底层实现

关于mysql支持的事物底层是如何实现的: 1.mysql事物显示配置: Transaction.begin(); //TODO 增删改查 Transaction.commit();显示配置事物; 2.声明式事务的配置: spring提供了声明式事务的配置,基于AOP实现了,在Adivice(通知)中添加需要实现的逻辑代码: 如@Before中添加:Transacti

2017-03-23 23:01:00 449

原创 mysql锁机制

mysql提供了行锁,表锁以及叶锁;其中,InnoDB引擎采用了表锁的行锁机制; 行锁很容易有死锁的问题,当两个session同时进入该行数据的时候,会造成所竞争,同时事物也会锁定;

2017-03-23 22:52:24 451

原创 dubbo原理

Dubbo是Alibaba开源的分布式服务框架,它最大的特点是按照分层的方式来架构,使用这种方式可以使各个层之间解耦合(或者最大限度地松耦合),比如表现层和业务层就需要解耦合。 从面向服务的角度来看,Dubbo采用的是一种非常简单的模型,要么是提供方提供服务,要么是消费方消费服务,所以基于这一点可以抽象出服务提供方(Provider)和服务消费方(Consumer)两个角色。 除了以上两个角色,

2017-03-23 21:30:05 356

原创 ArrayList和LinkedList的时间复杂度

1.ArrayList和LinkedList的时间复杂度;

2017-03-23 21:19:35 8603 1

原创 Sping对事物的支持

Spring的事物通过它下面的tx组件实现,首先我们找到平台事物管理器: 这里是他的接口清单: PlatformTransactionManager.java*TransactionStatus getTransaction(TransactionDefinition definition) throws TransactionException;*void commit(Transactio

2017-03-18 17:20:48 345

原创 Hibernate named parameter 传参书写方式,同样Hibernate帮我们做了预编译,可以防止sql注入,同时可以一定程度上加快sql执行效率,也利于后期维护

1.当传入参数有多个的时候,使用Hibernate的named parameter方式是一种较好的选择,利于后期的维护; 2.实现方式:使用:name 来进行传入参数,使用sqlQuery对象的setParameter方法传入参数,同时兼顾list类型以及普通数据类型; 3.注意使用时的空格标识符的添加,否则IDE可能会提示,如果不提示,那就只能在运行时抛出异常了; 4.厉害了我的Hibe

2017-03-17 14:40:43 1234

原创 一个有趣的遭遇:dubbo超时追踪出来的httpclient超时问题

开完早会,像往常一样打开我的SecureCRT,一个个点开线上的日志~惊!!!!全是bug: <dubbo:reference id="outerInformationService" interface="com.dbn.remote.service.OuterInformationService" check="false" retries="0" timeout="200000"/>按理说,

2017-02-13 16:08:28 1154

原创 使用Future接口进行多线程报表查询

报表查询中,可能涉及过多业务,在sql优化以后,仍然存在查询过慢,导致串行查询不适用情况,引入Future接口进行多线程查询,实现快速生成报表;//利用多线程查询数据 ThreadPoolExecutor threadPool = ImportDataThreadPoolUtil.getInstance(); //期初数 Rep

2017-02-10 17:19:12 748

原创 Hibernate 报错:Batch update returned unexpected row count from update [0]; actual row count

使用Hibernate的saveOrUpdateAll()方法时,报错:Batch update returned unexpected row count from update [0]; actual row count;错误原因:主键人工给定,而hbm文件则使用了native生成策略,改为:assigned;

2017-02-09 13:34:09 2187

原创 mysql添加索引

ALTER TABLE `dbn_organization_relation_v` ADD INDEX cust_organization_id_index ( `cust_organization_id` );其中dbn_organization_relation_v 是表名,cust_organization_id_index 是索引名称,cust_organization_id是需要添加索引

2017-02-08 16:16:41 296

原创 Hibernate如何使用in关键字

Hibernate虽然使用的是HQL语句,有时难免会觉得不够智能,其实没有发现Hibernate设计者的全面性; 比如in关键字,正确的使用方法是://获取id集合List<Integer> menuIds = this.getSession().createSQLQuery(concatSql).setParameter(0,userId).list();//查询菜单对象

2017-01-23 13:26:05 9853

原创 idea多线程debug问题

由于idea支持主线程和多线程的debug模式,所以在进行多线程debug时,需要对断点进行设置: 如图:通过点击左下角的红色按钮,我们可以找到指定的断点,对当前断点进行设置,如果是All,则是在主线程上进行断点,而选择Thread,就可以在当前线程进行断点;

2016-12-30 17:09:13 1304

原创 Callable与Future

Callable与Future 使用线程池来创建并行的任务: 这个一个简单的demo,可以在最后统一获取执行结果;以此类推ExecutorService threadPool = Executors.newFixedThreadPool(2); Future<Integer> future = threadPool.submit(new Callable<Integer>() {

2016-12-30 17:03:35 340

原创 报错:org.apache.ibatis.reflection.ReflectionException: There is no getter for property named

mybatis报这个错误是因为字段名称写错: #{personCredit.mainBusinessVariety}写成了#{personCredit.main_business_variety},是一个比较低级的错误~

2016-12-28 09:33:03 2233 1

原创 根据pdf模板填充相应的值不换行问题

使用pdf模板填写表单的时候,由于表单的表单域是固定的,切大小没有改变,所以即使加上了“\n”也无法换行。解决方法:adobe Acrobat XI Pro软件可以编辑模板,调整模板的表单域的属性:如图所示。

2016-12-06 13:57:23 3417 7

原创 jquery实现价格累加显示效果

HTML页面:<table cellpadding="0" cellspacing="0" class="t_center m_table"> <thead> <tr class="white"> <td ><input type="checkbox" style="margin:0

2016-09-01 14:55:40 1005

原创 使用httpclient获取其他网站数据(含解析验证码)

**使用httpclient获取其他网站数据**使用httpclient模拟浏览器请求网站加载个人诉讼记录信息接口; 总结:1.系统如果上线,linux系统中使用了python命令来识别验证码,先将验证码保存在本地,识别完成后删除; 2.如果是在windows系统上运行该系统,提供了一个OCR的封装类,直接调用即可识别验证码;import com.alibaba.fastjso

2016-08-31 15:18:38 757

原创 host parameter is null 错误!

出现这种错误:在使用httpclient执行请求的时候,host地址参数有错误造成;原因:1,URL地址记得加上:HTTP://    2,参数地址通过@value读取配置文件,但是注解并未生效,在web.xml中配置包扫描即可;

2016-08-31 14:38:45 21648 1

Netty权威指南 第2版 带书签目录 完整版

Netty权威指南 第2版 带书签目录 完整版 Netty Netty权威指南

2018-01-08

图解HTTP 彩色版

图解HTTP彩色版 图解HTTP 彩色版 图解HTTP彩色版 图解HTTP彩色版

2018-01-08

算法刷题LeetCode

算法刷题LeetCode 算法刷题LeetCode 算法刷题LeetCode

2018-01-08

Java并发编程的艺术

并发编程领域的扛鼎之作,作者是阿里和1号店的资深Java技术专家,对并发编程有非常深入的研究,《Java并发编程的艺术》是他们多年一线开发经验的结晶。本书的部分内容在出版早期发表在Java并发编程网和InfoQ等技术社区,得到了非常高的评价。它选取了Java并发编程中最核心的技术进行讲解,从JDK源码、JVM、CPU等多角度全面剖析和讲解了Java并发编程的框架、工具、原理和方法,对Java并发编程进行了最为深入和透彻的阐述。, 《Java并发编程的艺术》内容涵盖Java并发编程机制的底层实现原理、Java内存模型、Java并发编程基础、Java中的锁、并发容器和框架、原子类、并发工具类、线程池、Executor框架等主题,每个主题都做了深入的讲解,同时通过实例介绍了如何应用这些技术。

2018-01-08

验证码解析工具

只能适用于windows操作系统

2016-08-31

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除