06 2017 档案

摘要:在使用dubbo开发项目时,一般会遇到以下两个问题 1、dubbo服务方启动时需要加载的东西太多,如果跑单元测试把服务开启会浪费不少时间,而且单元测试没法保持服务一直开启的状态。每次测试完,下次测试的时候又要重启一下 2、不希望本地dubbo服务被别人访问 一、配置 1、服务方 dubbo从2.0. 阅读全文

posted @ 2017-06-27 19:12 想到什么 阅读(6550) 评论(0) 推荐(0)

摘要:一、策略模式常出现在我们的代码中 1、最常见的if else 如果判断的层次太深,或者判断后执行的逻辑太多,建议使用策略类来封装不同的处理 2、列表的排序规则 Collections.sort(List<T> list, Comparator<? super T> c),Comparator就是排序 阅读全文

posted @ 2017-06-16 14:17 想到什么 阅读(191) 评论(0) 推荐(0)

摘要:业务代码非黑客文化,它更注重清晰的结构与友好的提示,可读性、维护性、扩展性要更强。以下是几个要点: 1、服务接口要返回结果封装类,例如:{errorCode:0,message:'',data:{}} 2、自定义异常类,错误提示语要更友善,可能还要根据层次的不同有不同的提示语,例如:数据操作层提示的 阅读全文

posted @ 2017-06-14 09:46 想到什么 阅读(423) 评论(0) 推荐(0)

摘要:面向对象就是就是用一个名称将完成特定功能的过程逻辑概括起来。它是相对于面向过程而言的,优点也是显而易见:思路和代码结构更清晰,明确。可读性更强,如果能做到完全的对象化,代码里的任何一个符号一段代码都是有明确含义的。 但要做到完全的面向对象化却不容易,以下是对象化级别的一些划分,非官方,纯属个人经验总 阅读全文

posted @ 2017-06-13 17:56 想到什么 阅读(258) 评论(0) 推荐(0)

摘要:一、常用控制线程方法 暂停线程执行,不会释放锁 线程挂起,直到接收到notify 或notifyAll,才会进入就绪状态,锁会释放。可以设置等待时间(wait(n)) 并不意味着挂起和暂停,如果没有其它具有相同或更高优先级的线程需要调度,它还会继续运行,锁没有释放 中断线程,但不保证能成功 如果在线 阅读全文

posted @ 2017-06-13 15:32 想到什么 阅读(183) 评论(0) 推荐(0)

摘要:一、EasyMock 使用动态代理实现模拟对象创建,一般可以满足以下测试需求 1、要测试的模块依赖于其它自己控制不了的模块,如第三方服务,其它组员在开发的服务等,它们都没办法配合你来测试; 2、涉及到数据库操作,但当时条件连接不了数据库或你不想将自己的测试结果改动到数据库; 3、模块依赖于sprin 阅读全文

posted @ 2017-06-08 12:06 想到什么 阅读(3761) 评论(0) 推荐(1)

摘要:主要参考了阿里巴巴开发规范,特此说明 一、通用规范 1、注释 总体原则是: 对外接口必须写;内部接口不建议使用 ,如果名字已经可以解释其意义,则不需要加注释,如果不能解释则可以加 1)属性注释 /** xxx **/ private String name; 2)方法里注释 public void  阅读全文

posted @ 2017-06-07 14:28 想到什么 阅读(215) 评论(0) 推荐(0)

摘要:泛型是Java SE 1.5的新特性,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数 引入泛型的好处是安全简单。可以将运行时错误提前到编译时错误。没有泛型的情况的下,通过对类型Object的引用来实现参数的“任意化”,“任意化”带来的缺点是要做显式的强制类型转换,而这种转换是要求开 阅读全文

posted @ 2017-06-01 18:08 想到什么 阅读(185) 评论(0) 推荐(0)

摘要:一、函数式编程 1、lambda 表达式 参数值 -> 函数体内容,例如: // Java 8之前:new Thread(new Runnable() { @Override public void run() { System.out.println("Before Java8, too much 阅读全文

posted @ 2017-06-01 11:58 想到什么 阅读(273) 评论(0) 推荐(0)

导航