JFinal

登录 注册

生成sqlite的model时blob类型映射成了string

生成sqlite的model时字段blob类型映射成了string,这不对吧,怎样生成正确的映射类型呢?

评论

  • 03-08 17:02
    sqlite 在 PC 或 Server 端用得比较少,它的 JDBC 驱动对于 meta 获取的 API 可能不完善

    解决办法是继承一下 MetaBuilder,覆盖里面生成 java 类型的方法,自己定制就可以了
  • 03-08 17:10
    @JFinal 好的
  • 03-10 15:37
    @JFinal 自己定制还是会遇到问题,拿不到sqlite的数据类型,metadata的columntype始终是0
  • 03-10 16:42
    @libofei 之所以没能支持 sqlite,就是因为它的这些 meta data 信息返回不正确,这个时候就需要你针对性的添加逻辑判断强行给定正确的 columntype
  • 03-10 19:49
    @JFinal 判断依据是什么呢?
  • 03-10 22:38
    @libofei 这个只能根据你碰到的需求来做
  • 03-11 08:48
    @JFinal 那可能只能根据顺序或字段名识别了,这样程序就只能处理固定的表结构了
  • 03-11 16:09
    @JFinal 用findbyid查询时,报异常not implemented by sqlite jdbc driver,是不是不支持这个语句?后来换用query,返回的是object,这个应该怎么处理呢?
  • 03-11 16:25
    @libofei 先配置 arp.setShowSql(true) ,将 sql 输出, 看看是什么 sql 不支持

    按理说 findById 的 sql 是支持的,因为就是最基本的:select * from t where id = ?
  • 03-11 17:17
    @JFinal 感觉不是sql不支持,而是jdbc里的函数不支持
  • 03-11 17:20
    @JFinal jfinal-version-all.zip在哪里下载我找不到
  • 03-11 17:48
    @两行泪 首页右侧 jfinal 3.6 all
  • 03-11 17:49
    @libofei sqlite 的 JDBC 驱动没有很好实现 JDBC 的规范,所以就有问题,升级一下驱动到最新版本试试
  • 03-11 17:49
    @JFinal 哪怕输入最简单的select * from tiles 也报这个错,而直接在sqlite工具里运行sql是可以返回结果的
  • 03-12 11:29
    @JFinal 试了sqlitejdbc3.25版,还是不行,不过报错变成了java.sql.sqlfeaturenotsupportedexception
  • 03-12 15:52
    @JFinal 旧版的去哪里下载?
  • 03-12 16:29
    @两行泪 maven 库中全都有,永久存在:
    https://mvnrepository.com/search?q=jfinal

    https://search.maven.org/search?q=jfinal
  • 03-12 16:43
    @JFinal 为什么用非maven的方式搭建Jfinal,运行成功,页面没有出现Hello World
  • 03-14 14:14
    @JFinal 如果想使用数据库jdbc自带的一些接口怎么获得数据源对象?比如想得到sqlitedatasource
  • 03-14 14:17
    @libofei 搜索一下:java DataSource

    会出来很多例子代码
  • 03-14 15:26
    @JFinal 呃,我是说在用jfinal自带的数据连接机制的情况下怎么获取这些对象
  • 03-14 15:57
    @libofei DbKit.getConfig().getDataSource()
  • 03-14 16:33
    @JFinal 这个获取的还是jfinal的数据源,如druidplugin这种,如果我想获得jdbc库的数据源如sqlitedatasource,应该怎样获得?
  • 03-14 16:38
    @libofei 单步调试,看看 DbKit.getConfig().getDataSource() 获取到的对象是什么类型,或许就是你要的类型,那么强制类型转换即可

    如果不是你要的类型,单步调试在断点停下时看对象里头包含的属性有没有你要的东西

    DbKit.getConfig().getDataSource() 得到的很可能是一个包装类,里头会有你要的东东,通过其提供的 getter 方法获取得到,如果没有 getter 方法,可以通过反射获取
  • 03-14 17:44
    @JFinal 我尝试过强转,但报了异常,返回结果就是druiddatasource,那就得看这个里面是否包含原始的数据源了
  • 发送