扫描二维码下载沐宇APP

沐宇

微信扫码使用沐宇小程序

沐宇

mybatis涓璴ist杞瑂tring鎬庝箞瀹炵幇

扬州沐宇科技
2024-01-11 01:38:07
mybatis

鍦∕yBatis涓紝灏哃ist杞崲涓篠tring鍙互浣跨敤浠ヤ笅鏂规硶锛?/p>

  1. 浣跨敤OGNL琛ㄨ揪寮忥細鍙互浣跨敤OGNL琛ㄨ揪寮忓皢List涓殑鍏冪礌杩炴帴涓轰竴涓瓧绗︿覆銆備緥濡傦細
<foreach collection="list" item="item" separator=",">
  ${item}
</foreach>

杩欓噷鐨?code>list鏄竴涓狶ist绫诲瀷鐨勫弬鏁帮紝item鏄疞ist涓殑鍏冪礌锛?code>separator鏄繛鎺ュ厓绱犵殑鍒嗛殧绗︺€?/p>

  1. 浣跨敤鑷畾涔塗ypeHandler锛氬彲浠ヨ嚜瀹氫箟涓€涓猅ypeHandler鏉ュ鐞哃ist绫诲瀷鐨勫弬鏁般€備緥濡傦細
public class ListTypeHandler implements TypeHandler<List<String>> {

  @Override
  public void setParameter(PreparedStatement ps, int i, List<String> parameter, JdbcType jdbcType) throws SQLException {
    ps.setString(i, StringUtils.join(parameter, ","));
  }

  @Override
  public List<String> getResult(ResultSet rs, String columnName) throws SQLException {
    String value = rs.getString(columnName);
    return Arrays.asList(value.split(","));
  }

  @Override
  public List<String> getResult(ResultSet rs, int columnIndex) throws SQLException {
    String value = rs.getString(columnIndex);
    return Arrays.asList(value.split(","));
  }

  @Override
  public List<String> getResult(CallableStatement cs, int columnIndex) throws SQLException {
    String value = cs.getString(columnIndex);
    return Arrays.asList(value.split(","));
  }
}

鐒跺悗锛屽湪Mapper鎺ュ彛鐨勬柟娉曚腑浣跨敤@Param娉ㄨВ鎸囧畾鍙傛暟鐨凾ypeHandler锛屼緥濡傦細

void updateList(@Param("list") List<String> list);

浣跨敤鏃讹紝浼氳嚜鍔ㄨ皟鐢═ypeHandler鐨?code>setParameter鏂规硶灏哃ist杞崲涓篠tring浣滀负SQL鐨勫弬鏁般€?/p>

杩欐牱灏卞彲浠ュ皢List杞崲涓篠tring鍦∕yBatis涓娇鐢ㄤ簡銆?/p>

扫码添加客服微信