草庐IT

grails-3.1

全部标签

java - 了解 Groovy/Grails 类加载器泄漏

昨天我将我的第一个Grails(2.3.6)应用程序部署到开发服务器并开始监控它。我刚刚得到一个自动监视器,指出CPU已固定在这台机器上,所以我通过SSH连接到它。我运行top并发现是我的Java应用程序的PID固定了服务器。我还注意到内存为40%。几秒钟后,CPU停止固定,下降到正常水平,内存又下降到大约20%的范围内。经典的主要GC。在收集时,我进行了堆转储。在GC之后,我在JVisualVM中打开转储,看到大部分内存分配给org.codehaus.groovy.runtime.metaclass.MetaMethodIndex.Entry类。总共有将近250,000个这样的实例,

java - 我可以使用 Grails 但使用 Java 编写代码吗?

我听过和读过很多关于Grails框架的内容。我从他们的网站了解到,这是一个旨在针对Groovy语言的框架。Grails看起来像是一个比Spring和Struts这样需要太多配置才能设置的框架更适合中小型应用程序的框架。但与此同时,由于不够成熟、难以找到开发人员等原因,我不太愿意直接使用Groovy语言。我想知道我是否可以使用Java代替Groovy,同时利用Grails(或模仿Rails的东西)的优势。那么,我可以使用Grails框架但使用Java语言编写代码吗?尽管Groovy看起来像是Java的超集并且它们都可以彼此无缝地工作,但我找不到一个地方具体说明我是否可以使用Grails并

java - 如何使用 Spock 测试 Grails 服务?

我有一个EncouragementService.groovy,方法如下classEncouragementService{defstripePaymentServicedefencourageUsers(Listusers){if(null!=users&&users.size()>0){for(Useruser:users){//logicstripePaymentService.encourage(user)//}}}}为了在JAVA世界中测试以上代码,使用JUnit我将首先在设置中创建两个或三个用户。将用户列表传递给encourageUsers(...)方法并检查我想要的结果。

java - 使用 servlet 3.1 异步 io 有什么真正的好处?

我想知道,如果像Tomcat、Jetty等servlet容器已经使用nio来读取和写回数据,是否真的需要使用setWritelistner和setReadListnerservlet输入和输出流?是否有任何额外的性能提升? 最佳答案 Tomcat读取header(并且以NIO的非阻塞模式执行)但是读取请求体是一个应用程序关注点并且被执行具有阻塞IO(直到规范的Servlet3.0要求)。同样地,编写响应是通过阻塞IO完成的,因为这也是一个规范要求。所有这些都随着Servlet3.1发生了变化。你可能想看看emailThread为此下

Grails 生成 seo 友好的 URLS

我是grails的新手,我对使用SEO友好的URL创建View有一些疑问。假设我有一个页面,我想调用used-products或https://www.sampledomain.com/used-products,我将如何着手创建一个View并将其解析为二手产品?另一个例子是/cell-phones/droid-razor-l1956我对ModelViewController不够熟悉,不知道如何构建我的Controller/View来生成这样的URL。如果有人能帮助我理解如何实现这个目标,我将不胜感激。 最佳答案 /二手产品页面使用

Grails URL 映射

在我的Grails应用程序中,我有几个域类,比如Author和Book。我正在使用默认的URL映射:staticmappings={"/$controller/$action?/$id?"{constraints{//applyconstraintshere}}}所以显示id为2的书的相对URL是/book/show/2或者对于id为5的作者来说是/author/show/5。Author和Book类都有唯一的name属性。我更希望URL显示作者或书籍使用名称而不是数据库ID来标识书籍/作者,例如/author/show/shakespeare和/book/show/ulysses。这

Grails Controller 重定向和 SEO

我不确定我的问题是否有意义。我已经阅读了有关该主题的所有内容,但它没有回答我的询问。所以这里是:我知道搜索引擎不考虑具有302状态的临时重定向。他们在将一个页面重定向到另一个页面时不传递任何链接汁。301状态重定向不是这种情况。Grails默认所有重定向到302状态。我的问题是:这会对SEO产生任何不良影响,还是根本不会影响?我在这里说的是Controller在处理Action调用时的重定向。由于这不是将一个页面位置更改为另一个页面位置,而是用户进入应用程序的方式,我应该关心我的Controller操作发出什么样的重定向吗?欢迎提供任何解释。 最佳答案

grails - 在 Grails URL 中包含名称

在我的Grails应用程序中,我有几个域类,比如Author和Book。我正在使用默认的URL映射:staticmappings={"/$controller/$action?/$id?"{constraints{//applyconstraintshere}}}所以显示id为2的书的相对URL是/book/show/2。要显示ID为5的作者,它是/author/show/5。Author和Book类都有一个name属性,但这不能保证是唯一的。出于SEO原因,我想在这些URL中包含此名称,例如将显示书籍的URL更改为/book/show/2/the+davinci+code并将显示作者

grails - 在 Grails 应用程序中创建 "pretty"用户配置文件 URL

任何已经使用Grails实现过类似功能的人都可以告诉我哪些是创建格式为“http://www.myservice.com/username”的用户配置文件URL的良好实践(如果有的话),例如在Facebook、Twitter、Linkedin中?我正在尝试通过UrlMappings实现它,在我看来我需要打破代码约定,至少对于Controller而言。所以,欢迎任何建议,谢谢。更新1当我提到我担心违反代码约定时,我的意思是我想使用此映射显示用户配置文件,但我的应用程序中确实有其他对象,我想使用默认设置访问这些对象映射:"/$controller/$action?/$id?"()解决方案感

如何在CAS登录后重定向的Grails 3应用程序进行功能测试?

问题我有一个使用CAS(中央身份验证服务)登录的应用程序。在配置中(application.yml),CAS配置如下:grails:plugin:springsecurity:#...otherconfigurationsomitted...cas:serverUrlPrefix:"https://"serviceUrl:https://localhost:8443/myapp/login/cas#...otherconfigurationsomitted...运行功能测试时,启动了tomcat服务器,例如随机端口号,例如http://localhost:45359每次运行总是在变化。似乎该应