Skip to Main Content

Java Programming

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Orika vs JMapper - how it works and a speed difference - why ?

user5970066Feb 27 2014 — edited Feb 27 2014

Hi,

I have downloaded and testing these two mapping libraries. I wrote a program which has 100000 iterations and maps the beans of the same class:

public class IntBean {

    @JMap

    private int int1;

    @JMap

    private int int2;

    @JMap private int int3;

    @JMap private int int4;

    @JMap private int int5;

    @JMap private int int6;

    @JMap private int int7;

    @JMap private int int8;

    @JMap private int int9;

    @JMap private int int10;

}

Mappers are created BEFORE iterations start:

    private JMapper jmapper = new JMapper(IntBean.class, IntBean.class);

    private MapperFactory orikaFactory = new DefaultMapperFactory.Builder().build();

    private MapperFacade orikaFacade = null;

orikaFactory.registerClassMap(orikaFactory.classMap(IntBean.class,IntBean.class).byDefault().toClassMap());
    orikaFacade = orikaFactory.getMapperFacade();

What is in each iteration:
this.orikaFacade.map(a1, a2);

or

a2 =  (A) this.jmapper2.getDestination(a1);

I know, that Orika and Jmapper are great libraries from Google and they use reflection in a different way than for example Dozer, which is much slower, they se reflection to generete code somehow..

I have 3 questions:
1) How they work - when the code is generated, during maven build, in runtime - everytime when I create mapper in code? Are they change class code byte dynamically?

2) Why there is this speed difference that I noticed?

3) Which library would you choose and why? Both have the same capabilities? Why both come from Google? Why Google didnt develop Orika and created Jmapper instead?

Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Mar 27 2014
Added on Feb 27 2014
2 comments
813 views