Spring Data JPA / Hibernate使用杂记

如何使用LinkedHashMap

class User{
    Long id;
    Long name;
}
class TestEntity{
    @OrderBy("name ASC") // User.name 顺序
    private Map paths;
}

劫持依赖的Logger/设置空Logger/关闭依赖的Logger/Spring Boot配置logging level无效

通过反射获取Logger并设置Log Level,或者通过反射修改private static final的modifiers去更换Logger。
示例,swagger-parser打印配置是通过debug打印的,而Spring Boot并不管理该包的对象,所以需要修改。

import ch.qos.logback.classic.Level;
import ch.qos.logback.classic.Logger;
import io.swagger.v3.parser.OpenAPIV3Parser;
import java.lang.reflect.Field;

class Tool {
    public static void disableSwaggerParserLogging() {
        try {
            Field field = OpenAPIV3Parser.class.getDeclaredField("LOGGER");
            field.setAccessible(true);
            Logger logger = (Logger) field.get(null);
            logger.setLevel(Level.OFF);
        } catch (IllegalAccessException | IllegalArgumentException
                 | NoSuchFieldException | SecurityException e) {
            e.printStackTrace();
        }
    }
}

你可能感兴趣的:(Spring Data JPA / Hibernate使用杂记)