Yes use standard logging or a logging framework like log4j.
just set the following
<category name="java.sql">
<priority value="debug" />
</category>
<category name="org.ibatis">
<priority value="debug" />
</category>
You can define them at a more granular level if you want.
On Sun, Mar 7, 2010 at 8:13 AM, Bhaarat Sharma <[email protected]> wrote:
> We use iBatis + Spring and make use of stored procedures to fetch
> information from Oracle DB. To find out what parameters (HashMap) is sent
> to the stored procedure we have to actually set debug points. We'd like
> this information to go to a log. Basically print out name of the Stored Proc
> + all that a HashMap contains (before calling the Stored procedure).
>
> Our setup is as below:
>
> Mapping:
> <procedure id="getReportData" parameterMap="getReportDataCall">
> {call get_rpt (?,?,?,?)}
> </procedure>
>
> <parameterMap id="getReportDataCall" class="map">
> <parameter property="type" jdbcType="String"
> javaType="java.lang.String" mode="IN"/>
> <parameter property="month" jdbcType="Int"
> javaType="java.lang.Integer" mode="IN"/>
> <parameter property="Result0" jdbcType="ORACLECURSOR"
> javaType="java.sql.ResultSet" mode="OUT" resultMap="result1"/>
> <parameter property="Result1" jdbcType="ORACLECURSOR"
> javaType="java.sql.ResultSet" mode="OUT" resultMap="result2"/>
> </parameterMap>
>
> <resultMap id="select-first-result-hq" class="VO">
> <result property="column1" column="columna"/>
> <result property="column2" column="columnb"/>
> </resultMap
>
> We call our procedures like this:
> HashMap parm = new HashMap ();
> parm.put("type", type_val);
> parm.put("month", month_val);
> getSqlMapClientTemplate().queryForList("mymappingName.getReportData",
> parm);
>
>
> I could make a method that would take SP name + HashMap as parm and then
> just put it on the log but then i'd have to explicitly make a call to that
> method before I call the Stored procedure. I will take this as the last
> option as it involves me touching all my existing code.
>
> Is there any simpler solution to this?
>