<?xml version="1.0" encoding="UTF-8" ?> <sqlMap namespace="LineItem" > <resultMap id="LineItem-Price" class="decimal"> <result property="value" column="LineItem_Price"/> </resultMap> <resultMap id="LineItem" class="LineItem"> <result property="Id" column="LineItem_ID"/> <result property="Code" column="LineItem_Code"/> <result property="Quantity" column="LineItem_Quantity"/> <result property="Price" column="LineItem_Price"/> </resultMap> <resultMap id="LineItemWithNullReplacement" class="LineItem"> <result property="Id" column="LineItem_ID"/> <result property="Code" column="LineItem_Code"/> <result property="Quantity" column="LineItem_Quantity"/> <result property="Price" column="LineItem_Price" nullValue="-77.77"/> </resultMap> <statement id="GetLineItemPrice" parameterClass="array" resultMap="LineItem-Price" > select LineItem_Price from LineItems where Order_ID = #Order_ID# and LineItem_ID = #LineItem_ID# </statement> <statement id="GetLineItemsForOrder" parameterClass="int" listClass="TList" resultClass="LineItem"> select LineItem_ID as Id, LineItem_Code as Code, LineItem_Quantity as Quantity, LineItem_Price as Price from LineItems where Order_ID = #value# </statement> <statement id="GetLineItemsForOrderWithListClass" parameterClass="int" listClass="LineItemCollection" resultClass="LineItem"> select LineItem_ID as Id, LineItem_Code as Code, LineItem_Quantity as Quantity, LineItem_Price as Price from LineItems where Order_ID = #value# order by LineItem_Code </statement> <statement id="GetSpecificLineItem" parameterClass="array" resultClass="LineItem"> select LineItem_ID as Id, LineItem_Code as Code, LineItem_Quantity as Quantity, LineItem_Price as Price from LineItems where Order_ID = #Order_ID# and LineItem_ID = #LineItem_ID# </statement> <statement id="GetSpecificLineItemWithPicture" parameterClass="array" resultClass="LineItem"> select LineItem_ID as Id, LineItem_Code as Code, LineItem_Quantity as Quantity, LineItem_Price as Price, LineItem_Picture as PictureData from LineItems where Order_ID = #Order_ID# and LineItem_ID = #LineItem_ID# </statement> <select id="GetDynSpecificLineItem" parameterClass="HashMap" resultClass="LineItem"> select LineItem_ID as Id, LineItem_Code as Code, LineItem_Quantity as Quantity, LineItem_Price as Price from LineItems where Order_ID = #Order_ID# <dynamic> <isNotNull property="LineItem_ID"> and LineItem_ID = #LineItem_ID# </isNotNull> </dynamic> </select> <statement id="GetSpecificLineItemWithNullReplacement" parameterClass="int" resultMap="LineItemWithNullReplacement"> select LineItem_ID, LineItem_Code, LineItem_Quantity, LineItem_Price from LineItems where LineItem_ID = #value# </statement> <statement id="InsertLineItem" parameterMap="lineitem-insert-params" > insert into LineItems (LineItem_ID, Order_ID, LineItem_Code, LineItem_Quantity, LineItem_Price) values (?, ?, ?, ?, ?); </statement> <statement id="InsertLineItemWithPicture" parameterMap="lineitem-insert-params-picture" > insert into LineItems (LineItem_ID, Order_ID, LineItem_Code, LineItem_Quantity, LineItem_Price, LineItem_Picture) values (?, ?, ?, ?, ?, ?); </statement> <insert id="InsertLineItemPostKey" parameterClass="LineItem"> insert into LineItems (LineItem_ID, Order_ID, LineItem_Code, LineItem_Quantity, LineItem_Price) values (#Id#, #Order.Id#, #Code#, #Quantity#, #Price, dbType=Decimal#) <selectKey property="Id" type="post" resultClass="int" > select 99 from LineItems where LineItem_ID = 1 and Order_ID=1 </selectKey> </insert> <insert id="InsertLineItemPreKey" parameterClass="LineItem"> <selectKey property="Id" type="pre" resultClass="int" > select 99 from LineItems where LineItem_ID = 1 and Order_ID=1 </selectKey> insert into LineItems (LineItem_ID, Order_ID, LineItem_Code, LineItem_Quantity, LineItem_Price) values (#Id#, #Order.Id#, #Code#, #Quantity#, #Price, dbType=Decimal#) </insert> <insert id="InsertLineItemNoKey" parameterClass="LineItem"> insert into LineItems (LineItem_ID, Order_ID, LineItem_Code, LineItem_Quantity, LineItem_Price) values (#Id#, #Order.Id#, #Code#, #Quantity#, #Price, dbType=Decimal#) </insert> <!-- JIRA 23 --> <delete id="DeleteWithComments" > <!-- Delete LineItems --> delete from LineItems where Order_ID = 10 <!-- Delete LineItems --> delete from LineItems where Order_ID = 9 </delete> <parameterMap id="lineitem-insert-params"> <parameter property="Id" /> <parameter property="Order.Id" /> <parameter property="Code" /> <parameter property="Quantity" /> <parameter property="Price" dbType="Decimal" nullValue="-99.99"/> </parameterMap> <parameterMap id="lineitem-insert-params-picture"> <parameter property="Id" /> <parameter property="Order.Id" /> <parameter property="Code" /> <parameter property="Quantity" /> <parameter property="Price" dbType="Decimal" nullValue="-99.99"/> <parameter property="PictureData" dbType="Binary" /><!-- or Image --> </parameterMap> </sqlMap>