`

java中的一些基础知识实例

 
阅读更多

1> java中验证ip的格式

  

   Pattern pattern = Pattern.compile("^(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|[1-9])\\."
                    + "(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|\\d)\\."
                    + "(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|\\d)\\."
                    + "(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|\\d)$");
            Matcher matcher = pattern.matcher(text);
            if(matcher.matches()){
                return true;
            }else{
                log.error("format ip is error");
            }

 

2> java中判断文件大小

     

InputStream stream = new FileInputStream(dir + "\\" + dest
						+ ".xls");
				long size=stream.available();
 

 

 3>Java 中 Map与JavaBean之间的相互转化

在做导入的时候,遇到了需要将map对象转化 成javabean的问题,也就是说,不清楚javabean的内部字段排列,只知道map的 key代表javabean的字段名,value代表值。

那现在就需要用转化工具了。是通用的哦!

首先来看 JavaBean 转化成Map的方法:

/**
     * 将一个 JavaBean 对象转化为一个  Map
     * @param bean 要转化的JavaBean 对象
     * @return 转化出来的  Map 对象
     * @throws IntrospectionException 如果分析类属性失败
     * @throws IllegalAccessException 如果实例化 JavaBean 失败
     * @throws InvocationTargetException 如果调用属性的 setter 方法失败
     */
    @SuppressWarnings({ "rawtypes", "unchecked" })
	public static Map convertBean(Object bean)
            throws IntrospectionException, IllegalAccessException, InvocationTargetException {
        Class type = bean.getClass();
        Map returnMap = new HashMap();
        BeanInfo beanInfo = Introspector.getBeanInfo(type);

        PropertyDescriptor[] propertyDescriptors =  beanInfo.getPropertyDescriptors();
        for (int i = 0; i< propertyDescriptors.length; i++) {
            PropertyDescriptor descriptor = propertyDescriptors[i];
            String propertyName = descriptor.getName();
            if (!propertyName.equals("class")) {
                Method readMethod = descriptor.getReadMethod();
                Object result = readMethod.invoke(bean, new Object[0]);
                if (result != null) {
                    returnMap.put(propertyName, result);
                } else {
                    returnMap.put(propertyName, "");
                }
            }
        }
        return returnMap;
    }

 下面是将Map转化成JavaBean对象的方法:

/**
     * 将一个 Map 对象转化为一个 JavaBean
     * @param type 要转化的类型
     * @param map 包含属性值的 map
     * @return 转化出来的 JavaBean 对象
     * @throws IntrospectionException 如果分析类属性失败
     * @throws IllegalAccessException 如果实例化 JavaBean 失败
     * @throws InstantiationException 如果实例化 JavaBean 失败
     * @throws InvocationTargetException 如果调用属性的 setter 方法失败
     */
    @SuppressWarnings("rawtypes")
	public static Object convertMap(Class type, Map map)
            throws IntrospectionException, IllegalAccessException,
            InstantiationException, InvocationTargetException {
        BeanInfo beanInfo = Introspector.getBeanInfo(type); // 获取类属性
        Object obj = type.newInstance(); // 创建 JavaBean 对象

        // 给 JavaBean 对象的属性赋值
        PropertyDescriptor[] propertyDescriptors =  beanInfo.getPropertyDescriptors();
        for (int i = 0; i< propertyDescriptors.length; i++) {
            PropertyDescriptor descriptor = propertyDescriptors[i];
            String propertyName = descriptor.getName();

            if (map.containsKey(propertyName)) {
                // 下面一句可以 try 起来,这样当一个属性赋值失败的时候就不会影响其他属性赋值。
                Object value = map.get(propertyName);

                Object[] args = new Object[1];
                args[0] = value;

                descriptor.getWriteMethod().invoke(obj, args);
            }
        }
        return obj;
    }

 

分享到:
评论

相关推荐

    java基础知识运用实例

    Java作为一门广泛使用的编程语言,其基础知识是每个开发者必须掌握的核心技能。本实例集主要针对初学者和进阶者,旨在通过实际...通过解决这些例题,你将能够熟练地运用Java基础知识,为更高级的开发工作打下坚实基础。

    Java基础知识实例

    本实例集将深入探讨Java基础知识,帮助初学者和开发者巩固对Java的理解。以下是对这些基础概念的详细阐述: 1. **变量与数据类型**: - Java中的变量用于存储数据,分为基本数据类型(如int、char、boolean)和...

    Java基础编程实例

    Java基础编程实例是Java初学者入门的绝佳资源,它涵盖了Java语言的核心概念和技术。这个教程旨在帮助新手理解并掌握Java编程的基本元素,从而能够独立编写简单的程序。以下是一些主要的知识点: 1. **Java环境配置*...

    java基础知识的培训ppt

    java基础知识的培训ppt,对于java初学者来说可以有一些作用。

    徐明浩java编程基础应用与实例代码

    总的来说,《徐明浩java编程基础应用与实例代码》是一本实用的教程,它不仅教授了Java编程的基础知识,还提供了大量的实例来帮助读者巩固所学,是学习Java编程的理想参考资料。无论是初学者还是希望提升技能的开发者...

    java基础代码实例_1

    这份资料能够帮助初学者通过亲自动手编写和运行代码,来加深对Java基础知识点的理解,如变量、数据类型、控制结构(if语句、for循环等)、函数、类和对象等。这些基础概念的掌握,对后续学习至关重要。 举个例子,...

    java基础编程实例源码

    java基础编程实例源码:是本人java学习总结之经典源码,涵盖java基础的核心知识点,分享给选择java之路的仁人志士(初级,中级),希望对大家有所帮助! 谢谢大家

    Java语言基础实例

    Java语言基础实例是针对初学者精心...通过这些基础知识的学习和实例的实践,你可以逐步掌握Java编程,为更高级的Java应用开发打下坚实的基础。在学习过程中,不断练习和理解这些概念,你将成为一名熟练的Java开发者。

    电子备忘录java基础知识综合实例包含大部分基础知识

    在电子备忘录的Java基础知识综合实例中,我们主要探讨的是如何使用Java语言来构建一个图形用户界面(GUI)的应用程序。GUI是用户与计算机进行交互的重要方式,它通过按钮、文本框、菜单等可视化元素使得操作更加直观...

    java的一些基础知识

    Java是一门广泛应用于企业级应用开发的编程...以上就是从提供的文件名中提炼出的Java基础知识,包括框架使用、数据库操作、Web开发等多个方面。深入理解并熟练掌握这些知识点对于成为一个合格的Java开发者至关重要。

    Java程序实例 包括Java各知识点的实例

    压缩包中的"开发大全程序"包含以上各个知识点的实例,通过实际操作和调试这些代码,你将能够巩固理论知识,提升编程技能,更好地适应Java开发环境。无论是对初学者还是经验丰富的开发者来说,这些实例都是一份宝贵的...

    JAVA基础实例200题.rar

    《JAVA基础实例200题》是一份针对Java初学者及进阶者的重要学习资源,它包含了200个精心设计的编程实例,旨在帮助学习者深入理解和掌握Java语言的基础知识。这些实例覆盖了Java语言的各个核心概念,包括但不限于变量...

    JAVA基础实例200题

    "JAVA基础实例200题"很显然是一份针对初学者或希望巩固Java基础知识的学习资料,它包含了200个不同的练习题目,旨在帮助学习者通过实践来理解和掌握Java的基础概念。 在Java的学习过程中,基础是非常关键的部分,它...

    java语言基础 详解 java实例20

    Java语言基础是编程学习的重要部分,它为程序员提供了构建复杂应用程序的基础。在这个“Java语言基础 详解 java实例20”中,我们将深入探讨...无论是初学者还是有经验的开发者,对基础知识的牢固掌握都是至关重要的。

    JAVA基础知识总结

    Java基础知识总结涵盖了Java程序设计语言的核心概念和常用知识点。在详细学习和总结这些知识点之前,首先需要对Java有一个整体的认识。Java是一种面向对象的编程语言,它具有跨平台的特性,即“一次编写,到处运行”...

    Java Web开发实例大全.基础卷

    基础卷》是一本深入浅出的教程,旨在为读者提供全面的Java Web开发基础知识。本书涵盖了从入门到实践的关键技术,是初学者和有一定经验的开发者提升技能的理想参考资料。标签“Java”明确了本书的核心内容,即Java...

    JAVA入门基础知识

    ### JAVA入门基础知识详解 #### 一、对象与类的基础概念 在Java编程中,对象(Object)是最基本的概念之一,...通过以上内容的学习,读者可以对Java中的基本概念有更深入的理解,从而更好地掌握Java编程的基础知识。

    Java核心技术 卷1 基础知识 原书第10版

    《Java核心技术 卷1 基础知识》是Java编程领域的经典著作,原书第10版更是汇集了多年来Java语言发展的精华。本书主要涵盖了Java编程的基础知识,为读者提供了全面而深入的理解Java编程环境的必备知识。 首先,Java...

Global site tag (gtag.js) - Google Analytics