栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何在iBatis中返回NULL值?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何在iBatis中返回NULL值?

多亏了乔凡尼(Giovanni)的回答,我注意到了类型处理程序的示例,然后从那里开始:

public class EmptyStringTypeHandler extends StringTypeHandler {  @Override  public String getResult(ResultSet rs, String columnName) throws SQLException {    return unnulledString(super.getResult(rs, columnName));  }  @Override  public String getResult(ResultSet rs, int columnIndex) throws SQLException {    return unnulledString(super.getResult(rs, columnIndex));  }  @Override  public String getResult(CallableStatement cs, int columnIndex) throws SQLException {    return unnulledString(super.getResult(cs, columnIndex));  }  private String unnulledString(String value) {    return StringUtils.defaultString(value, "");  }}

现在的界面是:

public interface DaoMapper {  @Select({      "SELECT col1, col2, col3",        "FROM my_table" })  @Results(value = {      @Result(column = "col1", property = "col1", typeHandler = EmptyStringTypeHandler.class),      @Result(column = "col2", property = "col2", typeHandler = EmptyStringTypeHandler.class),      @Result(column = "col3", property = "col3", typeHandler = EmptyStringTypeHandler.class)  })  List<linkedHashMap<String, ?>> getUntyped();}

我应该补充一点,最大的好处是我可以在每条语句的每一列中指定它。为了更通用,最好按每个语句指定此名称。也许在将来的版本中?



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/516254.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号