草庐IT

java - 我如何在 spock 测试中使用 redisService 我需要清理 redis 数据库以进行设置和清理

我有一个在redis中存储值的类。当我测试它时,它工作正常。如果我为第二本书运行它,它将失败,因为redis上已经有一个条目。我想在运行测试之前和测试完成之后清理redis数据库,但我无法做到这一点。我正在运行grails2.2.4。我试过@autowired注解,@mock(RedisService),还有redisService=grails.util.Holders.applicationContext.getBean('redisService')作为RedisService并且我无法创建redisService的实例。这就是我想要做的:redisService.withRed

performance - Redis 是执行大规模计算的好选择吗?

目前正在从oracle数据库中拉取大量数据,然后在web端进行计算生成HTML报告。我正在使用Groovy和Grails框架来生成报告。现在的问题是,我们的计算量非常大,在网页端生成报告需要花费大量时间。我正计划重新构建我的报告,因此它可以非常快速地生成报告。我对ORACLE数据库没有任何命令,因为它是第三方生产数据库。我不想对数据库进行任何复制,因为它有数百万条记录,所以无法安排和复制它会减慢生产速度。我终于想出了一些缓存架构,它的性能就像一些计算引擎。任何人都可以通过提供最佳解决方案来帮助我吗?谢谢 最佳答案 您的数据结构是什么

grails - grails-redis 插件的配置

我正在尝试使用grails-redis插件,以便我可以实现分布式对象缓存。我的BuildConfig中有缓存和缓存-redis:compile':cache:1.1.8'compile":cache-redis:1.1.0"而且我在本地运行了redis。我知道它在工作,因为如果我杀死redis,grails应用程序将无法连接到它。我没有找到的是当我不在本地运行时如何修改redis的配置。docshere中没有任何内容.我还查看了sourcehere并没有发现任何值得注意的东西。如何配置Redis设置(主机、端口、超时等)? 最佳答案

来自 Grails 的 MongoDB 'upsert'

我正在尝试在Grails/GORM/mongodb插件/MongoDB中实现一个简单的“插入或更新”(所谓的“upsert”)方法。我在Hibernate中使用的方法(使用合并)因重复键错误而失败。我推测merge()可能不是mongodbGORM中受支持的操作,并尝试通过GMongo获取native更新插入方法。我终于有了一个可用的版本(如下所示),但这可能不是最好的方法,因为向要保存的对象添加任何字段都会悄无声息地破坏代码。publicvoidupsertPrefix(p){defo=newBasicDBObject()o.put("_id",p.id)o.put("someVal

mongodb - grails mongodb 连接被拒绝

我的grails应用程序可以连接到我的本地mongodb并且工作正常,但是当我部署到cloudfoundry时,我在尝试连接到cf上的mongodb时遇到连接被拒绝的错误。我的应用程序绑定(bind)了一个mongodb服务,但它仍然无法连接?barry-alexanders-MacBook-Pro:~barryalexander$vmc应用程序+-------------+----+---------+-------------------------+-----------------+|Application|#|Health|URLS|Services|+-----------

mongodb - Grails:查找具有包含具有给定属性值的对象的列表属性的对象

我正在开发Grails应用程序。我们有一个名为User的域对象,User的属性之一是Role对象列表。角色有一些属性,其中之一是“名称”。我需要找到在其角色列表属性中具有特定名称角色的所有用户对象。User:ListrolesRole:Stringname因此,给定一个用户列表,我需要找到在其角色列表属性中具有名为“SUPERUSER”的角色的所有用户。后端的数据库是MongoDB,所以我们不能使用SQL查询或类似的东西(应用程序根本不使用Hibernate)。据我所知,动态查找器和CriteriaBuilder解决方案都可以。如有任何帮助,我们将不胜感激。我想我忽略了一些明显的事情,

mongodb - 无法在 Grails 中使用 gmongo 插入唯一文档

我使用gmongo(用于Grails)库将数据插入mongodb。我想插入独特的元素。我尝试为MongoDB创建一个唯一索引:db.collection.ensureIndex({"object_id":1},{unique:true})但是,当我尝试通过web服务同时插入多次一次数据时,会出现一些重复的元素。也许,当我插入500个文档时,我得到了3-5个重复的元素提前致谢。 最佳答案 您可以将函数ensureIndex和update方法与upsert参数(true)结合起来。语法:db.collection.update(,,,)

mongodb - 无法使用 MongoDB GORM 插件在集成测试中保留实体

上下文:我创建了一个名为AppDomain的新插件,其中包含Mongo3.0.1插件。它有一个领域类(Person)和一个集成测试(PersonSpec)。问题:正在生成id。appdomain数据库和人员集合正在Mongo中创建。但是,集成测试在集合计数上失败。注意事项:在查阅了我能找到的所有文档并对生成的AppDomain插件代码进行了最低限度的更改之后,我不知道为什么此处包含的持久性测试失败了。我有一个使用junit测试使用grails2.2.2配置的类似插件,效果很好。感谢任何帮助。packageappdomainclassPerson{StringfirstNameStrin

mongodb - 我们可以在 findAll 中给出多个东西吗

我有一个Employee域,其中包含Professional_id。Professional域里面有个叫level的字段。现在我想提取同一级别的所有员工。如何编写查询?我想要类似的东西defemp=Employee.findAllByProfessional_id(Professional.findAllByLevel(5))员工域-:classEmployee{StringusernameStringpasswordStringreg_noStringdesignationStringpersonal_idStringprofessional_idstaticconstraints=

mongodb - 无法获取 grails 中关联字段的 dirtyPropertyNames 属性值

我需要检查对象的先前状态,以便记录发生的更改。我正在使用dirtyPropertyNames来提取此类属性,但它没有给我关联字段的持久值,我的代码在下面给出classEmployee{StringnameStringtitleStringcityListaddressesListskillsstatichasMany=[skills:Skill,addresses:Address]}staticbelongsTo=[Skill]staticembedded=['skills','addresses']}在我的beforeUpdate()方法代码中,当我检查dirtyProperties