# map2bean
**Repository Path**: a114533627/map2bean
## Basic Information
- **Project Name**: map2bean
- **Description**: Map转JavaBean、JavaBean转JavaBean,JavaBean转Map 工具包。开发此工具的主要原因:当HttpServletRequest 对象中的请求参数,转成Map后,(为什么要这么做,在param-validate项目中有阐述),需要将Map转成JavaBean。而JavaBean中的属性类型是多样的,需要做复杂的处理,于是就参考spirngMvc的参数自动注入实现,就写了这样的一个工具类。随便还集合了JavaBean转JavaBean(当属性名一样,属性类型不一样;或者属性的数量不一样时的转换)
- **Primary Language**: Java
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 3
- **Forks**: 0
- **Created**: 2018-07-15
- **Last Updated**: 2022-03-23
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# map2bean
#### 项目介绍
Map转JavaBean、JavaBean转JavaBean,JavaBean转Map 工具包。开发此工具的主要原因:当HttpServletRequest 对象中的请求参数,转成Map后,(为什么要这么做,在param-validate项目中有阐述),需要将Map转成JavaBean。而JavaBean中的属性类型是多样的,需要做复杂的处理,于是就参考spirngMvc的参数自动注入实现,就写了这样的一个工具类。随便还集合了JavaBean转JavaBean(当属性名一样,属性类型不一样;或者属性的数量不一样时的转换)
#### 软件架构
软件架构说明
#### 安装教程
1. 下载该源码,导入到有maven支持的开发工具中
2. mvn - install 安装到本地仓库
#### 使用说明
1. maven工程中的使用:
在需要用到的maven工程的pom.xml中引入该依赖。
my.xh
map2bean
2.0
2. 在非maven工程中,需要在本地仓库中找到map2bean-2.0.jar,引入工程的classpath中
3. 获取工具类的单例对象,调用相应方法,即可。
获取单例对象,调用其转换方法即可。
getBean有两种重载的方法,如下:
***
```
Map转javabean
/**
*
* @param
* @param entityClass
* @param map
* @param entity 可以为空。当entity不为空,且为entityClass类型的对象时,该方法,会把map中的值,赋值到entity对象中。
* @return
* @throws Exception
*/
public T getBean(Class entityClass, Map map, Object entity) throws Exception;
```
***
```
Javabean转javabean:
/**
*
* @Title: getBean
* @Description: TODO 将javaBean的属性的值赋给entityClass的对象中的同名属性
* @param: @param entityClass
* @param: @param javaBean
* @param: @return
* @return: T
* @throws IllegalAccessException
* @throws InstantiationException
* @throws
* @date 2018年4月20日 上午7:53:12 @author xuanhu
*/
public T getBean(Class entityClass,Object javaBean) throws Exception
```
***
```
Javabean转map
/**
*
* @Title: getMap
* @Description: 把bean中有getter方法的属性放入 map集合中,如果参数map为空,则创建一个Map返回
* @param entity
* @return
* @throws Exception
* @return: Map
* @date 2018年7月10日 上午10:35:51 @author xuanhu
*/
public Map getMap(Object entity,Map map) throws Exception;
```
***
```
例:
TPointLevel tPointLevel2 = Map2Bean.getInstance().getBean(TPointLevel.class, mapByRequest,null);
```
***
4.@DateFormat注解的使用
它的作用:标明,Map转JavaBean时,Map中的日期字符串,以什么样的格式来进行转换然后赋值给javaBean的日期字段。
使用方法:在JavaBean的类的Date类型的属性上加上此注解,例:
@DateFormat("dd-MM-yyyy")
private Date crateDate;
#### 参与贡献
#### 码云特技
1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md
2. 码云官方博客 [blog.gitee.com](https://blog.gitee.com)
3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解码云上的优秀开源项目
4. [GVP](https://gitee.com/gvp) 全称是码云最有价值开源项目,是码云综合评定出的优秀开源项目
5. 码云官方提供的使用手册 [http://git.mydoc.io/](http://git.mydoc.io/)
6. 码云封面人物是一档用来展示码云会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)