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

后台返回SQL结果集,不需要java的pojo,hbm,前台的as

    博客分类:
  • flex
阅读更多
YYHYGenericData
  本类提供方法,传入任意select SQL,都可以返回对应的结果集,该结果集可以直接绑定到datagrid,不

像以前一样,需要写pojo,hbm,as文件,对于仅仅需要从数据库获取数据的功能点,可以使用本类
具体请参考类的方法以及其注释
参考使用示例



在applicationcontext文件中增加如下节点
	<bean id="YYHYGenericData"
		class="com.yyhy.JingPin.DB.YYHYGenericData">
		<property name="dataSource" ref="DB" />
	</bean>


在remote-config.xml中增加如下节点
<destination id="YYHYGenericDataService">
<properties>
<factory>spring</factory>
<source>YYHYGenericData</source>
</properties>
</destination>

前台使用示例
<mx:RemoteObject id="srv" destination="YYHYGenericDataService">
		<mx:method name="getAll" result="settingdata()"/>
	</mx:RemoteObject>
<mx:DataGrid id="dg"  >
		
	</mx:DataGrid >

private function settingdata():void
		{
//必须这么写,而不能够在dg上直接绑定属性 dataprovider="srv.getAll.lastResult"			
dg.dataProvider=srv.getAll.lastResult;
		}
private function getdata():void
		{
			srv.getAll("select * from users");
		}


该类核心代码
public List getAll(String SQL) {
		List<Object> RecordList = new ArrayList<Object>();
		Connection conn = null;
		PreparedStatement stmt = null;
		ResultSet rs = null;
		try {
			conn = this.getConnection();
			stmt = conn.prepareStatement(SQL);
			rs = stmt.executeQuery();
			ResultSetMetaData rsmd = rs.getMetaData();
			while (rs.next()) {
				Map<Object, Object> RowHashMap = new HashMap<Object, Object>();
				for (int i = 0; i < rsmd.getColumnCount(); i++)
					RowHashMap.put(rsmd.getColumnName(i+1), rs.getObject(rsmd
							.getColumnName(i+1)));
				RecordList.add(RowHashMap);
			}
		} catch (Exception e) {
			System.out.print(e);
		}
		return RecordList;
}

分享到:
评论
2 楼 nlslzf 2010-03-08  
如果您了解spring的话,其实整个代码我都放这里了
1 楼 qiglave 2010-03-01  
您好.
很高兴看到您的这篇文章,
最近正在学习Flex这方面的东西,
如果您方便话,还希望您能提供YYHYGenericData
类文件及或是一个demo学习一下.
我的邮箱:
lcy_20000@163.com

相关推荐

Global site tag (gtag.js) - Google Analytics