JFinal

登录 注册

jfinal 日期类型保存失败

最近,想将项目转移到pgsql平台,同时3.4对pgsql时间类型做了增强,数据库建了一张account表,类型基本上和club中的account表一致,除了status是char型,createAt是timestamp without time zone类型,config.java中配置了pgsql的方言,sql大小写不敏感了。但就是保存日期会失败,

Sql: insert into "account"("avatar", "createat", "id", "likecount", "nickname", "password", "salt", "status", "username") values(?, ?, ?, ?, ?, ?, ?, ?, ?)

org.postgresql.util.PSQLException: ERROR: column "createat" of relation "account" does not exist

account表采用的是驼峰命名,仔细分析,发现sql语句将字段名全部转成小写了,于是将“大小写不敏感”的配置注释掉,

// arp.setContainerFactory(new CaseInsensitiveContainerFactory(true));// 大小写不敏感

结果运行成功。所以,如果驼峰命名,还是保持大小写敏感比较好,以免浪费时间。

评论

  • 06-10 09:35
    CaseInsensitiveContainerFactory 这个一般不建议使用,程序还是严格点更好

    如果一定要使用 CaseInsensitiveContainerFactory,也一定不要使用构造方法的参数,例如你上面使用时传入了 true 作为参数,这个会自动转换成小写

    如果传入 false 会自动转成大写,如果不传则不转换
  • 06-10 10:48
    @JFinal 这句大小写不敏感是从其它项目里面抄过来的,没有细细体会过,以后参数配置还是严格参照club来。不给自己麻烦
  • 发送