Record中数据大写的问题?

在项目中我已经设置了CaseInsensitiveContainerFactory()对大小写不敏感,可在项目中使用的时候,返回前台的数据还是大写?这是为什么呢?

image.png

image.png

image.png

评论区

JFinal

2018-03-06 11:08

很可能你用的很古老的 jfinal 版本,老版本中的 CaseInsensitiveContainerFactory 会自动转大写

如果你用的是比较新的版本,只要 CaseInsensitiveContainerFactory 构造方法不传入 boolean 参数,是不会转大小写的

glutton

2018-03-06 11:30

@JFinal 谢谢!刚刚我试了一下,发现在ActiveRecordPlugin.setContainerFactory(),如果不设置这个,new Record()的columns会是HashMap(),如果设置的还,new Record()的columns是CaseInsensitiveMap(),这个new Record()时,内部做了什么处理呢?

JFinal

2018-03-06 11:34

@glutton 单步调试跟踪一下代码,内部结构很简单

glutton

2018-03-06 11:41

@JFinal 我单步调试跟踪发现, Record中的columns属性值是根据ActiveRecordPlugin.setContainerFactory()设置有关,但是我没有想明白他俩是怎么关联到一起的?

热门反馈

扫码入社