org.apache.commons.beanutils.Beanutils;
  Beanutils
    setProperty(Object obj,String name,Object value)
      Object obj:被赋值的对象
      String name:属性名
      Object value:属性值
    getProperty(Object obj,String name) 获取指定属性的属性值
      Object obj: 对象
      String name: 属性名

    populate(Object bean, Map<String,String[]> properties)
      Map数据封装到指定Javabean中
      Object bean: 要将数据封装的javaBean对象
      Map<String, String[]> properties
        key: 属性名
        value:String[]:属性值
        properties.put("属性名",new String[]{"属性值"})

熟练运用三种读取从配置文件读取数据封装到javaBean中

A:用properties文件封装键值对数据,直接用集合properties进行读取和解析

B:用xml配置文件封装数据,用DOM解析进行读取(需要用到dom4j.jar辅助工具包)

C:用注解@Interface进行数据封装,用反射进行数据读取

单例模式

  饿汉式:

    私有构造方法,自己创建一个唯一对象(private static),提供对外访问的方法得到对象

  懒汉式:

    私有构造方法,判断对象是否为空,需要用到线程同步(放置判断到为空之后另一个线程也为空就会初始化两次)

public class Single {
  //private私有 static静态唯一
  private static Single s = new Single();
  

  //私有化构造方法
  private Single(){
  }
  //必须设置为静态的,不然外界无法访问
  public static Single getSingle(){
    return s;
  }
}

Beanutils工具类,封装数据的三种方式,单例模式的更多相关文章

  1. Linux就这个范儿 第15章 七种武器 linux 同步IO: sync、fsync与fdatasync Linux中的内存大页面huge page/large page David Cutler Linux读写内存数据的三种方式

    Linux就这个范儿 第15章 七种武器  linux 同步IO: sync.fsync与fdatasync   Linux中的内存大页面huge page/large page  David Cut ...

  2. ios网络学习------4 UIWebView的加载本地数据的三种方式

    ios网络学习------4 UIWebView的加载本地数据的三种方式 分类: IOS2014-06-27 12:56 959人阅读 评论(0) 收藏 举报 UIWebView是IOS内置的浏览器, ...

  3. Linux就这个范儿 第18章 这里也是鼓乐笙箫 Linux读写内存数据的三种方式

    Linux就这个范儿 第18章  这里也是鼓乐笙箫  Linux读写内存数据的三种方式 P703 Linux读写内存数据的三种方式 1.read  ,write方式会在用户空间和内核空间不断拷贝数据, ...

  4. MATLAB 显示输出数据的三种方式

    MATLAB 显示输出数据的三种方式 ,转载 https://blog.csdn.net/qq_35318838/article/details/78780412 1.改变数据格式 当数据重复再命令行 ...

  5. ajax数据提交数据的三种方式和jquery的事件委托

    ajax数据提交数据的三种方式 1.只是字符串或数字 $.ajax({ url: 'http//www.baidu.com', type: 'GET/POST', data: {'k1':'v1'}, ...

  6. Struts2(四.注册时检查用户名是否存在及Action获取数据的三种方式)

    一.功能 1.用户注册页面 <%@ page language="java" contentType="text/html; charset=UTF-8" ...

  7. 利用BeanUtils工具类封装表单数据

    一.BeanUtils工具类的使用 1.首先导入BeanUtils工具类的jar包 commons-beanutils-1.8.0.jar commons-logging-1.1.1.jar 2.se ...

  8. iOS --- UIWebView的加载本地数据的三种方式

    UIWebView是IOS内置的浏览器,可以浏览网页,打开文档  html/htm  pdf   docx  txt等格式的文件.  safari浏览器就是通过UIWebView做的. 服务器将MIM ...

  9. android sqlite使用之模糊查询数据库数据的三种方式

    android应用开发中常常需要记录一下数据,而在查询的时候如何实现模糊查询呢?很少有文章来做这样的介绍,所以这里简单的介绍下三种sqlite的模糊查询方式,直接上代码把: package com.e ...

随机推荐

  1. App响应式布局

    1.手机的响应式布局,所有的单位用rem来表示. 如:设计稿的宽度是750,则html标签的font-size=屏幕宽度/7.5.那么在网页中的尺寸 = 设计高上实际的尺寸/100. 把下面的代码作为 ...

  2. python:列表、元组和字典

    1.1.特点:   任意对象的有序集合   通过偏移量读取   可变长度,异构以及任意嵌套   属于可变序列的分类   对象引用数组:当把一个对象赋给一个数据结构元素或变量名时,python总会存储对 ...

  3. flutter 卡在Running Gradle task 'assembleDebug'...

    Android项目运行时出错 卡在Initializing gradle… 运行时会卡在Initializing gradle..., 此时因为Android项目会用到Gradle, 如果没有FQ,下 ...

  4. (转)OpenFire源码学习之十:连接管理(上)

    转:http://blog.csdn.net/huwenfeng_2011/article/details/43415827 关于连接管理分为上下两部分 连接管理 在大并发环境下,连接资源 需要随着用 ...

  5. linux下vim编辑器查找 关键字

    在  linux  vim 编辑器 下查找   关键字 方法[一] 1?short_open_tag : 它的意思是vim 打开文件的第一行 ? : 它的意思是反向查找 short_open_tag ...

  6. C++之string面试问题

    1.指针变量指向字符串常量的问题 代码如下: "; 问p[0]=2;是否可以?原因? 答案:不可以.“123456”是字符串常量,存储在常量区,其值不可更改. 2.sizeof求字符串长度问 ...

  7. python re.findall 使用

    python re.findall 使用 import re #\w 匹配字母数字及下划线 print(re.findall('\w','hello alan _god !@^&#^$^!*& ...

  8. Linux权限简析

  9. Airbnb React/JSX 编码规范

    Airbnb React/JSX 编码规范 算是最合理的React/JSX编码规范之一了 内容目录 基本规范 Class vs React.createClass vs stateless 命名 声明 ...

  10. sublime Text3安装及配置与解决安装插件失败

    1.下载sublime Text3的官网:https://www.sublimetext.com/32.安装Package Control   下载Package Contoral地址: 链接:htt ...