自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

转载 tdd 测试驱动开发

1 测试驱动开发模式1.1 重新定义“测试”这是一张影响图:普通箭头表示当第一个节点增长时,第二个节点也会做相应的增长。带圆圈的箭头表示当第一个节点增长时,第二个节点也会做相应的减少。当压力越大时,所做的测试就会越少。测试越少,犯的错就会越多,就会感到更大的压力。这是一个会造成情境越来越糟的循环。我们用事先编写的测试来驱动开发,因为测试先于开发,

2018-01-11 11:07:59 268

转载 原 后端技术、框架

struts2(非单例):javaweb框架,负责视图部分.配置文件:struts.xmlspringmvc(单例):全注解减少了配置文件,收集前端的参数方法多.配置文件:applicationContent-控制器名称.xmlspringboot(单例):比springmvc注释更多,但是配置文件几乎没有了.spring:负责控制(依赖注入DI,控制翻转IOC).配置文件

2016-02-16 11:43:18 347

原创 反射

package Reflect; import java.lang.reflect.Constructor; class Person{         publicPerson() {             }    publicPerson(String name){        this.name=name;    } 

2016-01-22 15:34:16 268

转载 管理系统权限模块技术方案

一个管理系统,有各种不同的功能,不是所有的功能都开放给任何用户,不同的用户会有不同功能的权限。权限模块需要做到两点,1.记录用户能使用的功能集合 2.管理界面只渲染用户能使用的功能。    分享一个实现方案。    每个功能入口设置一个权限码,整数的。借助自定义的注解可以很好的标注入口方法的权限码。数据库里存储用户的所有功能的权限。mysql里借助bit数组实现。0表示没这个权限,1表示有

2016-01-06 15:24:20 608

转载 客户端升级系统升级策略

我们项目组的客户端多达20余种,两年前为这些客户端写了一个升级模块,但是不够强悍。去年年中重新做了一个客户端灰度升级系统,一个独立的系统专门为客户端升级提供服务。现在分享下这个新系统的升级策略。    发布版    每种类型的客户端有且仅有一个对外发布版。版本号比发布版低的客户端都要升级到发布版。在客户端层面的升级形式有两种,登录升级和使用中升级。1.登录升级    登录前提示

2016-01-06 15:18:54 741

转载 SQL索引一步到位

SQL索引一步到位(此文章为“数据库性能优化二:数据库表优化”附属文章之一)   SQL索引在数据库优化中占有一个非常大的比例, 一个好的索引的设计,可以让你的效率提高几十甚至几百倍,在这里将带你一步步揭开他的神秘面纱。  1.1 什么是索引?  SQL索引有两种,聚集索引和非聚集索引,索引主要目的是提高了SQL Server系统的性能,加快数据的查询速度与减少系统的响应时间 下面

2016-01-06 15:06:04 266

转载 当方法的返回类型是数组或集合时,不要返回null,尽量返回容量为0的数组或集合

版权声明:本文为博主原创文章,未经博主允许不得转载。    今天测试3.0的后台代码时,遇到了一个空指针的bug,是由于调用的方法返回的是集合,由于实际返回的是null,后头有调用了这个对象的方法,导致空指针。这段代码的质量需要改善,如果返回容量为0的集合,则完全可以避免空指针。先贴错误代码。[java] view plaincopypublic Resul

2016-01-06 14:56:37 1449

转载 如何给一个私有方法做单元测试

给类的公有方法做单元测试,很简单,new一个对象,设好入口参数后,调用这个方法,比较期望值和实际值即可。给一个类的私有方法做单元测试,也不麻烦,先通过反射获取这个方法,然后将这个方法的可访问性强制设为true,这样的话,这个私有方法就可以被调用了。目标方法:[java] view plaincopyprivate Double format(Double fil

2016-01-06 14:49:39 2832

转载 使用QRCode生成二维码

我们项目的安卓客户端开发出来了,下载页面上要呈现出二维码以方便移动端以方便移动端用户下载。QRcode是日本人94年开发出来的。首先去QRCode的官网http://swetake.com/qrcode/java/qr_java.html,把要用的jar包下下来,导入到项目里去。qrcode需要设置一个版本号,这个版本号代表你生成的二维码的像素的大小。版本1是21*21的,版本号每增加1,

2016-01-06 14:39:32 1154

转载 如何在Eclipse下查看JDK源代码

不会看JDK源代码,相当于没学过JAVA。    从百度上找到一篇帮助我解决了如何在Eclipse下查看JDK源代码 的文章。    在Eclipse中查看JDK类库的源代码!!! 设置: 1.点 “window”-> "Preferences" -> "Java" -> "Installed JRES"2.此时"Installed JRES"右边是列表窗格,列出了系统中的

2016-01-06 12:18:01 325

转载 IM协议设计选型

Hi,各位小伙伴们,又见面啦,有木有很想念呀。不知道上次分享的关于IM底层协议的知识对大家有木有帮助,今天俺要就 IM 的协议的设计选型做一个简单的分享。废话不多说,现在开始讲解吧。一、im协议的分层设计所谓“协议”是双方共同遵守的规则,例如:离婚协议,停战协议。协议有语法、语义、时序三要素。(1)语法:即数据与控制信息的结构或格式(2)语义:即需要发出何种控制信息,完成何种动作以

2016-01-06 09:41:15 270

原创 wmb 开发的几个坑

(1)  数据库不返回结果    --定义保存服务提供方URL地址的变量        DECLARE serviceUrl CHAR;        --缓存为空时或缓存服务ID不等于服务ID时,则重新查询服务URL表        IF serviceUrlCache IS NULL OR serviceIdCache             SET serviceUr

2016-01-05 16:10:10 528

原创 ESB开发笔记(2)

问题由来: 图a如图a,监控平台黄色标记部分没有相关数据。而其他服务有,如图b。 图b 问题分析:a)java节点b)监控事件c)框架设置  图1  图2 图1 对应图a,图2对应图b,对比图1与图b,不同在于黄色部分。 问题解决:结果:解决

2016-01-05 15:57:03 367

转载 十步完全理解SQL

很多程序员视 SQL 为洪水猛兽。SQL 是一种为数不多的声明性语言,它的运行方式完全不同于我们所熟知的命令行语言、面向对象的程序语言、甚至是函数语言(尽管有些人认为 SQL 语言也是一种函数式语言)。我们每天都在写 SQL 并且应用在开源软件 jOOQ 中。于是我想把 SQL 之美介绍给那些仍然对它头疼不已的朋友,所以本文是为了以下读者而特地编写的:1、 在工作中会用到 SQL 但是对它

2016-01-05 15:46:07 226

转载 Introspector与反射

原文地址:Introspector与反射作者:jackeychow一》:Introspector类介绍 Introspector与反射类似,主要是对Java Bean属性、方法等的一种处理方法. 1. Class Diagram   2. 实例 package com.siyuan.jdktest;import java.beans.BeanDesc

2016-01-04 10:27:15 1465

转载 HashMap、HashTable、LinkedHashMap和TreeMap

Java为数据结构中的映射定义了一个接口java.util.Map,它有四个实现类,分别是HashMap、HashTable、LinkedHashMap和TreeMap。本节实例主要介绍这4中实例的用法和区别。关键技术剖析:Map用于存储键值对,根据键得到值,因此不允许键重复,值可以重复。l (1)HashMap是一个最常用的Map,它根据键的hashCode值存储数据,根据键可以直接

2016-01-04 10:14:53 232

转载 列表、集合与数组之间的转化

数组和List、Set都可以存放多个元素,数组的特点是长度固定,访问速度非常快,元素类型单一;List的特点是长度可以动态增加,能够维护元素的次序,存入的所有元素都当做Object,允许元素重复;Set的特点是长度可以动态增加,能够保证元素不重复,存入的所有元素都当做Object。本节实例介绍Set、List和数组之间如何转换,将Set、List对象中的元素转换为数组,将数组转换为Set、List

2016-01-04 10:10:53 332

转载 equals、hashCode和clone方法

(1)关键技术剖析:(Object类的这三个方法)v equals方法:比较两个对象是否相等,结果为boolean型。v hashCode方法:获得两个对象的hash码,结果为int型。v Clone方法:克隆当前对象,结果为Object型。class T {int a;public T(int a) {super();this.a = a;}public 

2016-01-04 10:04:28 335

转载 对Map排序

本节实例介绍对Map中的记录根据键进行排序,Map对象的键是Integer类型,排序结果可以是升序也可以是降序。关键技术剖析:l 只有TreeMap能够把保持的记录根据键排序,因此,可以把其他Map转换成TreeMap,转换的方法是把Map对象当做参数构造TreeMap。l TreeMap默认用升序排序,可以指定排序用的比较器。比较实现Comparator接口。 import

2016-01-04 09:56:45 275

转载 java的Arrays类的应用

java.util.Arrays类能方便地操作数组,它提供的所有方法都是静态的。具有以下功能:² 给数组赋值:通过fill方法。² 对数组排序:通过sort方法,按升序。² 比较数组:通过equals方法比较数组中元素值是否相等。² 查找数组元素:通过binarySearch方法能对排序好的数组进行二分查找法操作。  import java.util.Arrays;

2016-01-04 09:51:11 205

原创 23种设计模式有感

我是java菜鸟,认为面向对象编程就是抽象,在大学初触设计模式是看到 抽象类  和 接口  ..........请看以下类图,总结结果,论证论点: 模式离不开 类的向上向下转型和接口

2015-12-31 17:24:46 252

原创 esb开发笔记

问题由来:ESB是企业服务总线,是一套强大的框架。写下来,以供记忆。如下图,toolkit监控平台:mq:数据库:省略

2015-12-31 17:11:40 611

原创 搜索功能优化,性能优化比较,dom,dom4j,json

问题由来: java开发时,有时候要解析xml,我常用处理xml有3种方法,dom,dom4j,json,如何做到开发中又快又好呢!?项目需求: 实现搜索联系人功能项目代码:dom:public class TreeDemo {         public static HashMap> organMap =new  HashMap>();

2015-12-31 16:25:31 557

空空如也

空空如也

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

TA关注的人

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