对象自动装配器

一、有朋友说数据封装到对象很是麻烦,最喜欢hibernate的地方就是操作数据简单了。其实我想说的是框架都是对基本操作的高级封装。就如数据封装到对象,闲来无事,就简单做了个对象自动装配器。大家可以研究下。当然有兴趣的朋友可以进行功能扩充。

二、对象自动装配器,顾名思义就是通过简单的配置让程序帮我们把数据填充到对象。

三、很多朋友都知道,查询对象的步骤就是:获取数据库的连接-->构建查询语句-->获取PreparedStatement-->获取ResultSet结果集,最后我们就是把数据填充到对象,这时才可以操作对象。

四、一般我们填充对象:

			conn = DB.getConn();
			String sql = "select * from teacher";
			rs = DB.executeQuery(conn, sql);

			while(rs.next()){
				Teacher t = new Teacher();
				t.setTno(rs.getString("tno"));
				t.setDno(rs.getString("dno"));
				t.setTname(rs.getString("tname"));
				t.setProfess(rs.getString("profess"));
				t.setDname(rs.getString("dname"));
				t.setTel(rs.getString("tel"));
				t.setTsex(rs.getString("tsex"));
				t.setQq(rs.getString("qq"));

				list.add(t);
			}

五、查询语句我们在项目中可以说是经常用到,而填充对象数据量小些还没事,数据量一旦过多,不是出错就是恶心了。

六、而我所写的这个对象自动装配器实际就是为大家节省这部分封装对象的操作。

七、对象自动装配器使用案例:

1、创建AutoWise类,(大家可以在我上传的演示项目中提取该类即可)

2、在需要装配对象的地方使用:

new AutoWise<Book>().getObject("com.almostman.base.Book", books, set);

3、以上简单配置即可使用。

八、注意事项:

1、创建AutoWise时我们要传入对象的类型

2、getObject()方法的第一个参数是我们创建的对象的全局路径

3、getObject()方法的第二个参数是数据装配的对象的集合

4、getObject()方法的第三个参数是查询得到的ResultSet结果集

九、参考项目:http://download.csdn.net/detail/u011638419/8246731

最终解释权归找合伙人所有,转载请注明出处。?www.23hhr.com

时间: 2024-11-05 11:53:03

对象自动装配器的相关文章

javabean对象自动赋值给另一个javabean对象

方法1:把JavaBean的from的值自动set给to,省略了自己从from中get然后再set给to import java.beans.BeanInfo;import java.beans.Introspector;import java.beans.PropertyDescriptor;import java.lang.reflect.Method; public static Object convertBean2Bean(Object from, Object to) { try {

mybatis新增对象自动生成uuid方案

mybatis新增对象时, 使用拦截器自动生成uuid方案有了它不再去xml中手动添加selectKey了, 生成id方案实现类自行实现, 实现IdGenerator接口便可, 主要代码由公司同事编写, 我进行改造 使用时可以在id字段上添加@Id注解, 也可以在getId方法上添加或者不添加, 但是主键名字必须是id, 类型必须是String @Target({ METHOD, FIELD }) @Retention(RUNTIME) public @interface Id { Class<

ASP.NET Core实现对象自动映射-AgileMapper

我们为什么要在对象之间做映射 处于耦合性或者安全性考虑或者性能考虑我们不希望将Model模型传递给他们,我们会在项目中创建一些DTO(Data transfer object数据传输对象),进行数据的传输. 概述 AgileMapper是一个零配置.高度可配置的对象-对象映射器,具有可查看的执行计划,目标是.NET Standard 1.0+和.NET 3.5+.他执行查询映射.对象创建.深度克隆.id感知更新和合并,可以通过扩展方法.静态API或实例API使用. 快速开始 通过NuGet安装A

超过一定高度对象自动悬浮

<script type="text/javascript"> var navH = document.getElementById('id').offsetTop;//获取要定位元素距离浏览器顶部的距离 window.onscroll = function(){ var scroH = document.documentElement.scrollTop || document.body.scrollTop;//获取滚动条的滑动距离 var bar = document.

springMVC 【@response 返回对象自动变成json并且防止乱码】 &amp; 【配置支持实体类中的@DateTimeFormat注解】

在springmvc的配置文件中加上这一段即可 <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" > <!-- 本文关键内容--> <property name="messageConverters"> <list> <bean class="org.springfram

JAVA STRING 对象自动补齐空格

之所以补空格因为 该长度不一的时候 有时候会导致 ORACLE数据库的子SQL 变得很多多. 导致非常慢. ORACLE 11G 11.2.01 打补丁风险太大 只好补空格让其一直. 注意采用的字节长度 public static String formatStr(String str, int length) { if (str == null) { str=""; } int strLen = str.getBytes().length; if (strLen == length)

三个状态之间的转换和持久太对象自动更新的能力测试

原文地址:https://www.cnblogs.com/chenyanlong/p/9757945.html

Ogre 编辑器三(自动生成与更新Ogre对象编辑界面)

最开始设计这个编辑器时,其中一个要求就是能在运行过程中,通过UI来更新各对象,这样我们就能明确每个Ogre对象更新其属性影响的渲染效果.比如点光源,方向光源,聚光灯各属性与效果,深度测试开启与关闭,深度比较方式影响的效果等等.如下先看效果图: 这个位置没有用上一篇天龙的场景,主要是图片大小限制,场景复杂后,生成的gif图片太大. 这个功能当时我主界面完成后,就准备做的,但是当时一时想不到好的方案,如果针对每个Ogre属性来生成UI,然后关联每个对象,再想想后续如果要修改其中的字段属性或是位置,这

java类对象

不错的文章 原文地址:(转载)java中的Class类与Class对象作者:albert1017 本文用作笔记之用,引用的网上资料: http://www.blogjava.net/formatmyself/articles/21291.html写得比较全面 http://www.open-open.com/lib/view/1328753336405例子比较好 http://zhidao.baidu.com/question/386608758.html解释得简洁清楚 Java程序在运行时,J