Mapping未配置Model时,调用model的方法报空指针

Mapping未配置Model时,调用model的方法报报空指针异常,体验不好,每次都不能及时想到未配置mapping, 建议优化异常提示,这个问题别人问我多次,并且我自己也经常入坑。

评论区

zhangtianxiao

2019-04-25 09:22

早上好

JFinal

2019-04-25 09:44

这个地方,最初是为了减少一个 if ( config == null) 判断,属于对于性能极致的强迫症犯了

后来有不少人碰到这个异常,想加上一个 if 判断,进行提示,但已经有人在这么使用了:
Config config = getConfig();
if (config == null)
...

也就是说, null 值的 config 对于有些用户的场景是有意义的,如果现在加上 null 值判断并抛出带有明确提示信息的异常,兼容性会有问题

如果是我自己用早就加上 if 判断并抛出 new IllegalStateException("当前 model 未映射"),进化 8 年的 jfinal 做出任何改变都要考虑很多

Sohnny

2019-04-25 10:23

@JFinal 可以在开发模式的时候控制台输出一下,碰到这个问题的也基本都是开发环境

Sohnny

2019-04-25 10:26

@zhangtianxiao 昨天突然有人问我, 然后我自己昨天也刚好碰到,所有今天早上想起来就用手机反馈一下, 免得以后忘记.

JFinal

2019-04-25 10:59

@Sohnny 这个问题我也会考虑改进,或许可以不顾 null 值的场景

Sohnny

2019-04-25 11:26

@JFinal 恩,直接控制台提示一下就行