com.poscoict.glueframework.biz.activity
Class GlueJdbcInsert

java.lang.Object
  extended by com.poscoict.glueframework.biz.activity.GlueActivity<GlueContext>
      extended by com.poscoict.glueframework.biz.activity.GlueJdbcInsert

public class GlueJdbcInsert
extends GlueActivity<GlueContext>

Insert Activity. GlueJdbcInsert Class´Â "insert into emp(empno, ename, deptno) values(?, ?, ?)" ¿Í °°Àº SQL insert into statement¸¦ ¼öÇà ÇÏ´Â Activity ÀÌ´Ù. WebÈ­¸é°ú NonUI °øÅëÀ¸·Î »ç¿ëµÇ°í Binding Parameter TypeÀº WebÀÎ °æ¿ì String []ÀÇ {0}¹ø°·Î Binding ÇÏ°í WebÀÌ ¾Æ´Ñ °æ¿ì´Â ÇØ´ç Object¸¦ Binding ÇÑ´Ù. ¿©±â¼­ chk-nameÀÌ ÀÖ´Â °æ¿ì WebÀÇ CheckBox¿¡ Check µÈ ¼ö¸¸Å­ ¹Ýº¹ ÇÏ°í ¾ø´Â °æ¿ì´Â Context¿¡¼­ ¹Ù·Î String[] ·Î getÇÏ¿© Binding ÇÑ´Ù. NonUIÀÇ °æ¿ì Data TypeÀÌ String[]°¡ ¾Æ´Ñ °æ¿ì ¹Ù·Î ÇØ´ç Object·Î Binding ÇÑ´Ù.

 Activity Property
 
 - dao : (Çʼö) applicationContext.xmlÀÇ DAO id.
 
 - sql-key : (Çʼö) {name}-query.glue_sqlÀÇ query id 
 
 - param-count : (¼±ÅÃ) Binding ÇÒ °³¼ö ( insert into emp(empno,ename,deptno) values (?,?,?) )ÀÇ "?" ¼ö
 
 - param#(param0,param1...) : (¼±ÅÃ) Binding Value ("?"¿Í ¼ø¼­ ÀÏÄ¡ ÇÏ¿©¾ß ÇÔ)
 
 - param-bindings : (¼±ÅÃ) binding¿¡ »ç¿ëµÇ´Â °ª°ú Mapping µÇ´Â Key( bindName=ctxName[|bindName=ctxName] ).
         ctxÀÇ key°¡ binding variable name°ú °°Àº °æ¿ì »ý·«(´ë¼Ò¹®ÀÚ ±¸ºÐÇÔ).
         ctxName Àº GlueContextÀÇ Key À̰ųª list-key ¿¡ ÇØ´çÇÏ´Â mapÀÇ KeyÀÌ´Ù.
 
 - chk-name : (¼±ÅÃ) È­¸éÀÇ CheckBox ID(HttpRequestÀÇ parameter name).
         chk-name ¿¡ µû¶ó Looping 󸮸¦ ÇÑ´Ù. 
         chk-name¿¡ ÇØ´çÇÏ´Â °ÍÀÌ ´ÙÀ½°ú °°ÀÌ checkbox ¶ó¸é, ±× °ªÀº 0,1,2...,n À¸·Î ºÎ¿©µÇ¸ç 
         checked µÈ °ª¸¸ GlueContext¿¡ ´ã±ä´Ù. 
  
 - list-key : (¼±ÅÃ) SQL ¹®¿¡ Binding ÇÒ Data·Î¼­, Map ÇüÅÂÀÇ DataÀ» °®´Â List ±¸Á¶Ã¼¸¦ °¡¸£Å´.
 
 - result-key : (¼±ÅÃ) Context¿¡ ´ã±â´Â Query ¼öÇà °á°ú(µî·Ï record ¼ö) Key.
         [ default ] : {sql-key}_insertCnt
  
 - is-audit : (¼±ÅÃ) insert½Ã Audit Ç׸ñ Àû¿ë Option
          Audit Ç׸ñÀº glue.properties¿¡ audit.insert.key ¿Í audit.update.key ¸¦ Âü°íÇÑ´Ù.
          ÁÖÀÇ»çÇ×: Audit Ç׸ñÀº SQL¿¡ ¹Ý¿µµÇ¾î ÀÖ¾î¾ß ÇÑ´Ù. 
                ¾Æ·¡ÀÇ 'emp.insert.audit' ¿Í °°Àº À¯ÇüÀÇ SQLÀÎ °æ¿ì, 
                ColumnÀÇ ¼ø¼­´Â glue.properties¿¡ Á¤ÀÇÇÑ ¼ø¼­¿Í °°¾Æ¾ß Çϸç, 
                Audit Ç׸ñÀ» À§ SQLó·³ ¸Ç ¾Õ¿¡ ±â¼úµÇ¾î¾ß ÇÑ´Ù.
 
 
 
 ¿¹Á¦
 »ç¿ë ¿¹# 1
 - À¯Çü1 Äõ¸®¸¦ »ç¿ëÇÏ´Â °æ¿ì
 
     <activity name="Insert" class="com.poscoict.glueframework.biz.activity.GlueJdbcInsert">
         <property name="dao" value="testdao" />
         <property name="sql-key" value="emp.insert" />
         <property name="param-count" value="4" />
         <property name="param0" value="EMPNO" />
         <property name="param1" value="ENAME" />
         <property name="param2" value="SAL" />
         <property name="param3" value="DEPTNO" />
         <transition name="success" value="Find" />
     </activity>
 
 
 »ç¿ë ¿¹# 2
 - À¯Çü1 Äõ¸®ÀÇ Looping ó¸®. (Web)
 
     <activity name="Insert" class="com.poscoict.glueframework.biz.activity.GlueJdbcInsert">
         <property name="dao" value="testdao" />
         <property name="sql-key" value="emp.insert" />
         <property name="param-count" value="4" />
         <property name="param0" value="EMPNO" />
         <property name="param1" value="ENAME" />
         <property name="param2" value="SAL" />
         <property name="param3" value="DEPTNO" />
         <property name="chk-name" value="chk" />
         <transition name="success" value="Find" />
     </activity>
 
 
 »ç¿ë ¿¹# 3
 - À¯Çü1 Äõ¸®ÀÇ Looping ó¸®. (NonUI)
 
     <activity name="Custom" class="...">
         <transition name="success" value="Insert" />
     </activity>
     <activity name="Insert" class="com.poscoict.glueframework.biz.activity.GlueJdbcInsert">
         <property name="dao" value="testdao" />
         <property name="sql-key" value="emp.insert" />
         <property name="param-count" value="4" />
         <property name="param0" value="EMPNO" />
         <property name="param1" value="ENAME" />
         <property name="param2" value="SAL" />
         <property name="param3" value="DEPTNO" />
         <property name="list-key" value="dataList" />
         <transition name="success" value="Find" />
     </activity>
 
 
 »ç¿ë ¿¹# 4
 - À¯Çü2 Äõ¸®¸¦ »ç¿ëÇÏ´Â °æ¿ì
 
     <activity name="Insert" class="com.poscoict.glueframework.biz.activity.GlueJdbcInsert">
         <property name="dao" value="testdao" />
         <property name="sql-key" value="emp.insert.named" />
         <property name="param-bindings" value="empno=EMPNO|ename=ENAME|sal=SAL|deptno=DEPTNO" />
         <transition name="success" value="Find" />
     </activity>
 
 
 »ç¿ë ¿¹# 5
 - À¯Çü2 Äõ¸®ÀÇ Looping ó¸®. (Web)
 
     <activity name="Insert" class="com.poscoict.glueframework.biz.activity.GlueJdbcInsert">
         <property name="dao" value="testdao" />
         <property name="sql-key" value="emp.insert.named" />
         <property name="param-bindings" value="empno=EMPNO|ename=ENAME|sal=SAL|deptno=DEPTNO" />
         <property name="chk-name" value="chk" />
         <transition name="success" value="Find" />
     </activity>
 
 
 »ç¿ë ¿¹# 6
 - À¯Çü2 Äõ¸®ÀÇ Looping ó¸®. (NonUI)
 
     <activity name="Custom" class="...">
         <transition name="success" value="Insert" />
     </activity>
     <activity name="Insert" class="com.poscoict.glueframework.biz.activity.GlueJdbcInsert">
         <property name="dao" value="testdao" />
         <property name="sql-key" value="emp.insert.named" />
         <property name="param-bindings" value="empno=EMPNO|ename=ENAME|sal=SAL|deptno=DEPTNO" />
         <property name="list-key" value="dataList" />
         <transition name="success" value="Find" />
     </activity>
 
 
 »ç¿ë ¿¹# 7
 - À¯Çü1 Äõ¸®ÀÇ auditÁ¤º¸
 
     <activity name="Insert" class="com.poscoict.glueframework.biz.activity.GlueJdbcInsert">
         <property name="dao" value="testdao" />
         <property name="sql-key" value="emp.insert.audit" />
         <property name="param-count" value="4" />
         <property name="param0" value="EMPNO" />
         <property name="param1" value="ENAME" />
         <property name="param2" value="SAL" />
         <property name="param3" value="DEPTNO" />
         <property name="is-audit" value="true" />
         <transition name="success" value="Find" />
     </activity>
 
 
 
 Âü°í : {name}-query.glue_sql
 
     <query id="emp.insert" desc="Type #1">
         <![CDATA[ 
               insert into emp(empno, ename, sal,deptno)
               values(?, ?, ?, ?)
         ]]>
     </query>
     <query id="emp.insert.named" desc="Type #1" isNamed="true">
         <![CDATA[ 
               insert into emp(empno, ename, sal,deptno)
               values(:empno, :ename, :sal, :deptno)
         ]]>
     </query>
     <query id="emp.insert.audit" desc="audit column¼ø¼­ À¯ÀÇ">
         <![CDATA[ 
               insert into emp_audit( 
                   audit_create_id, audit_create_ip, audit_create_dt
                 , audit_update_id, audit_update_ip, audit_update_dt 
                 , empno, ename, deptno)
               values(?, ?, ?, ?, ?, ?, ?, ?, ?)
         ]]>
     </query>
 
 
 Âü°í : HTML Code
 
     <input type="checkbox" name="chk" value="0">
     <input type="text" name="EMPNO" value="1111">
     <input type="text" name="ENAME" value="name1">
     <input type="text" name="SAL" value="1000">
     <input type="text" name="DEPTNO" value="10">
     <input type="checkbox" name="chk" value="1">
     <input type="text" name="EMPNO" value="1112">
     <input type="text" name="ENAME" value="name2">
     <input type="text" name="SAL" value="1100">
     <input type="text" name="DEPTNO" value="10">
 
 
 Âü°í : Java Code (Custom)
 
     List<Map<String, Object>> dataList = new ArrayList<Map<String, Object>>();
     Map<String, Object> data1 = new HashMap<String, Object>();
     data1.put("EMPNO","1111");
     data1.put("ENAME","name1");
     data1.put("SAL","1000");
     data1.put("DEPTNO","10");
     dataList.add(data1);
     Map<String, Object> data2 = new HashMap<String, Object>();
     data2.put("EMPNO","1112");
     data2.put("ENAME","name2");
     data2.put("SAL","1100");
     data2.put("DEPTNO","10");
     dataList.add(data2);
     ctx.put("dataList",dataList);
 
 
 Âü°í : glue.properties
 
     audit.insert.key=id,ip,cur_time,id,ip,cur_time
     audit.update.key=id,ip,cur_time
 


Field Summary
 
Fields inherited from class com.poscoict.glueframework.biz.activity.GlueActivity
dynamicProperties, logger
 
Constructor Summary
GlueJdbcInsert()
           
 
Method Summary
 String runActivity(GlueContext ctx)
          Sub Class¿¡¼­ ¹Ýµå½Ã ±¸ÇöÇÏ¿©¾ß ÇÏ´Â Abstract Method À̸ç ÀÌ Method´Â F/W¿¡¼­ È£ÃâÇÑ´Ù.
 
Methods inherited from class com.poscoict.glueframework.biz.activity.GlueActivity
commitTransaction, commitTransaction, getDao, getEventList, getName, getProperty, getPropertyNames, getTransition, rollbackTransaction, rollbackTransaction, setEventList, setName, setProperty, setTransition
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GlueJdbcInsert

public GlueJdbcInsert()
Method Detail

runActivity

public String runActivity(GlueContext ctx)
Description copied from class: GlueActivity
Sub Class¿¡¼­ ¹Ýµå½Ã ±¸ÇöÇÏ¿©¾ß ÇÏ´Â Abstract Method À̸ç ÀÌ Method´Â F/W¿¡¼­ È£ÃâÇÑ´Ù. °á°ú °ªÀº GlueContext¿¡ ´ã¾Æ¼­ ´ÙÀ½ Activity ¶Ç´Â F/W¿¡ Àü´ÞÇÏ°Ô µÈ´Ù. ÇÊ¿äÇÑ ¸ðµç Data´Â GlueContext¿¡¼­ È£ÃâÇÏ¿© »ç¿ëÇÏ°Ô µÈ´Ù.

Specified by:
runActivity in class GlueActivity<GlueContext>
Parameters:
ctx - GlueContext
Returns:
String Á¤»óÀûÀ̸é "success"¸¦ Return ÇÏ°í ºñÁ¤»ó 󸮸¦ ¿øÇϸé "failure"¸¦ Return ÇÑ´Ù.
 ¿¹) 
 <transition name="success" value="BizLogic"/>
 <transition name="failure" value="ErrorHandle"/>
 ==> return "success"À̸é BizLogic Activity ¸¦ ½ÇÇàÇÔ.
 


Copyright © 2013–2018 POSCO ICT. All rights reserved.