`
mr_gxxy
  • 浏览: 3830 次
  • 性别: Icon_minigender_1
  • 来自: 襄阳
社区版块
存档分类
最新评论

ext java 动态grid demo

阅读更多
package com.gepower.repair.vo;

import java.util.ArrayList;
import java.util.List;

public class DynaGridList extends BaseList{
	private List data;
	private List<ColumnModelVo> columnModel = new ArrayList<ColumnModelVo>();
	private List<FieldsNameVo> fieldsNames = new ArrayList<FieldsNameVo>();
	//private 
	public DynaGridList(){
		
	}
	public List getData() {
		return data;
	}
	public void setData(List data) {
		this.data = data;
	}
	
	public void addColumnModel(ColumnModelVo columnModelVo){
		if(!columnModel.contains(columnModelVo)){
			columnModel.add(columnModelVo);
		}
	}
	
	public List<ColumnModelVo> getColumnModel() {
		return columnModel;
	}
	public void setColumnModel(List<ColumnModelVo> columnModel) {
		this.columnModel = columnModel;
	}
	
	public void addFieldsName(FieldsNameVo fieldNameVo){
		if(!fieldsNames.contains(fieldNameVo)){
			fieldsNames.add(fieldNameVo);
		}
	}
	public List<FieldsNameVo> getFieldsNames() {
		return fieldsNames;
	}
	
	public void setFieldsNames(List<FieldsNameVo> fieldsNames) {
		this.fieldsNames = fieldsNames;
	}
	
}


  public DynaGridList findMultiplierCostList(
  			String compSegId, UserVo tempUserVo) throws Exception {

			List<DynaBean> dataBeanList = multiplierCostSummaryDao.findMultiplierCostList(
	    			 compSegId,  tempUserVo);
			
			DynaGridList result = new DynaGridList();
			//List<DynaBean> data = new ArrayList<ColumnModelVo>();
			
			
			
			List data = new ArrayList();
			
			String klassName = null;
			FieldsNameVo fieldNameVo = null;
			ColumnModelVo columnModelVo = null;
			EditorVo editor = null;
			List<ComboVo> fieldArryList = multiplierCostSummaryDao.findFieldArry();
			
			String[] fieldArry;
			
			if (fieldArryList.size() > 0) {
				fieldArry = fieldArryList.get(0).getValue().split(",");
				for (int i = 0; i < fieldArry.length; i++) {
					Iterator itr = dataBeanList.iterator();
					while (itr.hasNext()) {
	
						DynaBean dbean = (DynaBean) itr.next();
						Map dynaMap = new DynaBeanMapDecorator(dbean);
//						data.add(dynaMap);
	
						Set keySet = dynaMap.keySet();
						Iterator keyIt = keySet.iterator();
						while (keyIt.hasNext()) {
							Object obj = keyIt.next();
							if (fieldArry[i].equals(obj.toString())) {
								System.out.println(obj + "   " + dynaMap.get(obj));
								DynaProperty dynaProp = dbean.getDynaClass()
										.getDynaProperty(obj.toString());
								klassName = dynaProp.getType().getName();
								fieldNameVo = new FieldsNameVo(obj.toString());
								fieldNameVo.setType("String"); // need change
								result.addFieldsName(fieldNameVo);
	
								columnModelVo = new ColumnModelVo(getColumnHeader(obj.toString()),
										obj.toString(),150);
//								columnModelVo.setXtype("templatecolumn");
//								columnModelVo.setTpl("<span class=''>{obj.toString()}</span>"); 
								editor = new EditorVo();
								editor.setXtype("textfield");
								columnModelVo.setEditor(editor);
								result.addColumnModel(columnModelVo);
							}
						}
						// dbean
					}
				}
				Iterator itr = dataBeanList.iterator();
				while (itr.hasNext()) {
					
					DynaBean dbean = (DynaBean) itr.next();
					Map dynaMap = new DynaBeanMapDecorator(dbean);
					data.add(dynaMap);
				}
			}
			result.setData(data);
			

			
			return result;
			
		}


public List<DynaBean> findMultiplierCostList(
    			String compSegVal, UserVo tempUserVo) {
			Connection conn = null;
			PreparedStatement st = null;
			ResultSet rs = null;
			try{
				String sql = "   SELECT SQL_DTL FROM RCAT_SQL_TEMP WHERE SQL_FLAG ='PART_KIT_MT'";
//				String sql = this.getSql();
				this.findCompPartkitToursSql(compSegVal);
				
				List<ComboVo> sqlList = this.getJdbcTemplate().query(sql, new CompPartkitToursSqlMapper());
				if(sqlList.size()==0){
					return null;
				}
				sql = sqlList.get(0).getDisplay();
				
				conn = this.getJdbcTemplate().getDataSource().getConnection();
				st = conn.prepareStatement(sql);
				rs = st.executeQuery();
				
				RowSetDynaClass rsdc = new RowSetDynaClass(rs); 
				return rsdc.getRows();
			}catch (Exception e){
				e.printStackTrace();
			}finally {
				try {
					if (rs != null) {
						rs.close();
					}
					if (st != null) {
						st.close();
					}
					if (conn != null) {
						conn.close();
					}
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
			
			return null;
		}
分享到:
评论

相关推荐

    ext分页客户端demo Java js

    在这个"ext分页客户端demo Java js"的示例中,我们将探讨EXTJS如何实现客户端分页,以及如何与后端(如Java)进行数据交互,而无需在服务器端编写额外的Java代码。 EXTJS中的分页组件主要由Ext.grid.Panel和Ext....

    Ext4+SpringMVC实例Demo源码

    1. **Ext4组件使用**:Ext4提供了一系列的UI组件,如表格(Grid)、面板(Panel)、按钮(Button)、表单(Form)等。开发者可能通过这些组件创建了用户界面,并进行了定制以满足具体需求。 2. **数据绑定和Store**...

    springMVC+hibernate+ext搭建的一个demo示例

    开发者可能会使用EXT的Grid组件展示从后端获取的数据,使用FormPanel进行数据输入,以及用Window或Dialog组件实现弹出框功能。EXTJS的Ajax或Store组件将与SpringMVC的Controller接口通信,进行数据的增删改查操作。 ...

    Ext+HSQL_DEMO

    **描述:**这个项目是一个综合示例,展示了如何将Ext JS前端框架与HSQLDB内存数据库相结合来构建一个动态的数据驱动的应用程序。Ext JS是一个强大的JavaScript库,主要用于构建用户界面,而HSQLDB则是一个轻量级、高...

    extjsGridDemo

    在这个Demo中,ExtJS与Hibernate(一个Java持久化框架)和DWR(Direct Web Remoting)相结合,展示了如何实现在客户端和服务器之间的高效数据交互。 【描述】中提到的关键技术点: 1. **ExtJS Grid**:ExtJS Grid...

    java ajax ext实例

    通过"ext-demo.zip"这个压缩包,我们可以期待找到一个实际的EXT.js与Java AJAX结合的应用示例,包括HTML页面、JavaScript代码、可能的Java后端处理类以及配置文件等。这个实例将帮助开发者更好地理解如何在实际项目...

    ext 做的书目系统Demo

    【标题】:“ext 做的书目系统Demo”是一个基于EXTJS开发的图书管理系统演示项目,EXTJS是一个强大的JavaScript库,专为构建富客户端Web应用程序而设计。它提供了丰富的用户界面组件,如数据网格、表格、选项卡面板...

    gtGrid+java+简易数据库测试环境

    gtGrid是国内一位高手自己写的一套Grid组件.他是就职于国外一家Javascript组件开发供公司时自己...这个包是作者自己写的一个Java环境的DEMO,是一个Eclipse项目,用Eclipse很容易就能搭建起来.附带一个简易数据库,有说明.

    ext ssh demo

    在这个"ext ssh demo"实例中,我们将探讨如何将这两者结合使用,以实现一个功能丰富的Web应用。 SSH(Secure Shell)主要用于提供加密的网络通信服务,确保数据传输的安全性。它允许用户通过不安全的网络连接安全地...

    springMVC整合ext4js

    Spring MVC作为Java后端的主要MVC框架,提供了强大的控制层支持,而Ext4JS则是一个流行的JavaScript库,用于构建富客户端应用。通过整合这两者,我们可以构建出具有高效数据管理和用户友好的界面的Web应用。 首先,...

    Spring+Hibernate+Ext+dwr增删改查

    Spring+Hibernate+Ext+dwr做的一个简单的grid的增删改查,面板布局, 通过autoload方式载入grid ,以及XML树的建立 ,连接MySql数据库 。JS文件代码在Demo文件夹下,JAVA代码在src下。适合新手

    gwt-ext 实例

    3. **创建UI组件**:使用gwt-ext库创建各种组件,如Grid、FormPanel、ComboBox等,并了解它们的属性、方法和事件处理。 4. **布局管理**:学习gwt-ext提供的布局管理器,如FitLayout、BorderLayout、ColumnLayout,...

    ssh extjs的demo

    2. **视图(View)**:EXTJS的组件,如窗口(Window)、面板(Panel)、表格(Grid)等,展示数据并提供用户界面。 3. **模型(Model)**:定义数据结构,通常与Hibernate的实体类对应,负责数据的持久化。 4. **...

    Extjs结合Struts版的demo

    利用Ext.Ajax或Ext.data.proxy.Ajax发送异步请求,获取Struts2 Action返回的数据。 2. **数据传输**:通常采用JSON格式进行数据交换,因为JSON轻量且易于解析。Struts2可以配置为返回JSON响应,而ExtJS可以方便地...

    struts2+spring+hibernate例子

    在这个"Struts2+Spring+Hibernate例子"中,开发者提供了一个完整的示例,旨在展示这三个框架如何协同工作,实现数据的增删改查(CRUD)操作,并且集成了Ext Grid,一个强大的前端展示组件。 **Struts2** 是一个MVC...

    Extjs全部资料在此下载

    接下来,有三个文件夹:"java-json-lib"、"javaDemo"和"netDemo",这些可能包含与ExtJS交互的Java和.NET后端示例代码。ExtJS常用于与服务器进行JSON数据交换,因此这些示例可能会展示如何在Java或.NET环境中创建...

    Struts2+Spring2.5+Hibernate3(JPA)+ExtJS3基本后台

    Struts2的核心特性包括拦截器、动态方法调用、强大的表单处理以及与多种视图技术的集成。 2. **Spring2.5**:Spring是一个全面的企业级应用框架,它不仅提供了IOC(Inversion of Control)和AOP(Aspect-Oriented ...

Global site tag (gtag.js) - Google Analytics