11 2013 档案
处理 JSON null 和空数组及对象
摘要:描述了对 JSON 数据中使用的 null 和空数组及对象的处理。JSON 数据具有 null 和空数组及对象的概念。此部分说明其中每个概念如何映射到 null 和未设置的数据对象概念。Null 值JSON 具有特殊值 null,可以对任何数据类型设置该值,包括数组、对象、数字和布尔类型。34 { Schema types35 "id":null, (integer)36 "firstName": null, (string)37 "address": null, (Address complex type with maxOccur 阅读全文
posted @ 2013-11-28 15:48 duanxz 阅读(14182) 评论(0) 推荐(0) 编辑
Eclipse快捷键大全(转载)
摘要:Ctrl+1快速修复(最经典的快捷键,就不用多说了)Ctrl+D:删除当前行Ctrl+Alt+↓复制当前行到下一行(复制增加)Ctrl+Alt+↑复制当前行到上一行(复制增加)Alt+↓当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)Alt+↑当前行和上面一行交互位置(同上)Alt+←前一个编辑的页面Alt+→下一个编辑的页面(当然是针对上面那条来说了)Alt+Enter显示当前选择资源(工程,or文件or文件)的属性Shift+Enter在当前行的下一行插入空行(这时鼠标可以在当前行的任一位置,不一定是最后)Shift+Ctrl+Enter在当前行插入空行(原理同上条)Ctrl 阅读全文
posted @ 2013-11-27 11:20 duanxz 阅读(312) 评论(0) 推荐(0) 编辑
Annotation之三:自定义注解示例,利用反射进行解析
摘要:@Retention定义了该Annotation被保留的时间长短有3中RetentionPolicy.SOURCE源文件有效,RetentionPolicy.CLASS:在class文件中有效,RetentionPolicy.RUNTIME:在运行时有效。 要想注解解析工具或编译器对其进行解析,就需 阅读全文
posted @ 2013-11-25 13:30 duanxz 阅读(1310) 评论(0) 推荐(0) 编辑
Annotation之二:@Inherited注解继承情况
摘要:@Inherited annotation类型是被标注过的class的子类所继承。类并不从它所实现的接口继承annotation,方法并不从它所重载的方法继承annotation。 子类中能否继承注解如下:(类和接口情况) 上面的结果同样适用子类的子类。 示例1:自定义注解标记在类上的继承情况 1、 阅读全文
posted @ 2013-11-25 12:51 duanxz 阅读(5432) 评论(2) 推荐(1) 编辑
innodb事务日志详解
摘要:首先看InnoDB的缓存和文件的关系图如下: InnoDB事务日志功能介绍 InnoDB使用日志来减少提交事务时的开销。因为日志中已经记录了事务,就无须在每个事务提交时把缓冲池的脏块刷新(flush)到磁盘中。事务修改的数据和索引通常会映射到表空间的随机位置,所以刷新这些变更到磁盘需要很多随机IO。 阅读全文
posted @ 2013-11-24 20:14 duanxz 阅读(2188) 评论(0) 推荐(0) 编辑
事务之二:spring事务(事务管理方式,事务5隔离级别,7个事务传播行为,spring事务回滚条件)
摘要:事物管理对于企业应用来说是至关重要的,好使出现异常情况,它也可以保证数据的一致性。 spring支持编程式事务管理和声明式事务管理两种方式。 编程式事务管理使用TransactionTemplate或者直接使用底层的PlatformTransactionManager。对于编程式事务管理,sprin 阅读全文
posted @ 2013-11-23 20:30 duanxz 阅读(3658) 评论(0) 推荐(1) 编辑
Java 数组的三种创建方法,数组拷贝方法
摘要:public static void main(String[] args) {//创建数组的第一种方法int[] arr=new int[6];int intValue=arr[5];//System.out.println(intValue);//创建数组的第二种方法int[] x={1,2,3 阅读全文
posted @ 2013-11-21 16:18 duanxz 阅读(1741) 评论(0) 推荐(0) 编辑
Eclipse 远程调试
摘要:1、WAS:配置 WAS,打开调试服务进到 WAS(或ND) 的管理控制台,在服务器->应用程序服务器中,点击要启用调试服务的应用服务器,然后进入调试服务,勾选上启动(指定当服务器启动时服务器是否将尝试启动指定的服务。)。JVM 调试端口默认为 7777,注意该端口不能有冲突(如有多个应服务器要启用调试服务时,需要指定别的端口)。其他选项默认,或根据实际来设定。 确定、保存后重启应用服务器,WAS Base 版需要回到操作系统下重启,如果是在 ND 管理控制台下,可直接在页面中重启应用服务器。2、Weblogic:打开user_projects\domains\base_domain\b 阅读全文
posted @ 2013-11-21 16:17 duanxz 阅读(362) 评论(0) 推荐(0) 编辑
Linux常用命令大全
摘要:系统信息arch 显示机器的处理器架构(1)uname -m 显示机器的处理器架构(2)uname -r 显示正在使用的内核版本dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI)hdparm -i /dev/hda 罗列一个磁盘的架构特性hdparm -tT /dev/sd... 阅读全文
posted @ 2013-11-18 13:23 duanxz 阅读(261) 评论(0) 推荐(1) 编辑
Checked Exception与Runtime Exception 的区别
摘要:Java里有个很重要的特色是Exception ,也就是说允许程序产生例外状况。而在学Java 的时候,我们也只知道Exception 的写法,却未必真能了解不同种类的Exception 的区别。 首先,您应该知道的是Java 提供了两种Exception 的模式,一种是执行的时候所产生的Excep 阅读全文
posted @ 2013-11-15 20:19 duanxz 阅读(1290) 评论(1) 推荐(0) 编辑
Effective java笔记8--序列化
摘要:对象的序列化(object serialization)API,它提供了一个框架,用来将对象编码成一个字节流,以及从字节流编码中重新构建对象。一、谨慎地实现Serializable 要想使一个类的实例可被序列化,非常简单,只要它的声明中加入"implementsSerializable"即可。正因为太容易了,所以普遍存在这样一种误解:程序员只需要做极少的工作就可以支持序列化了。 因为实现Serializable而付出的最大代价是,一旦一个类被发布,则”改变这个类的实现“的灵活性将大大降低。当一个类的序列化形式Serialized form变成了它的导出的API的一部分。一旦 阅读全文
posted @ 2013-11-15 19:17 duanxz 阅读(531) 评论(0) 推荐(0) 编辑
Effective java笔记7--线程
摘要:一、对可共享数据的同步访问 synchronized关键字可以保证在同一时刻,只有一个线程在执行一条语句,或者一段代码块。正确地使用同步可以保证其他任何方法都不会看到对象处于不一致的状态中,还能保证通过一系列看似顺序执行的状态转变序列,对象从一种一致的状态变迁到另一种一致的状态。迟缓初始化(lazy initialization)的双重检查模式(double-check idiom)://The double-check idiom for lazy initializaation -broken!private static Foo foo = null;public statc Foo g 阅读全文
posted @ 2013-11-15 19:16 duanxz 阅读(485) 评论(0) 推荐(0) 编辑
Effective java笔记6--异常
摘要:充分发挥异常的优点,可以提高一个程序的可读性、可靠性和可维护性。如果使用不当的话,它们也会带来负面影响。一、只针对不正常的条件才使用异常先看一段代码://Horrible abuse of exceptions. Don't ever do this!try{ int i = 0; while(true) a[i++].f();}catch(ArrayIndexOutOfBoundException e){}通过用抛出(throw)、捕获(catch)、忽略ArrayIndexOutOfBoundException的手段来达到终止无限循环的目的。如下面... 阅读全文
posted @ 2013-11-15 19:15 duanxz 阅读(537) 评论(0) 推荐(0) 编辑
Effective java笔记5--通用程序设计
摘要:一、将局部变量的作用域最小化 本条目与前面(使类和成员的可访问能力最小化)本质上是类似的。将局部变量的作用域最小化,可以增加代码的可读性和可维护性,并降低出错的可能性。使一个局部变量的作用域最小化,最有力的技术是在第一次使用它的地方声明。几乎每一个局部变量的声明都应该包含一个初始化表达式。在循环中经常要用到最小化变量作用域这一个规则。for循环使你可以声明循环变量(loop varialbe),它们的作用域被限定在正好需要的范围值内(这个范围包括循环体,以及循环体之前的初始化、测试、更新部分)。因此,如果在循环终止之后循环变量的内容不再被需要的话,则for循环优于while循环。例如,下面是. 阅读全文
posted @ 2013-11-15 13:24 duanxz 阅读(458) 评论(0) 推荐(0) 编辑
effective java 笔记1--序言
摘要:一、序言程序设计的几条基本原则:1、清晰性和简洁性最为重要,模块的用户永远也不应该被模块的行为所迷惑,所以写良好的注释是必需的。2、模块要竟可能小,但也不能太小,好一个深奥的哲学问题。3、代码应该被重用,而不是应该被拷贝,拷贝的代码哪天就是你的灾难。4、模块的依赖性应该尽可能地降到最小,低耦合是必须... 阅读全文
posted @ 2013-11-15 11:14 duanxz 阅读(361) 评论(0) 推荐(0) 编辑
Spring启动后获取所有拥有特定注解的Bean,注解的属性值
摘要:最近项目中遇到一个业务场景,就是在Spring容器启动后获取所有的Bean中实现了一个特定接口的对象,第一个想到的是ApplicationContextAware,在setApplicationContext中去通过ctx获取所有的bean,后来发现好像逻辑不对,这个方法不是在所有bean初始化完成 阅读全文
posted @ 2013-11-14 15:41 duanxz 阅读(13185) 评论(0) 推荐(1) 编辑
Eclipse debug调试
摘要:1、 条件断点 断点大家都比较熟悉,在Eclipse Java 编辑区的行头双击就会得到一个断点,代码会运行到此处时停止。 条件断点,顾名思义就是一个有一定条件的断点,只有满足了用户设置的条件,代码才会在运行到断点处时停止。 在断点处点击鼠标右键,选择最后一个"Breakpoint Properti 阅读全文
posted @ 2013-11-14 09:27 duanxz 阅读(615) 评论(0) 推荐(1) 编辑
Effective java笔记4--方法
摘要:一、检查参数的有效性 极大多数方法和构造函数都会对于传递给它们的参数值有某些限制。 对于公有的方法,使用Javadoc @throws标签(tag)可以使文档中记录下“一旦针对参数值的限制被违反之后将会被抛出的异常”。典型情况下, 这样的异常为IllegalArgumentException、IndexOutOfBoundException或者NullPointException。看一个例子:/** * @param m the modulus,which must be positive. * @return this mod m. * @throws ArithmeticException 阅读全文
posted @ 2013-11-13 21:31 duanxz 阅读(424) 评论(0) 推荐(0) 编辑
代码审查的价值——为何做、何时做、如何做?
摘要:对于很多公司来说,代码审查是开发人员日常工作中的重要环节。通过代码审查,可以及早发现项目中存在的问题、促进同事之间的沟通与交流,并且可以在讨论中迸发出智慧的火花。但要想成功实施代码审查却并不是一件轻松的事情,为什么要进行代码审查、何时做、如何做,这是摆在我们面前的3个重要问题。针对于这3个问题,开发... 阅读全文
posted @ 2013-11-13 11:31 duanxz 阅读(671) 评论(0) 推荐(0) 编辑
Effective java笔记3--类和接口2
摘要:三、接口优于抽象类 java提供两种机制,可以用来定义一个允许多个实现的类型:接口和抽象类。由于java只允许单继承,所以,抽象类作为类型定义受到了极大的限制。 已有的类可以很容易被更新,以实现新的接口。你所需要做的是:增加要求的方法,如果这些方法原先还不存在的话;然后在类的声明上增加一个imple 阅读全文
posted @ 2013-11-13 10:47 duanxz 阅读(453) 评论(0) 推荐(0) 编辑
根据当前日期算前一年、前一月、前一天(java基础)
摘要:问题的本身没有什么难度,但是要想一下子找到一个现成的方法还真不是那么容易,本来以为java.util.Date中会有方法结果找了半天没找到,最后还是在Calendar中找到了,记下别忘了!!核心:使用Calendar的add(int field, int amount)方法Java代码Calenda... 阅读全文
posted @ 2013-11-12 09:33 duanxz 阅读(1307) 评论(0) 推荐(0) 编辑
Effective java笔记3--类和接口1
摘要:一、使类和成员的可访问能力最小化要想区别一个设计良好的模块与一个设计不好的模块,最重要的因素是,这个模块对于外部的其他模块而言,是否隐藏了内部的数据和其他的实现细节。一个设计良好的模块会隐藏所有的实现细节,把他的API与实现清晰的隔离开来。模块之间只能通过它们的API进行通信,一个模块不需要知道其他模块的内部工作情况。这个概念被称为信息隐藏(information hiding)或封装(encapsulation),是软件设计的基本原则之一。信息隐藏的优点:1、可以有效地解除一个系统中各个模块之间的耦合关系,使得这些模块可以被独立地开发、测试、优化、使用、理解和修改。可以加速系统的开发速度,因 阅读全文
posted @ 2013-11-05 21:58 duanxz 阅读(423) 评论(0) 推荐(0) 编辑
Effective java笔记2--创建于销毁对象
摘要:一、创建对象的两种方式1、提供公有的构造器。2、提供一个返回类实例的静态方法。二、使用静态方法创建对象优势:1、静态工厂方法的一个好处是,与构造函数不同,静态工厂方法具有名字。产生的客户端代码更易于阅读。//例如,构造函数BigInteger(int,int,Random)返回的BigInteger可能是素数,BigInteger.probalePrime()的静态工厂方法,表达显然更为清楚2、静态工厂方法的第二个好处,与构造函数不同,它们每次被调用的时候,不要求非得创建一个新的对象。对于不可变类,可以预先使用构建好的实例,或将构建好的实例缓存起来,进行重复利用,从而避免创建不必要的重复对象。 阅读全文
posted @ 2013-11-04 11:03 duanxz 阅读(510) 评论(0) 推荐(0) 编辑
JDK线程池原理之六: 线程池状态介绍
摘要:《Thread之一:线程生命周期及五种状态》 《juc线程池原理(四): 线程池状态介绍》 线程有5种状态:新建状态,就绪状态,运行状态,阻塞状态,死亡状态。线程池也有5种状态;然而,线程池不同于线程,线程池的5种状态是:Running, SHUTDOWN, STOP, TIDYING,TERMIN 阅读全文
posted @ 2013-11-03 21:32 duanxz 阅读(1023) 评论(0) 推荐(0) 编辑
JDK线程池原理之四:拒绝策略示例及实现源码
摘要:一、拒绝策略介绍 二、拒绝策略对比和示例 三、拒绝策略怎么实现的? 3.1、线程池中的拒绝策略用的是策略模式 3.2、 四种拒绝策略的实现,ThreadPoolExecutor的静态内部类 3.2.1、DiscardPolicy 3.2.2、DiscardOldestPolicy 3.2.3、Abo 阅读全文
posted @ 2013-11-03 21:17 duanxz 阅读(950) 评论(0) 推荐(1) 编辑
Annotation之一:Java Annotation基本功能介绍
摘要:日常开发中接触到的注解有很多,有jdk的@Override、@FunctionInterface等、框架(如spring、mybatis、lombok)的@Controller、@Param、@Slif4j、@Data等,jdk的原生注解除了提供这些注解之外还提供了4种元注解(下面有说明)。 原生类 阅读全文
posted @ 2013-11-03 19:55 duanxz 阅读(718) 评论(0) 推荐(0) 编辑


点击右上角即可分享
微信分享提示