JavaWeb网上图书商城完整项目-CommonUtils(1生成uuid,2Map转换成JavaBean)

java工程中添加上面的jar包

CommonUtils类就两个方法:

l  String uuid():生成长度32的随机字符,通常用来做实体类的ID。底层使用了UUID类完成;

l  T toBean(Map, Class<T>):把Map转换成指定类型的Bean对象。通常用来获取表单数据(request.getParameterMap())封装到JavaBean中,底层使用了common-beanutils。注意,本方法要求map中键的名称要与Bean的属性名称相同才能完成映射,否则不能完成映射。

程序的代码:

/**
     * 随机生成32位长的字符串,通常用来做实体类的ID
     */
    @Test
    public void testUuid() {
        String s = CommonUtils.uuid();//生成随机32位长的字符串
        System.out.println(s);
    }
    
    /**
     * 把Map类型映射成Bean类型。
     * 要求map中键的名称与Person类的属性名称相同。
     * 即map的key分别为:pid、name、age、birthday,person的属性名称也是pid、name、age、birthday
     */
    @Test
    public void testToBean() {
        Map<String,String> map = new HashMap<String,String>();
        /*
         * map的key:pid、age、birthday、myname
         * person的属性:pid、age、birthday、name
         * map中没有名为name的键值,而多出一个名为myname的键值,所以映射后的person对象的name属性值为null。
         * map中的age和birthday都是字符串类型,而person的age是int类型、birthday是Date类型,但toBean()方法会自动对Map中值进行类型转换。
         */
        map.put("pid", CommonUtils.uuid());
        map.put("age", "23");
        map.put("birthday", "2014-01-30");
        map.put("myname", "张三");
        
        Person p = CommonUtils.toBean(map, Person.class);
        System.out.println(p);
    }
原文地址:https://www.cnblogs.com/kebibuluan/p/6774616.html