dozer- JavaBean對映工具
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() {
}
}
bookMapper.xml配置檔案,用來對DozerBeanMapper進行設定。
<?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 fredia
* @version Aug 17, 2017
*/
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());
}
}
相關文章
- 思考工具之概念對映 | Untools
- Linux下埠對映工具rinetdLinux
- 5種常見Bean對映工具的效能比對Bean
- JavaBean的值複製工具JavaBean
- Java實體對映工具MapStruct詳解JavaStruct
- 常用集中內網穿透&埠對映軟體工具內網穿透
- Java實體對映工具MapStruct使用詳解JavaStruct
- 7 個流行的.Net開發ORM對映工具ORM
- 多重對映
- MyBatis(四) 對映器配置(自動對映、resultMap手動對映、引數傳遞)MyBatis
- 修改對映地址
- Mybatis學習筆記(5)-高階對映之多對多對映MyBatis筆記
- 埠對映,內網網站對映外網訪問,透過80埠對映實現內網網站
- [非專業翻譯] Mapster - 對映前&對映後
- DDD設計工具:上下文對映器ContextMapperContextAPP
- Java實體對映工具MapStruct 與BeanUtils效能比較JavaStructBean
- Mybatis學習筆記(4)-高階對映之一對多對映MyBatis筆記
- Mybatis學習筆記(3)—高階對映之一對一對映MyBatis筆記
- Linux埠對映是什麼?如何進行埠對映?Linux
- JPA關係對映系列四:many-to-many 關聯對映
- javabeanJavaBean
- Mybatis結果對映MyBatis
- VMware Fusion 埠對映
- Docker-埠對映Docker
- Nginx埠對映配置Nginx
- ElasticSearch中的對映Elasticsearch
- TypeScript 對映型別TypeScript型別
- 記憶體對映記憶體
- hibernate 元件對映元件
- NDK java的對映Java
- 對映本地圖片地圖
- mmap共享儲存對映(儲存I/O對映)系列詳解
- IP對映原理及怎樣把內網IP對映外網內網
- Dozer物件對映框架Map到JSONString對映問題排查物件框架JSON
- Mybatis處理列名—欄位名對映— 駝峰式命名對映MyBatis
- mybatis入門基礎(四)----輸入對映和輸出對映MyBatis
- Cache與主存之間的直接對映,全相聯對映和組項聯對映以及其地址變換
- linux下簡單好用的埠對映轉發工具rinetdLinux