Top articles
-
Spring AOP 在工作中的使用,MultiCustomer不同需求管理
使用请注明出处:http://alex2012-c.j.overblog.com/ 很多项目使用了Spring,其中AOP(面向切面编程)是很重要的思想。 AOP用处很多,比如事务管理,日志管理等。AOP的使用是为了以更加灵活的方式来解决问题。 工作开发内容是实现多机场管理,不同机场有不同的需求,我们对客户所需要的功能进行了一些parameter的定义,对于哪个机场激活哪些parameter? 此时引进了AOP功能,设计了Feature函数,用Feature来实现对不同机场不同需求的控制。 例如,在系统中定义了function1,function2,function3作为parameter。实际应用中,慕尼黑机场使用到了1和3,尼斯机场使用到了2和3,哥本哈根机场使用了2。...
-
java 设计模式
在工作或者学习中用到的 java 设计模式 的总结: 1、工厂方法模式(Factory Method) 11、普通工厂模式 ,就是建立一个工厂类,对实现了同一接口的一些类进行实例的创建。最常用的。 首先,创建二者的共同接口: public interface Sender { public void Send(); } 其次,创建实现类: public class MailSender implements Sender { @Override public void Send() { System.out.println("this...
-
Oracle 效率 Cost Based Optimizer (第一部分)
严禁转载,使用请注明出处:http://alex2012-c.j.overblog.com/ 参加公司Oracle Optimization的三天培训,总结了报告。第一部分。 Anti patterns or performance pitfalls Implicit conversions (e.g. data defined as VARCHAR but queried with a numeric value => the VARCHAR will always be converted)...
-
kanban 看板管理法
严禁转载,使用请注明出处:http://alex2012-c.j.overblog.com/ 作为Agile Master,我们组使用了看板管理方法。并有详细的规定。 kanban管理方法和敏捷开发有着很多的类似之处。工作中,每天都有standup组会,向大家介绍自己的工作进度。 我们有一个板子,板子上有很多的便利贴,代表不同的任务,板子分为5列: to do/analyse/dev/test/done 每列有自己的标准 Content In Kanban, the main item used...
-
xsd中的继承关系如果写?
在实习写xsd文件时候,通常需要有继承关系。 下面是我们组的一个继承关系的例子。以及代码。 首先看如下类图 下面是部分xsd代码: LegDataType.xsd: FlightLegDataType.xsd: GroundLegDataType.xsd: 下面是生成的java代码:
-
equals hashcode 注意事项
在java中比较两个instance,有两个函数非常重要equals和hashcode,这里也会出现很多问题。工作中就有很多bug是来自于这两个函数。 总结了一下注意事项。 重写equals函数的时候 在覆盖equals方法的时候,你必须要遵守它的通用约定。下面是约定: 自反性。对于任何非null的引用值x,x.equals(x)必须返回true。 对称性。对于任何非null的引用值x和y,当且仅当y.equals(x)返回true时,x.equals(y)必须返回true 传递性。对于任何非null的引用值x、y和z,如果x.equals(y)返回true,并且y.equals(z)也返回true,那么x.equals(z)也必须返回true。...
-
java 中Collection/Map 的比较
首先java中各种collection或者Map类层次关系如下: Collection ├List │├LinkedList │├ArrayList │└Vector │ └Stack └Set Map ├Hashtable ├HashMap └WeakHashMap 1. Collection接口 Collection是最基本的集合接口,声明了适用于JAVA集合(只包括Set和List)的通用方法。 Set 和List 都继承了Conllection,Map。 1.1Collection接口的方法:...
-
amadeus 工作模式
在amadeus工作了一年多了,很喜欢这里的工作环境,我们组是分为两个部分的,九个人在法国,其中一个实习生,七个人在印度。所以经常需要电话或者视频会议,或者单独的电话,chat讨论东西。 每天都在学习着新的知识。每天都有着不同的挑战。 我们所使用的开发语言是java。 技术关键字: Hibernate,Spring,Maven,Oracle,Drool,Jekins.... Amadeus是很成熟的软件开发公司,对很多流程都有着很成熟的步骤。比如Win@proach来追踪bug处理进度,可能是测试团队发来bug,也可能是客户直接发来。比如Jekins来负责日常构建,跑测试,部署等。比如Git/Stash来进行版本开发。比如ErrorViewer来观测不同平台的错误信息。比如Sentinel来检测报警信息等。...
-
Oracle 效率 Cost Based Optimizer (第二部分)
严禁转载,使用请注明出处:http://alex2012-c.j.overblog.com/ 参加公司Oracle Optimization的三天培训,总结了报告。第二部分。 CBO and execution plans Execution plan & statistics Plan to access the data (access path), Oracle evaluate several and selects the cheapest (cost based). Time shown...
-
UnitTest Gmock
Unit test 是工作中新学到的东西,非常有必要,保证每个单元程序正常运行。其中Mockito是很好用的。 一、什么是mock测试,什么是mock对象? 先来看看下面这个示例: 从上图可以看出如果我们要对A进行测试,那么就要先把整个依赖树构建出来,也就是BCDE的实例。 一种替代方案就是使用mocks 从图中可以清晰的看出 mock对象就是在调试期间用来作为真实对象的替代品。 mock测试就是在测试过程中,对那些不容易构建的对象用一个虚拟对象来代替测试的方法就叫mock测试。 二、什么是Mockito...
-
Master Project - NoSQL 工具
严禁转载,使用请注明出处:http://alex2012-c.j.overblog.com/ 主要是研究不同类型的数据库,找一个通用的API还操作不同类型的NoSQL,最终选择了Kundera来操作Cassandra/HBase/MongoDB A l’issue des études qu’on a effectuées sur les différentes API d’exploitation relative à chaque modèle de base de données on a...
-
interface/abstract class in java
在Java语言中,abstract class和interface是支持抽象类定义的两种机制。正是由于这两种机制的存在,才赋予了Java强大的面向对象能力。abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换,因此很多开发者在进行抽象类定义时对于abstract class和interface的选择显得比较随意。其实,两者之间还是有很大的区别的,对于它们的选择甚至反映出对于问题领域本质的理解、对于设计意图的理解是否正确、合理。 abstract...
-
report about xml attribute
严禁转载,使用请注明出处: http://alex2012-c.j.overblog.com/ 组里的任务,自己写了一个研究报告,主要研究了现在的系统,已经给PM一个关于xml的指导。 1 Backward & Forward compatibility Designing XML Schemas to be backward or forward compatible is a popular approach to data versioning. In this chapter, some...
-
Hibernate 中的flush和commit
Spring中完成一个transaction之后,都会进行对数据的存储,但是有时候hibernate的bug导致必须手动重新存储一下,此时需要flush操作。flush作用是session中的缓存,把sql缓冲区的sql语句发送到数据库去。 flush()方法进行清理缓存的操作,执行一系列的SQL语句,但不会提交事务;commit()方法会先调用flush()方法,然后提交事务. 提交事务意味着对数据库所做的更新会永久保持下来 所谓清理,是指Hibernate 按照持久化象的状态来同步更新数据库...
-
Spring 基础
首先Spring提供的功能有: Inversion of control (IOC): Loose coupling is achieved in spring using the technique Inversion of Control. The objects give their dependencies instead of creating or looking for dependent objects. Aspect oriented (AOP): Spring supports...
-
数组总结 c++
char a [5];分别是a[0],a[1],a[2],a[3],a[4]。 char name[]=”Ray Krebbs”; char name[11]=”Ray Krebbs”;系统将自动在字符串末尾添上结束标志’\0’。 数组初始化时,用作初始化的数组元素值放在一个大括号{}中,例如: int a[3]={ 1, 1, l }; //含三个元素的整型数组,元素的值都是1。 int b[5]={1, 2, 3 }; //可以只给部分(本例为前3个元素)赋值。 int a[]={1, 1,...
-
Java中遍历list删除特定元素
在项目开发中,我们可能往往需要动态的删除ArrayList中的一些元素。 最容易,最简单也是错误的方法是: for(int i = 0 , len= list.size();i
-
XML/JSON 比较
严禁转载,使用请注明出处:http://alex2012-c.j.overblog.com/ 毕业论文一部分,比较了XML/JSON的区别,并且实际测试了二者传输所需要的时间: Un système distribué est constitué d’un ensemble de postes de travail et de périphériques (avec ou sans des architectures matérielles et des systèmes d’exploitations...
-
Comparaison de licences open source
1 Introduction J’ai fait une étude sur les licences de logiciels les plus répandues afin de déterminer les licences de logiciel qui seront le mieux adaptées pour être utilisées dans le projet industriel ; sachant que la contrainte principale est qu’aucun...
-
NoSQL 数据操作工具比较
-
functional tests multi thread 多线程运行测试程序
为保证系统正常运行,实际工作中经常需要写功能测试Functional Tests。但是随着系统的成熟,test case越来越多,所以所需要的test越来越多。 例如我们的系统有将近1000+个测试程序。有些测试程序需要wait,pause等,如果单线程运行程序可能会花十几个小时,甚至几十个小时。所以必须使用多线程。 使用maven只需要在pom文件中进行简单的配置即可。
中定义 进行配置。 所有测试程序分为三类: 1.可以并行执行 2.不可以并行执行(会对其他测试进行影响)... -
DTO generate
如何从xsd文件生成java DTO文件? D:\Java\jdk1.7.0_25\bin\xjc.exe D:\test\test.xsd -d D:\test xjc where xsd locats para where you want to put results 或者用maven build。 在xsd工程中 使用 mvn clean install
-
两种操作NoSQL工具的比较Helenos/DataOps
from my study
-
HelloWorld service deployment. Eclipse and Tomcat
refer : http://www-inf.it-sudparis.eu/~nguyen_n/teaching_assistant/web_services/simple_web_service_deployment_with_eclipse_and_tomcat_server Setting up Tomcat on Eclipse Download and extract Tomcat (suppose version 7.0.12) on your machine. Open the server...
-
HQL-hibernate 管理
使用请注明出处:http://alex2012-c.j.overblog.com/ 使用hibernate用java对数据库进行操作,通常在一个DAO中会有很多很多HQL的查询语句,长期下去语句越来越多,不断的修改,导致有些语句已经不用了,但是还是依然在代码中。对代码的维护造成了很大的麻烦。 在这里提出一个建议,可以把每一个语句建为一个class,这样非常有利于维护。建议文档,以airport IT application为例: Context When you are working with...