`
sbl2255
  • 浏览: 218591 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java.beans 写法

    博客分类:
  • jdk
 
阅读更多
根据JDK说明,先说说这几个class的用途:

1.Introspector
  通过这个类可以分析Bean的类和超类,寻找显式和隐式信息

  方法:Introspector.flushCaches() 刷新所有 Introspector 的内部缓存

(详细见JDK-API)

2.BeanInfo

  API解释:"希望提供有关其 bean 的显式信息的 bean 实现者可以提供某个 BeanInfo 类,该类实现此 BeanInfo 接口并提供有关其 bean 的方法、属性、事件等显式信息。 "

3.PropertyDescriptor
描述 Java Bean 通过一对存储器方法导出的一个属性,通俗点就是Bean中的方法

简单的Bean操作代码如下:

/**
	 * @param args
	 * @throws Exception 
	 */
	public static void main(String[] args) throws Exception {
		LoaderClass c = new LoaderClass();
		TestBean t = (TestBean) c.setBean();
		System.out.println("age:"+t.getAge());
		System.out.println("id:"+t.getAge());
		System.out.println("name:"+t.getAge());
	}
	
	
	public Object setBean() throws Exception{
		Object t = null;
		try {
			t = TestBean.class.newInstance();
		} catch (InstantiationException e1) {
			e1.printStackTrace();
		} catch (IllegalAccessException e1) {
			e1.printStackTrace();
		}
		BeanInfo info = Introspector.getBeanInfo(TestBean.class);
		PropertyDescriptor[] pro = info.getPropertyDescriptors();
		for(int a=0;a<pro.length;a++){
			if(pro[a].getName().equals("class")){
				continue;
			}
			Method method = pro[a].getWriteMethod();
			Object[] param = new String[]{"A"};
			System.out.println(method.getName());
			try {
				method.invoke(t, param);
			} catch (IllegalArgumentException e) {
				e.printStackTrace();
			} catch (IllegalAccessException e) {
				e.printStackTrace();
			} catch (InvocationTargetException e) {
				e.printStackTrace();
			}
		}
		return t;
	}

分享到:
评论

相关推荐

    commons-beanutils-1.8.3 API.chm

    一般情况下,在写一个Bean时,我们都要写上getXX和setXX方法,这样在读取和写入对象属性值时很方便,但有些场合下,比如动态访问Java对象属性时,上面的写法就不合适了,这样的一些场景例如: 1、当创建脚本语言与...

    java高级工程师面试题

    正确的写法应该是: ```sql SELECT u.name, s.subject, s.score FROM user AS u LEFT JOIN score AS s ON u.userid = s.userid WHERE u.userid = 1; ``` 2. **查询结果**:这条SQL语句将返回用户ID为1的学生...

    Spring集成MyBatis简单demo

    在Java Web开发中,Spring和MyBatis是两个非常重要的框架。Spring是一个全面的后端开发框架,提供了依赖注入、AOP(面向切面编程)、事务管理等功能;而MyBatis则是一个轻量级的持久层框架,它将SQL与Java代码分离,...

    Spring_事物的写法

    在Java应用中,事务是保证数据一致性和完整性的重要机制之一。Spring提供了对事务的一致性支持,能够简化开发人员对事务处理的操作,同时也确保了应用逻辑与事务管理之间的解耦。 ### 配置...

    gradleTest:gradleTest

    单例模式有八种写法java.lang.Runtime单例工具类对象,平凡访问数据库或文件对象 原型模式创建一摸一样对象,使用clone spring多例bean创建。 org.springframework.beans.factory.support.AbstractBeanFactory#...

    Spring_单元测试_2种写法

    在第一种写法中,我们使用了AbstractDependencyInjectionSpringContextTests这个抽象类,该类提供了对Spring的支持,可以自动装配 Beans 和加载ApplicationContext。下面是一个示例代码: ```java public class ...

    关于SpringXFire入门

    2. **熟悉配置文件**:掌握XFire配置文件的写法对于正确部署服务至关重要。 3. **测试与调试**:利用工具进行单元测试和服务调用测试,确保服务按预期工作。 4. **安全性考虑**:在实际部署中,需考虑服务的安全性...

    spring4.0 Generic Qualifier(泛型限定).docx

    以下是使用Spring 4.0泛型限定后的新Service写法: ```java package com.dxz.demo.generic.service.new; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype...

    java 面试题2

    13. **EJB2.0:**EJB2.0包含Session Beans、Entity Beans和Message-Driven Beans,主要用于企业级应用,提供事务、安全性、持久化等功能。EJB2.0相比EJB1.1增加了容器管理的持久化(CMP)等特性。 14. **MVC架构:**...

    JAVA面试宝典

    2. EJB(Enterprise Java Beans): EJB是Java中用于构建分布式、事务处理和安全的服务器端应用程序的组件模型。主要有三种类型: - Entity Bean:用于表示持久化的业务对象,与数据库记录对应。 - Session Bean...

    java面试宝典

    【Java面试宝典】是针对Java开发者准备面试的资料,涵盖了Java面试中常见的知识点,包括但不限于EJB(Enterprise Java Beans)、RMI(Remote Method Invocation)等。以下是对这些知识点的详细解析: 1. **EJB ...

    struts1.3例子

    本示例将带你深入了解Struts1.3的配置文件写法和调用方式,这对于初学者来说是非常基础且重要的知识。 ### 1. Struts1.3配置文件 Struts1.3的主要配置文件是`struts-config.xml`,它定义了Action、Form Bean、Data...

    spring常见错误

    nested exception is org.springframework.beans.NotWritablePropertyException` 此类错误通常发生在尝试设置一个不可写的属性值时。具体而言,当Spring容器试图通过setter方法将一个bean注入到另一个bean中时,...

    MyBatsi针对springMvc的jar

    3. Spring框架的库:spring-context-x.x.x.jar、spring-beans-x.x.x.jar、spring-jdbc-x.x.x.jar等,用于支持SpringMVC和MyBatis的协同工作。 4. 可能还有其他的依赖库,如slf4j日志库、mysql-connector-java.jar...

    2021-2022计算机二级等级考试试题及答案No.17383.docx

    - **知识点**: CSS 选择器的正确写法。 - **细节**: 正确的 CSS 语法是 `body { color: black; }`(选项 C 正确)。 ### 19. 逻辑表达式的优先级 - **知识点**: 逻辑表达式中的运算符优先级。 - **细节**: 逻辑...

    2021-2022计算机二级等级考试试题及答案No.4196.docx

    而`RD\A\C\B`用于删除目录,`TYPE\A\C\B\ABC.C`用于显示文件内容,`TYPEC\B\ABC.C`同样用于显示文件内容但路径写法不规范。 ### 8. 数据模型 - **关系模型**:使用二维表格形式表示实体及其关系的数据模型被称为...

    Spring XML配置十二个最佳实践

    &lt;constructor-arg type="java.lang.String" value="lizjason"/&gt; ``` 这种做法不仅提高了配置的准确性,也使得配置文件更加易于理解和维护。 #### 五、使用抽象Bean共享配置信息 通过将某些公共配置信息定义在...

    javaweb开发面试题

    - 在Struts-config.xml中,使用`&lt;form-beans&gt;`和`&lt;action-mappings&gt;`标签来配置表单bean和action映射。 2. **JSP中的注释**: - JSP支持两种注释方式:标准的HTML注释`&lt;!-- --&gt;`和隐藏注释`&lt;%-- --%&gt;`。其中,...

    JSP信息系统设计与开发实例

    - JSP 引擎将这些数据传递给指定的服务器端组件(如 JavaBeans、Servlet 或 Enterprise Beans)。 - 服务器端组件处理数据,并根据处理结果生成响应对象(`HttpServletResponse`)。 - JSP 引擎根据响应对象的内容...

Global site tag (gtag.js) - Google Analytics