数据库是oracle,数值型定义为number。
在model中,需要以 类 的形式定义数值型!
比如:类型为Integer/Double...等,而不可以是int/double,
在xml中必须以<parameterMap>的形式定义!
其中:
1.允许为空的属性必须指明其 jdbcType.
2.jdbcType必须指明是INTEGER/DOUBLE...等,而不可以是NUMBER.
3.INTEGER/DOUBLE...等类型必须全部大写!
比如:
<parameterMap id="insert-value-paraMap"
class="com.indus.datavalue.model.ReportValue">
<parameter property="id" />
<parameter property="rplace" jdbcType="INTEGER" />
<parameter property="datavalue" jdbcType="DOUBLE" />
<parameter property="kind" />
</parameterMap>
<insert id="insertReportValue" parameterMap="insert-value-paraMap">
<![CDATA[INSERT INTO REPORT_VALUE(id,rplace,datavalue,kind) VALUES(?,?,?,?)]]>
</insert>
-------------------------------------------------------------------------------------------------------------
如果以以下的方式定义,仍然会报错。
<insert id="insertReportValue" parameterClass="ReportValue">
<![CDATA[INSERT INTO REPORT_VALUE(id,rplace,datavalue,kind) VALUES(#id#,$rplace:INTEGER:NULL$,$datavalue:NUMBER:NULL$,#kind#)]]>
</insert>
---------------------------------------------------------------------------------------------------------------
如果类型以int/double等类型定义,则当属性为空时,会默认为0存入数据库