code: public static MappingColumn[] getMappingColumns(final Class<?> entityType, final SqlKind kind) {
  		if (entityType == null) {
  			return new MappingColumn[0];
  		}
  
  		Map<SqlKind, MappingColumn[]> cols;
  		synchronized (CACHE) {
  			cols = CACHE.get(entityType);
  		}
  		if (cols != null) {
  			return cols.computeIfAbsent(kind, k -> cols.get(SqlKind.NONE));
  		}
  
  		Map<SqlKind, Map<String, MappingColumn>> fieldsMap = Stream.of(SqlKind.NONE, SqlKind.INSERT, SqlKind.UPDATE)
  				.collect(Collectors.toMap(e -> e, e -> new LinkedHashMap<>()));
  
  		JavaType.ImplementClass implementClass = new JavaType.ImplementClass(entityType);
  
  		walkFields(entityType, implementClass, fieldsMap);
  
  		final Map<SqlKind, MappingColumn[]> entityCols = fieldsMap.entrySet().stream()
  				.collect(Collectors.toConcurrentMap(e -> e.getKey(),
  						e -> e.getValue().values().toArray(new MappingColumn[e.getValue().size()])));
  
  		synchronized (CACHE) {
  			CACHE.put(entityType, entityCols);
  		}
  		return entityCols.computeIfAbsent(kind, k -> entityCols.get(SqlKind.NONE));
  	}
docs: カラムマッピング情報取得
  
  @param entityType エンティティ型
  @param kind SQL種別
  @return カラムマッピング情報