码迷,mamicode.com
首页 > 其他好文 > 详细

mybatis注意事项

时间:2015-04-16 13:49:22      阅读:146      评论:0      收藏:0      [点我收藏+]

标签:

1. mybatis中查询语句中的resultType的对象的属性都要能在select语句中有对应,不能少也不能多。

        例如:

         SELECT
            DISTINCT f.city_name                  as cityName,
            ifnull(c.business_type,‘未知业务类型‘)        as businessType,
            ‘‘                                    as parentCityName,
            ‘‘                                    as aliasName

 其中parentCityName,aliasName这两个属性在resultType的对象中存在,那么,即使我们在结果集中不用这两个属性,也要给它们赋值,此例子中给了它们空字符串。

 

2. mybatis中查询语句中的resultType的对象的属性类型与DB中的该属性的数据类型可以不一样。

   例如:

    SELECT
            f.no                  as number

 其中no字段在DB中的类型为int(4),  而结果对象中的number属性类型为String,这是合法的,会自动转换为String类型的。(在可以装换的情况下是可以的。但是如果字符串装换为Date类型,这个是不能转换的。)

 

3. mapper.xml中的<mapper namespace="org.wlj.project.MyMapper">,是为了反射找到与之对应的java接口。

如:

package org.wlj.project;
import java.io.Serializable;
import java.util.List;

public interface MyMapper
{
    /**
     * @TODO 方法描述
     * @return
     */
    List<City> findAllCitys();
    
    /**
     * @TODO 方法描述
     * @param paramsVO
     * @return
     */
    List<Object> findUsers(Serializable paramsVO);
}

 

4. mybatis的parameterType的对象的属性都要能在mapper.xml中的语句中,可以有没有用到的属性名。但是用到的属性类型应该与DB中的相应字段类型保持一致。

 如:

                <when test="intType == 1">
                    f.detail_stat_type = #{intType}

     其中detail_stat_type类型为int(4),  intType也应该为Integer或long类型,但是不能为String类型的。

 

 

 

 

 

 

 

 

 

 

mybatis注意事项

标签:

原文地址:http://www.cnblogs.com/wenlj/p/4431693.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!