Dozer-JavaBean映射工具

dozer官网:http://dozer.sourceforge.net/documentation/gettingstarted.html

1、简介 
    dozer是一种JavaBean的映射工具,类似于apache的BeanUtils。但是dozer更强大,它可以灵活的处理复杂类型之间的映射。不但可以进行简单的属性映射、复杂的类型映射、双向映射、递归映射等,并且可以通过XML配置文件进行灵活的配置。 

2、准备 
   现在开始就小试一下。 
   首先,需要下载jar包, 
   dozer.jar :http://dozer.sourceforge.net/downloading.html 
   还需要slf4j.jar,commons-lang.jar,commons-beanutil.jar, commons-loggin.jar 

3、代码 
   两个bean     

public class Book {  
    private String name;  
    private String author;  
  
    public String getName() {  
        return name;  
    }  
  
    public void setName(String name) {  
        this.name = name;  
    }  
  
    public String getAuthor() {  
        return author;  
    }  
  
    public void setAuthor(String author) {  
        this.author = author;  
    }  
  
    public Book() {  
    }  
}
public class BookVo {  
    private String namevo;  
    private String authorvo;  
  
    public String getNamevo() {  
        return namevo;  
    }  
  
    public void setNamevo(String namevo) {  
        this.namevo = namevo;  
    }  
  
    public String getAuthorvo() {  
        return authorvo;  
    }  
  
    public void setAuthorvo(String authorvo) {  
        this.authorvo = authorvo;  
    }  
  
    public BookVo() {  
    }  
}
<?xml version="1.0" encoding="UTF-8"?>  
<mappings xmlns="http://dozer.sourceforge.net"  
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
       xsi:schemaLocation="http://dozer.sourceforge.net  
       http://dozer.sourceforge.net/schema/beanmapping.xsd">  
         
       <mapping>  
        <class-a>test.Book</class-a>  
        <class-b>test.BookVo</class-b>  
        <field>  
            <a>name</a>  
            <b>namevo</b>  
        </field>  
        <field>  
            <a>author</a>  
            <b>authorvo</b>  
        </field>  
       </mapping>  
 </mappings>

测试类:

package test;  
  
import java.util.ArrayList;  
import java.util.List;  
  
import org.apache.commons.logging.Log;  
import org.apache.commons.logging.LogFactory;  
import org.dozer.DozerBeanMapper;  
  
/** 
 * 说明: 
 *  
 * @author lsr 
 * @version Aug 17, 2011 
 */  
public class DozerTest {  
    /** 
     * @param args 
     */  
    public static void main(String[] args) {  
        testByXml();  
    }  
      
    public static void testByXml() {  
        Book book = new Book();  
        book.setAuthor("lsr");  
        book.setName("dozer demo");  
        DozerBeanMapper mapper = new DozerBeanMapper();  
        List<String> mappers = new ArrayList<String>();  
        mappers.add("bookMapper.xml");  
        mapper.setMappingFiles(mappers);  
        BookVo vo = new BookVo();  
        mapper.map(book, vo);  
        System.out.println("book's name:" + book.getName());  
        System.out.println("bookVo's name:" + vo.getNamevo());  
    }  
  
}


转载于:https://my.oschina.net/elain/blog/415074

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值