Grails 和 SQLite

2024-02-24

尝试让 SQLite 与 grails 一起工作...我在网上找到的东西似乎有点过时 - 对 ivy 和插件等的引用,但基于这些:

http://stackoverflow.com/questions/1199512/grails-sqlite
http://bigohno.blogspot.com/2010/01/groovy-on-grails-sqlite.html
http://maven-repository.com/artifact/org.xerial/sqlite-jdbc/3.6.17

我已经能够让它在测试环境中工作......奇怪的是,当我“prod war”我的 grails 应用程序并部署到 tomcat 时,它失败了:

未找到方言类:hibernate.SQLiteDialect

这是我的设置:

在conf/hibernate中添加了一个SQLiteDialect类。这个 .java 是从这里获取的http://code.google.com/p/hibernate-sqlite/ http://code.google.com/p/hibernate-sqlite/

然后在我的 DataSource.groovy 中我有:

hibernate {
    cache.use_second_level_cache = true
    cache.use_query_cache = false
    cache.region.factory_class = 'net.sf.ehcache.hibernate.EhCacheRegionFactory'
}
// environment specific settings
environments {
    development {
        dataSource {
            // SQLite
            // !!!see also BuildConfig for Dependancies!!!
            dbCreate="update"
            url='jdbc:sqlite:C:\\sqlite-shell-win32-x86-3080100\\rss_1.db'
            logSql="true"
            dialect="hibernate.SQLiteDialect"
            driverClassName="org.sqlite.JDBC"
            readOnly="true"

        }
    }

    production {
        dataSource {
            // SQLite
            dbCreate="update"
            url="jdbc:sqlite:/opt/sqlite/dbs/rss/1/rss_1.db"
            logSql="true"
            dialect="hibernate.SQLiteDialect"
            driverClassName="org.sqlite.JDBC"
            readOnly="true"
            showsql="false"

        }
    }
}

在 BuildConfig.groovy 中我有:

dependencies {

        runtime 'org.xerial:sqlite-jdbc:3.6.17'

    }

我还打包了 .java 方言类并放入 lib - 有些帖子说这有帮助。我还将 sqlite-jdbc-3.7.15-M1.jar 放入 lib 中。

现在,当我在开发环境中运行应用程序时,它运行良好......但是当我部署到 tomcat 时,我收到方言错误。

我需要对方言的产品环境做一些特殊的事情吗?


以下是如何使用 Grails 设置 SQLite:

从以下位置下载 SQLitehttp://www.sqlite.org/download.html http://www.sqlite.org/download.html,解压并保存到目录。您可能还想为数据库创建目录。

从以下位置下载 SQLite JDBC jarhttps://bitbucket.org/xerial/sqlite-jdbc https://bitbucket.org/xerial/sqlite-jdbc并将 jar 放入 grails lib 目录中。

下载一个SQLite方言...google搜索一下,有很多,不过你可以参考一下https://github.com/gwenn/sqlite-dialect https://github.com/gwenn/sqlite-dialect or https://gist.github.com/virasak/54436 https://gist.github.com/virasak/54436

在 grails 中,在 src/java 中创建一个类并放入您的方言代码。

我还将这个类打包并放入 lib 中。

设置您的 grails 数据源,例如:

dataSource {
            // SQLite
            dbCreate="update"
            url="jdbc:sqlite:/opt/sqlite/dbs/rss/1/rss_1.db"
            logSql="true"
            dialect="SQLiteDialect"
            driverClassName="org.sqlite.JDBC" 
}

注意:根据您的 sqlite 方言类是否在包中,您可能需要将包名称添加到上面的方言前面(我的不是)。

在 BuildConfig.groovy 中,添加对 sqlite jdbc 的依赖项,如下所示:

dependencies {

        runtime 'org.xerial:sqlite-jdbc:3.6.17'

    }

这对我有用!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Grails 和 SQLite 的相关文章

  • iPhone SQLite页面缓存不断增长

    I use sqlite数据库用于存储 还有许多数据库事务 我的问题是 sqlite 页面缓存的内存使用量快速增长 在instruments我可以找到这条线 Graph Category Live Bytes Living Transien
  • 无法创建“DependencyManagementReportTask”类型的任务。 Gradle 新手

    我是 Grails 3 和 Gradle 的新手 我正在努力将应用程序 2 4 4 更新到 Grails 3 2 8 通过升级 我想从头开始构建一个插件 我无法使用声明依赖项的标准方法将其包含到项目中 我正在尝试使用 gradle 构建 g
  • 使用 sqlite 离线存储数据的 Web 表单应用程序

    我有一个 asp net Web 表单应用程序 它在远程服务器上使用 sql server 2005 所有控件均使用 linq to sql 绑定 我正在尝试提供完整的离线功能 所以我想知道是否可以像 sql server db 一样创建一
  • 在grails控制器中识别ajax请求或浏览器请求

    我正在开发一个使用大量ajax的grails应用程序 如果请求是ajax调用 那么它应该给出响应 这部分正在工作 但是如果我在浏览器中输入URL 它应该带我到主页 索引页面而不是请求的页面 下面是ajax调用的示例gsp代码
  • Windows 7 x64 上的 Ruby on Rails SQLite 问题

    当我尝试做的时候db create使用 Windows 7 x64 在具有此数据库配置的 sqlite 数据库上 development adapter sqlite3 database db development sqlite3 tim
  • Android中不同线程的数据库访问

    我有一个在 AsyncTasks 中从互联网下载数据的服务 它解析数据并将其存储在数据库中 该服务持续运行 当服务写入数据库时 活动会尝试从数据库中读取更改 我有一个数据库助手 有多种写入和读取方法 这会导致问题吗 可能尝试从两个不同的线程
  • SQLite 返回错误的 2013 年周数?

    我有一个简单的 SQL 来计算 SQLite 报告中的周数 SELECT STRFTIME W date column 2009 2012 年的数据是正确的 2013 年我总是得到错误的周数 例如 SELECT STRFTIME W 201
  • 填充 CoreData 创建的 sqlite 数据库

    我有一个由 CoreData 模型自动创建的 sqlite DB 但我的应用程序不会让用户能够将数据写入其中 而是我想用程序所需的所有数据预先填充它 我的问题是 CoreData 创建的 sqlite DB 具有未知的表和字段 这些表和字段
  • 在android中创建SQLite数据库

    我想在我的应用程序中创建一个 SQLite 数据库 其中包含三个表 我将向表中添加数据并稍后使用它们 但我喜欢保留数据库 就好像第一次安装应用程序时它会检查数据库是否存在 如果存在则更新它 否则如果不存在则创建一个新数据库 此外 我正在制作
  • Android 上的 SQLite 和 MongoDB 具有同步功能

    是否可以在 Android 上使用 SQLite 在服务器上使用像 MongoDB 这样的 NoSQL 数据库 并在两者之间进行 2 路数据复制 同步 或者最好在两端使用 SQL 或者在两端使用 NoSQL 但不要混合使用 有几种不同的方法
  • 如何从 SQLite 获取记录总数

    我正在尝试从 Sqlite DB 获取行的总数 以下是我想要做的代码片段 我不知道我在这里做错了什么 public static int getTotalCount Context context Cursor c null try c g
  • 适合 .Net 开发人员的 Grails/Roo

    我目前正在学习 Grails 和 Roo 绝大多数培训材料都是针对新开发人员或现有 Java 开发人员 有谁知道使用 Net C ASP Net Asp Net MVC 翻译现有开发经验的任何指南 资源或技巧 你做过很多 ASP MVC 吗
  • UrlMapping 和文件扩展名

    我有以下 url 映射 name a a file controller attachment action get 我想像这样使用它
  • Python Sqlite3 获取 Sqlite 连接路径

    给定一个 sqlite3 连接对象 如何检索 sqlite3 文件的文件路径 The Python 连接对象 http github com python cpython blob master Modules sqlite connect
  • 将自动递增值添加到只有一列的表中

    我需要创建一个基本上仅保留索引列表的表 因此 我创建了一个只有一个名为 id 的自动递增列的表 但是 我似乎无法隐式地将自动递增值添加到该表中 我知道通常当您在表中有这样一列 不仅仅是此列 时 您可以执行以下操作 插入表 col1 col2
  • Grails - 在 Criteria API 中加入关联两次

    可以在标准中加入两次协会吗 def criteria User createCriteria def results criteria list childObject1 eq childObjProp childObjProp1 chil
  • 如何在 Grails 中管理对象修订?

    我需要对我的文章实施修订系统grails网络应用程序 在搜索 grails 论坛 stackoverflow grails 插件和谷歌搜索互联网后 我最终得到了 3 个选项 Option 1 使用grails Envers 插件 see h
  • 将现有数据库放置在我的项目中的何处

    我想在基于 Android Android Studio 的项目中使用现有的 sqlite 数据库 我在 Google 上进行了搜索 有人建议将其放在 资产 文件夹中 但是在项目结构中没有这样的文件夹 项目中的文件夹结构如下 res 可绘制
  • Grails GORM 和枚举

    我在 Grails 中使用枚举时遇到问题 我尝试在 grails 域对象中使用枚举 code package it xxx tools kanban import java util Date class Task String name
  • Core Data 与 SQLite 3 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi

随机推荐

  • 为什么 IE7 无法识别锚标记上的 css 填充样式?

    我的网站在 Firefox Safari Chrome 和 Opera 中运行良好 但由于某种原因 IE7 无法识别任何锚标记上的 CSS 填充 我无法弄清楚这一点 在 IE7 中 如果您查看主页上显示 独家 热门 最近评论 的选项卡htt
  • 如何使用谷歌脚本检测两个单独行中的重复值?

    我正在尝试使用 Google 脚本和 Google 电子表格检测 B 列中的值是否已在 A 列中提及 这些列位于 2 个单独的工作表中 由于某种原因 我没有足够的经验来让它工作 提前谢谢 获取北欧 function insert e she
  • 使用不同的指针类型作为参数来转换函数指针

    我认为以下代码描述了我想要做的事情 具体来说 我希望将函数指针转换为通用函数类型 签名的唯一区别是指针类型不同 现在 我知道函数指针需要兼容的正如所讨论的这个问题 https stackoverflow com questions 5595
  • python 3 字符串格式化(对齐)

    我有一个代码 其输出应如下所示 hello 3454 nice 222 bye 45433 well 3424 对齐和正确的理由给我带来了问题 我在字符串 0 gt 7 中尝试了此操作 但只有具有特定位数的数字才可以 其他有一些数字的数字或
  • Android 中带手势(滑动功能)的 VideoView

    我想合并默认值视频查看 and 手势监听器 如果用户向左滑动则歌曲向后播放或向右滑动则歌曲向前播放 我想在 VideoView 上实现类似的方法 通过以下代码打开默认媒体播放器 Intent intent new Intent androi
  • pycosat中慢速dnf到cnf

    问题简述 有一个适当的输入pycosat https pypi org project pycosat 有没有办法加速从dnf到cnf的计算 或者完全绕过它 详细问题 我一直在看这个视频 https www youtube com watc
  • ARC 相当于自动释放?

    如果我有这个代码 MyCustomClass myCustomClass return MyCustomClass alloc init autorelease 这段代码保证返回的对象是自动释放的 在 ARC 中相当于什么 ARC 中没有类
  • HTTP PUT 的查询参数的 Curl 命令行编码

    我有多个查询参数想要使用curl 在 HTTP PUT 操作中发送 如何对查询参数进行编码 例子 curl X PUT http example com resource 1 param1 value 201 param2 value2 如
  • 如何使用 Express 和 connect-timeout 自定义超时响应?

    我想自定义在触发超时错误时发送给用户的响应 更具体地说 我想将它们重定向到静态页面 解释为什么会引发超时错误 我想写一些类似的东西 var express require express var timeout require connec
  • Laravel 无法验证用户身份

    userdata array email gt Input get email password gt Input get password if Auth attempt userdata echo SUCCESS else return
  • 格式化没有这样的文件或目录

    我试图使用 C 格式实用程序 std format 我尝试编译这个简单的程序 include
  • Cassandra 中分区键、复合键和集群键之间的区别?

    我一直在网上阅读文章以了解以下内容之间的差异key类型 但这对我来说似乎很难理解 例子肯定有助于更好地理解 primary key partition key composite key clustering key 对此有很多困惑 我会尽
  • 使用 jQuery,如何选择元素 id 以某个字符串结尾的所有元素?

    使用jQuery 如何选择其中的所有元素id属性以某个字符串结尾 有一个属性结尾为选择器 attr value http api jquery com attribute ends with selector 像这样 id somethin
  • 当重叠很少时找到重叠间隔

    我有一个巨大的数据库表n整数区间 例如 1 5 4 16 6434 114343 并且需要找出哪些间隔相互重叠 有丰富的SO的类似问题 https stackoverflow com questions 4542892 possible i
  • 为什么单字母 UDF 名称不能使用 C 或 R?

    我可以编写以下有效的 VBA 函数 Public Function C As Long C 5 End Function Public Function R As Long R 6 End Function 但如果不使用 VBA 项目或模块
  • 为什么将列表作为参数传递比传递生成器性能更好?

    我正在回答这个问题 https stackoverflow com questions 59925390 how to count different elements in list of lists 59925564 noredirec
  • 将点平面分成相等的两半[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 给定一个二维平面 其中有 n 个点 我需要生成一条线的方程 该线将平面分开 使得一侧有 n 2 个点 另一侧有 n 2 个点 我假设这些点
  • Rails - params[:commit] 的目的是什么

    我注意到 每次将 Rails 表单发送到服务器时 提交按钮的名称 通常是按钮上显示的字符串 都会包含在params散列为 提交 例如 最后一个条目 utf8 gt authenticity token gt eZABpBuW7afziDMU
  • 字符串函数如何计算字符串行中的分隔符

    我有一个如下所示的字符串行 A B C D E F G H I J K L M 这意味着分隔符 计数为 12 这条线是有效的 现在假设您有以下行 A B C D E F G H 该行也是有效的 因为它包含 12 个分隔符 其中存在 8 个值
  • Grails 和 SQLite

    尝试让 SQLite 与 grails 一起工作 我在网上找到的东西似乎有点过时 对 ivy 和插件等的引用 但基于这些 http stackoverflow com questions 1199512 grails sqlite http