java
dm520
这个作者很懒,什么都没留下…
展开
-
java 调用存储过程 传入和返回全部是自定义数组
java 调用存储过程 传入和返回全部是自定义数组包含:组装传入的数组解析返回的数组原创 2011-03-29 17:18:00 · 1244 阅读 · 0 评论 -
JVM 并发性: Java 8 并发性基础
在期待已久的 Java 8 版本中,并发性方面已实现了许多改进,其中包括在 java.util.concurrent 层级中增加新的类和强大的新并行流 功能。设计流的目的是与 lambda 表达式 共同使用,Java 8 的这项增强也使得日常编程的其他很多方面变得更加简便。(参见介绍 Java 8 语言的 指南文章,了解对于 lambda 表达式的介绍及相关 interface 改动。) 本文首先转载 2016-05-08 19:34:29 · 760 阅读 · 0 评论 -
Java 8 语言变化
Java 8 的最大变化在于添加了对 lambda 表达式 的支持。Lambda 表达式是可按引用传递的代码块。它们类似于一些其他编程语言中的闭包:它们是实现某项功能的代码,可接受一个或多个输入参数,而且可返回一个结果值。闭包是在一个上下文中定义的,可访问(对于 lambda 表达式而言是只读访问)来自上下文的值。 如果您不熟悉闭包,不用害怕。Java 8 lambda 表达式其实是匿名内部类的一转载 2016-05-08 19:25:15 · 1053 阅读 · 0 评论 -
java多线程学习-java.util.concurrent详解(四) BlockingQueue
“支持两个附加操作的 Queue,这两个操作是:获取元素时等待队列变为非空,以及存储元素时等待空间变得可用。“ 这里我们主要讨论BlockingQueue的最典型实现:LinkedBlockingQueue 和ArrayBlockingQueue。两者的不同是底层的数据结构不够,一个是链表,另外一个是数组。转载 2016-05-07 21:55:22 · 471 阅读 · 0 评论 -
java多线程学习-java.util.concurrent详解(三)ScheduledThreadPoolExecutor
我们先来学习一下JDK1.5 API中关于这个类[ScheduledThreadPoolExecutor]的详细介绍: 可另行安排在给定的延迟后运行命令,或者定期执行命令。需要多个辅助线程时,或者要求 ThreadPoolExecutor 具有额外的灵活性或功能时,此类要优于 Timer。 一旦启用已延迟的任务就执行它,但是有关何时启用,启用后何时执行则没有任何实时保证。转载 2016-05-07 21:36:23 · 884 阅读 · 0 评论 -
java多线程学习-java.util.concurrent详解(二)Semaphore/FutureTask/Exchanger
3. Semaphore 我们先来学习一下JDK1.5 API中关于这个类的详细介绍:“一个计数信号量。从概念上讲,信号量维护了一个许可集。如有必要,在许可可用前会阻塞每一个 acquire(),然后再获取该许可。每个 release() 添加一个许可,从而可能释放一个正在阻塞的获取者。但是,不使用实际的许可对象,Semaphore 只对可用许可的号码进行计数,并采取相应的行动转载 2016-05-07 20:29:46 · 430 阅读 · 0 评论 -
java多线程学习-java.util.concurrent详解(一) Latch/Barrier
Java1.5提供了一个非常高效实用的多线程包:java.util.concurrent, 提供了大量高级工具,可以帮助开发者编写高效、易维护、结构清晰的Java多线程程序。从这篇blog起,我将跟大家一起共同学习这些新的Java多线程构件 1. CountDownLatch 我们先来学习一下JDK1.5 API中关于这个类的详细介绍: “一个同步辅助类,在完成一组正在其他线程中执行的操作之前转载 2016-05-07 20:14:55 · 499 阅读 · 0 评论 -
java.util.concurrent 使用详解
java.util.concurrent 包含许多线程安全、测试良好、高性能的并发构建块。不客气地说,创建 java.util.concurrent 的目的就是要实现 Collection 框架对数据结构所执行的并发操作。通过提供一组可靠的、高性能并发构建块,开发人员可以提高并发类的线程安全、可伸缩性、性能、可读性和可靠性。转载 2016-05-07 19:43:13 · 6420 阅读 · 0 评论 -
java.util.concurrent.CountDownLatch的使用(转)
CountDownLatch是一个同步辅助类,犹如倒计时计数器,创建对象时通过构造方法设置初始值,调用CountDownLatch对象的await()方法则处于等待状态,调用countDown()方法就将计数器减1,当计数到达0时,则所有等待者或单个等待者开始执行。转载 2016-05-07 18:51:10 · 517 阅读 · 0 评论 -
69 个经典 Spring 面试题和答案
Spring 概述1. 什么是spring?Spring 是个java企业级应用的开源开发框架。Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的web应用。Spring 框架目标是简化Java企业级应用开发,并通过POJO为基础的编程模型促进良好的编程习惯。2. 使用Spring框架的好处是什么?轻量:Spring 是轻量的,基本的转载 2016-05-06 22:36:51 · 6383 阅读 · 0 评论 -
Java中的位运算
Java的位运算(bitwise operators )直接对整数类型的位进行操作,这些整数类型包括long、int、short、char 和 byte,位运算符具体如下表: 运算符 说明 左移位,在低位处补0 >> 右移位,若为正数则高位补0,若为负数则高位转载 2011-07-11 14:54:21 · 626 阅读 · 0 评论 -
JVM垃圾回收GC原理
一、相关概念 基本回收算法 1. 引用计数(ReferenceCounting) 比较古老的回收算法。原理是此对象有一个引用,即增加一个计数,删除一个引用则减少一个计数。垃圾回收时,只用收集计数为0的对象。此算法最致命的是无法处理循环引用的问题转载 2011-06-15 14:47:00 · 569 阅读 · 0 评论 -
计算机的时间
一直都被计算机的时间计算方式搞的头大,当时间参与到代码中去的时候,总感觉自己的代码显得精确而又不精确。正像数理逻辑老师引用佛的那句话“须弥纳芥子,芥子纳须弥”一样玄妙。转载 2011-04-11 14:19:00 · 1789 阅读 · 0 评论 -
java并发编程实践笔记
<br /> 1, 保证线程安全的三种方法: a, 不要跨线程访问共享变量b, 使共享变量是final类型的c, 将共享变量的操作加上同步<br /> 2, 一开始就将类设计成线程安全的, 比在后期重新修复它,更容易.<br /> 3, 编写多线程程序, 首先保证它是正确的, 其次再考虑性能.<br /> 4, 无状态或只读对象永远是线程安全的.<br /> 5, 不要将一个共享变量裸露在多线程环境下(无同步或不可变性保护)<br /> 6, 多线程环境下的延迟加载需要同步转载 2011-04-02 13:29:00 · 407 阅读 · 0 评论 -
JVM 并发性: Java 和 Scala 并发性基础
处理器速度数十年来一直持续快速发展,并在世纪交替之际走到了终点。从那时起,处理器制造商更多地是通过增加核心来提高芯片性能,而不再通过增加时钟速率来提高芯片性能。多核系统现在成为了从手机到企业服务器等所有设备的标准,而这种趋势可能继续并有所加速。开发人员越来越需要在他们的应用程序代码中支持多个核心,这样才能满足性能需求。 在本系列文章中,您将了解一些针对 Java 和 Scala 语言的并发编程的新转载 2016-05-08 19:52:10 · 873 阅读 · 0 评论