首页 / JAVA / JavaBean规范
JavaBean规范
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了JavaBean规范,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1994字,纯文字阅读大概需要3分钟。
内容图文
![JavaBean规范](/upload/InfoBanner/zyjiaocheng/853/9dea351fb976463598a8d19aabcd0439.jpg)
JavaBean必须要为成员提供get/set方法,只提供其中的一个也是可以的,必须要有一个无参构造器,一般对于具有get或这个set方法的成员我们称之为属性,就算一个属性,没有对应的成员变量只有get/set方法,也是可以的。只有get方法的属性我们称为只读属性,属性的名称是get/set方法去除get/set之后,再将首字母变小写之后的名称,由set/get方法的名称来决定属性名称,而不是成员变量名,但是一般都是一致的。boolean类型的属性的get方法可以是is或者get开头。
package yu.bean; /** * @Auther yusiming * @Date 2018/10/12 20:30 */ public class Person { private String name; private int age; private String gender; // 必须提供无参构造器 public Person() { } public Person(String name, int age, String gender) { this.name = name; this.age = age; this.gender = gender; } // 这个方法没有对应的成员,但是id也是一个属性 public int getId() { return 11; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getGender() { return gender; } public void setGender(String gender) { this.gender = gender; } }
内省
内省就是通过反射来操作javaBean,但是内省使用起来更加方便一点,因为它掩盖了反射的操作,内省的过程,Introspector这个类叫做内省类
public class Test { public static void main(String[] args) { Person person = new Person(); try { // BeanInfo是一个javaBean类型的信息类 BeanInfo beanInfo = Introspector.getBeanInfo(Person.class); // 通过BeanInfo可以得到所有的属性描述符对象, PropertyDescriptor[] propertyDescriptors = beanInfo.getPropertyDescriptors(); Method readMethod = propertyDescriptors[0].getReadMethod(); Method writeMethod = propertyDescriptors[0].getWriteMethod(); writeMethod.invoke(person, 11); System.out.println(person.toString()); } catch (Exception e) { e.printStackTrace(); } } }
但是这样操作bean还是太麻烦了,我们可以使用Apache提供的工具,commons-beanutils来完成对bean的操作,commons-beanutils对内省进行了进一步的封装,使得对bean的操作更加方便,要使用commons-beanutils首先要导入JAR包:
- commons-beanutils.jar
- commons-logging.jar
内容总结
以上是互联网集市为您收集整理的JavaBean规范全部内容,希望文章能够帮你解决JavaBean规范所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。