Package com.iisigroup.cap.jdbc.support

Source Code of com.iisigroup.cap.jdbc.support.CapColumnMapRowSetMapper

/*
* CapColumnMapRowSetMapper.java
*
* Copyright (c) 2009-2012 International Integrated System, Inc.
* All Rights Reserved.
*
* Licensed Materials - Property of International Integrated System, Inc.
*
* This software is confidential and proprietary information of
* International Integrated System, Inc. ("Confidential Information").
*/
package com.iisigroup.cap.jdbc.support;

import java.util.HashMap;
import java.util.Map;

import org.springframework.jdbc.core.ColumnMapRowMapper;
import org.springframework.jdbc.support.rowset.SqlRowSet;
import org.springframework.jdbc.support.rowset.SqlRowSetMetaData;

import com.iisigroup.cap.utils.CapDbUtil;

/**
* <pre>
* {@link ColumnMapRowMapper} implementation that creates a <code>java.util.Map</code>
* </pre>
*
* @since 2011/08/02
* @author iristu
* @version <ul>
*          <li>2011/08/02,iristu,new
*          <li>2011/08/10,iristu,override
*          mapRow因取得getColumnKey需為rsmd.getColumnName的方式
*          </ul>
*/
public class CapColumnMapRowSetMapper {

  private String removePrefix;

  public CapColumnMapRowSetMapper setRemovePrefix(String removePrefix) {
    this.removePrefix = removePrefix;
    return this;
  }

  public Map<String, Object> mapRow(SqlRowSet rs, int rowNum) {
    SqlRowSetMetaData rsmd = rs.getMetaData();
    int columnCount = rsmd.getColumnCount();
    Map<String, Object> mapOfColValues = new HashMap<String, Object>(
        columnCount);
    for (int i = 1; i <= columnCount; i++) {
      String key = rsmd.getColumnName(i);
      if (removePrefix != null) {
        key = key.replaceFirst(removePrefix, "");
      }
      Object obj = getColumnValue(rs, i);
      if (obj instanceof String) {
        obj = CapDbUtil.trimNull(obj);
      }
      mapOfColValues.put(key, obj);
    }
    return mapOfColValues;
  }// ;

  protected Object getColumnValue(SqlRowSet rs, int index) {
    Object obj = rs.getObject(index);
    if (obj instanceof String) {
      String str = (String) obj;
      str = str.trim();
      obj = CapDbUtil.trimFullSpace(str);
    }
    return obj;
  }// ;

}// ~
TOP

Related Classes of com.iisigroup.cap.jdbc.support.CapColumnMapRowSetMapper

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.