发现一个com.jfinal.plugin.activerecord.generator的问题

最近用JFinal3.5从mysql数据库生成model的时候,发现一个问题。

这是com.jfinal.plugin.activerecord.generator的 buildColumnMetas函数,如果表太大,DruidPooledResultSet返回的MetaData里可能会有换行,取列名的时候就带上了换行符,导致创建get和set方法失败

image.png

这就是创建出来的BaseModel

image.png

评论区

天眼

2019-03-29 12:18

自己的做法:把MetaBuilder继承一下,覆盖原先的buildColumnMetas方法,把ColumnMeta里的name和attrName里的换行都过滤掉。

杜福忠

2019-03-29 13:47

...我严重怀疑是不是你数据库的字段 本来就带有 换行符 ... 啊? 翻译的时候从网页复制过来的?

天眼

2019-03-29 14:19

的确可以建带换行的字段名,我都不知道怎么建出来,但是改正就好了

JFinal

2019-03-29 14:26

这都能想到,这是高手 @杜福忠

应该是 ctrl + c 复制字段名的时候将换行字符一并 copy 出来了, 手动输入创建字段名是不会出现这个问题的

jounzhang

2019-03-29 14:29

@杜福忠 这个猜测牛逼

热门反馈

扫码入社