# 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/)