|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectgnu.caf.db.impl.RchCrossTab
public class RchCrossTab
RowCallbackHandler ÀÇ ±¸Çö Ŭ·¡½º·Î½á ResultSet 󸮽à Ä÷³¿¡ ÇØ´çÇÏ´Â µ¥ÀÌŸ¸¦
Crosstab ÇüÅÂÀÇ HashMap °´Ã¼·Î º¯È¯ÇÔ.
ex)
java Code ÀÛ¼º¹æ¹ý
RchCrossTab crosstab = RchFactory.getCrossTab();
crosstab.setGroupByColumns("a,b");
crosstab.setCrossColumn("c");
crosstab.setTargetColumns("d,e,f");
list = crosstab.convert(list);
for ( int i=0, n=list.size(); i< n; i++) {
System.out.println(list.get(i));
}
¶Ç´Â
DBManager2 dbmanager = new DBManager2Oracle();
RchCrossTab crosstab = RchFactory.getCrossTab();
crosstab.setGroupByColumns("a,b");
crosstab.setCrossColumn("c");
crosstab.setTargetColumns("d,e,f");
dbmanager.setRowCallbackHandler(crosstab);
List list = null;
try {
dbmanager.getConnection();
list = dbmanager.executeQueryForListByQueryGroup("sqlFilename", "sqlID", params);
}catch(SQLException sqle) {
sqle.printStackTrace();
}finally{
dbmanager.close();
}
for ( int i=0, n=list.size(); i< n; i++) {
System.out.println(list.get(i));
}
sql ÀÛ¼º¹æ¹ý ¹× µ¥ÀÌŸ º¯È¯·ÎÁ÷.
a, b Ä÷³ÀÌ ÁÂÃø¿¡
c Ä÷³ÀÇ value °ªÀÌ »óÃøÀ¸·Î ±¸¼ºµÈ Å×À̺íÀ» ¸¸µé°íÀÚ ÇÒ °æ¿ì..
GROUP BY a, b, c µÇ´Â SQLÀÛ¼º ¹× ½ÇÇàµÇ´Â °á°ú°ªÀÌ ¾Æ·¡¿Í °°Àº °æ¿ì
a , b, c, d, e ==> HashMap key={"a","b","c","d","e"}
{
1, 2, 1, 1, 2
1, 2, 2, 3, 4
1, 3, 1, 5, 6
1, 3, 3, 7, 8
}
Å©·Î½ºÅÇ º¯È¯½Ã ¾Æ·¡¿Í °°Àº ÇüÅ·Πº¯È¯. ==> HashMap key={"a","b","d__1","d__2","d__3","e__1","e__2","e__3"}
a , b, 1 ,2 ,3 ÀÇ ÇüÅ·Πº¯È¯.
{
1, 2, d=1 e=2 ,d=3 e=4
1, 3, d=5 e=6 , ,d=7 e=8
}
¡Ø /caf/samples/list_crosstab.jsp ¸¦ ÂüÁ¶.
RowCallbackHandler
Constructor Summary | |
---|---|
RchCrossTab()
|
Method Summary | |
---|---|
java.util.List |
convert(java.util.List list)
List °´Ã¼¸¦ Å©·Î½ºÅÇÇüÅÂÀÇ ¸®½ºÆ®·Î º¯È¯ÇÔ. |
java.lang.Object |
getColumnForRow(java.util.Map row,
java.lang.String columnName,
java.lang.Object crossColumnValue)
|
java.lang.Object |
getColumnForRow(java.util.Map row,
java.lang.String columnName,
java.lang.Object crossColumnValue,
java.lang.String nullStr)
|
java.lang.String |
getCrossColumn()
|
java.lang.Object[] |
getCrossColumnValues()
|
java.lang.String |
getGroupByColumns()
|
java.util.List |
getRsList(java.sql.ResultSet rs,
int startRow,
int maxRows)
ResultSet ¿¡ ´ëÇÏ¿© firstRow¿¡ ÇØ´çÇÏ´Â ¸¸Å rs.next() ó¸®ÈÄ maxResults ¸¸Å µ¥ÀÌŸ¸¦ ó¸®ÈÄ List¸¦ ¹ÝȯÇÔ. |
java.lang.String |
getSeperateCHAR()
|
java.lang.String |
getTargetColumns()
|
static void |
main(java.lang.String[] args)
|
void |
setCrossColumn(java.lang.String crossColumn)
|
void |
setCrossColumnValues(java.lang.Object[] crossColumnValues)
Å©·Î½ºÅÇ ¸®½ºÆ® º¯È¯½Ã Å©·Î½ºÅÇÀ¸·Î ÀüȯµÇ´Â Ä÷³ÀÇ value°ªÀ» ¼³Á¤ÇÔ. |
void |
setGroupByColumns(java.lang.String groupByColumns)
|
void |
setSeperateCHAR(java.lang.String seperateChar)
Å©·Î½ºÅÇ ¸®½ºÆ® º¯È¯½Ã crossColumn ÀÇ value °ª¿¡ ÇØ´çÇϴ Ű°ª+¿ø·¡Ä÷³¸í À¸·Î ۰ªÀ» ÀúÀå½Ã ۰ª±¸ºÐ CHAR ¼³Á¤ÇÔ. |
void |
setTargetColumns(java.lang.String targetColumns)
Å©·Î½ºÅÇ ¸®½ºÆ® º¯È¯½Ã ´ë»óÄ÷³À» ¼³Á¤ÇÔ. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public RchCrossTab()
Method Detail |
---|
public java.lang.Object getColumnForRow(java.util.Map row, java.lang.String columnName, java.lang.Object crossColumnValue)
public java.lang.Object getColumnForRow(java.util.Map row, java.lang.String columnName, java.lang.Object crossColumnValue, java.lang.String nullStr)
public static void main(java.lang.String[] args)
args
- public java.util.List getRsList(java.sql.ResultSet rs, int startRow, int maxRows) throws java.sql.SQLException
RowCallbackHandler
getRsList
in interface RowCallbackHandler
java.sql.SQLException
RowCallbackHandler.getRsList(ResultSet, int, int)
public java.util.List convert(java.util.List list)
list
-
public java.lang.String getCrossColumn()
public void setCrossColumn(java.lang.String crossColumn)
public java.lang.String getGroupByColumns()
public void setGroupByColumns(java.lang.String groupByColumns)
public java.lang.Object[] getCrossColumnValues()
public void setCrossColumnValues(java.lang.Object[] crossColumnValues)
crossColumnValues
- public java.lang.String getTargetColumns()
public void setTargetColumns(java.lang.String targetColumns)
targetColumns
- public java.lang.String getSeperateCHAR()
public void setSeperateCHAR(java.lang.String seperateChar)
seperateChar
-
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |