草庐IT

grails-redis

全部标签

java - 在 tomcat 上部署 grails 应用程序时创建名称为 'transactionManagerPostProcessor' 的 bean 时出错

我正在尝试在tomcat7.0.42上部署我的grails(2.2.1)应用程序。所以我按照此link中给出的步骤进行操作来自grails网站。但是当我尝试从TomcatWeb应用程序管理器启动应用程序时,我在tomcat控制台上看到以下错误日志:Errorcreatingbeanwithname'transactionManagerPostProcessor':Initializationofbeanfailed;nestedexceptionisorg.springframework.beans.factory.BeanCreationException:Errorcreating

java - 从 Grails 应用程序执行命令

我想从我的Grails应用程序中执行svndelete。我在Grails控制台中测试了以下两项:"svndelete/usr/share/mydir".execute()Runtime.getRuntime().exec("svndelete/usr/share/mydir")在这两种情况下,返回一个java.lang.Process的实例,但是命令没有被执行(/usr/share/mydir没有被删除).此行为仅在应用程序在Linux(Ubuntu)上运行时发生。如果我在Windows上运行它,命令会执行。更新按照Tim在评论中的建议,我更改了命令,以便它捕获进程输出:defproc

java - Grails 嵌套域 - 将所有错误添加到顶级域对象

我有一个这样的Grails域:classUser{....Addressaddress}在保存用户的同时,我还想验证Address对象并将Address对象的所有错误添加到User对象本身。我正在尝试编写一个自定义validator,其中我执行it.validate(),但我无法找到一种方法来“addAll”地址的错误消息。 最佳答案 下面在grails邮件列表上讨论了对子对象调用验证并将它们附加到可能对您有用的单个错误列表。Formvalidationwithchildren如果Address有staticbelongsTo=[u

Redis——性能测试

📢📢📢📣📣📣哈喽!大家好,我是【一心同学】,一位上进心十足的【Java领域博主】!😜😜😜✨【一心同学】的写作风格:喜欢用【通俗易懂】的文笔去讲解每一个知识点,而不喜欢用【高大上】的官方陈述。✨【一心同学】博客的领域是【面向后端技术】的学习,未来会持续更新更多的【后端技术】以及【学习心得】。✨如果有对【后端技术】感兴趣的【小可爱】,欢迎关注【一心同学】💞💞💞❤️❤️❤️感谢各位大可爱小可爱!❤️❤️❤️ 目录一、为什么需要性能测试?二、语法格式三、执行性能测试小结一、为什么需要性能测试?性能测试可以让我们了解Redis服务器的性能优劣。在实际的业务场景中,性能测试是必不可少的。在业务系统上线之前

java - grails spock 测试失败,显示 'java.lang.IllegalArgumentException: ServletContext must not be null'

我在commandclass中有一个方法,它使用messageSource.getMessage(...),因为messageSource不会被注入(inject)到commandClass。我用defmessageSource=Holders.applicationContext.getBean("messageSource")在commandClass中。我的问题是在尝试编写单元测试这个方法时,@Beforevoidsetup(){Holders.applicationContext.getBean("messageSource")}void"testFunction"(){//i

java - Grails:模拟 hibernate 代理进行测试

将grails与类似于以下的域类层次结构一起使用时:abstractclassVehicle{...}classCarextendsVehicle{...}classMotorcycleextendsVehicle{...}和如下服务:classVehicleService{defstartRepairing(Carcar){...}defstartRepairing(Motorcyclemotorcycle){...}}我们在生产中经常遇到如下错误:Nosignatureofmethod:VehicleService.startRepairing()isapplicableforar

java - Grails maven 插件需要 Groovy 2.4.2

我升级到Grails2.4.2,因为据说它修复了导致它生成错误的pom.xml文件的maven插件的错误。现在,当我尝试使用mvncleaninstall运行2.4.2生成的pom时,我收到以下错误消息:[ERROR]Failedtoexecutegoalorg.grails:grails-maven-plugin:2.4.2:maven-compile(default-maven-compile)onprojectPROJECT:FailedtocreateclasspathforGrailsexecution.Failuretofindorg.codehaus.groovy:gro

java - Redis token 存储

我想在集群环境中部署我的RESTAPI。为此,我需要将我的OAuth2.0token存储在共享token存储中。目前我正在使用SpringSecurity的InMemoryTokenStore,它不能在多节点集群上共享。我打算使用Redis存储token。我发现最新版本的Spring-SecurityOAuth即2.8.0也提供了RedisTokenStore。我对此有一些疑问:在现有的spring-securityxml配置中使用RedisTokenStore需要进行哪些更改。目前我正在使用InMemoryTokenStore。如何使RedisTokenStore可与集群中的所有节点

Redis集群和Lettuce 配置

Redis官方推荐的java客户端三大客户端Jedis、lettuce、Redissonlettuce、jedis、Redisson三者比较:jedis提供全面的指令支持,在多线程环境下是非线程安全的,性能比较差;lettuce的连接是基于Netty的,连接实例可以在多个线程间并发访问;Jedis和lettuce是比较纯粹的Redis客户端,几乎没提供什么高级功能;Redisson实现了分布式和可扩展的Java数据结构,和Jedis相比,功能较为简单,不支持字符串操作,不支持排序、事务、管道、分区等Redis特性。Redisson的宗旨是促进使用者对Redis的关注分离,从而让使用者能够将精力

java - 文本在指定长度后拆分,但不要使用 grails 打断单词

我有一个很长的字符串,需要将其解析为长度不超过50个字符的字符串数组。这对我来说棘手的部分是确保正则表达式找到50个字符之前的最后一个空格,以便在字符串之间进行干净的分隔,因为我不希望单词被截断。publicListsplitInfoText(Stringmsg){intMAX_WIDTH=50;defline=[]String[]words;msg=msg.trim();words=msg.split("");StringBuffers=newStringBuffer();words.each{word->s.append(word+"");if(s.length()>MAX_WID