小编Rya*_*nch的帖子

从Groovy中的列表中删除空项

从Groovy中的列表中删除空项的最佳方法是什么?

例如: [null, 30, null]

想要回归: [30]

groovy

53
推荐指数
5
解决办法
3万
查看次数

Groovy中两个日期之间的持续时间

Groovy中有没有办法获得两个Date对象之间的持续时间?我正在寻找的持续时间格式如下:2天,10小时,30分钟......

谢谢

groovy

33
推荐指数
2
解决办法
4万
查看次数

我是否需要在Grails中返回"渲染"?

那回归是必要的吗?让我们说它正处于行动的中间.

render(contentType:'text/json', text: ['success': true] as JSON)    
return
Run Code Online (Sandbox Code Playgroud)

grails groovy

20
推荐指数
1
解决办法
6823
查看次数

在Grails中缓存域对象

我一直在考虑在我的Grails域对象中实现EhCache,如下所示:

static mapping = {
   cache true
}
Run Code Online (Sandbox Code Playgroud)

我不太熟悉这个缓存机制是如何工作的,并且想知道在确定哪些域对象可以从缓存中受益时,有什么好的经验法则.例如,很少被访问的对象...通常......?

谢谢!

grails caching

15
推荐指数
1
解决办法
8551
查看次数

在Grails服务中回滚事务

通过使用Grail在服务中抛出RuntimeException时回滚的能力,我一直在将所有服务更新为事务性的.在大多数情况下,我这样做:

def domain = new Domain(field: field)
if (!domain.save()) {
   throw new RuntimeException()
}
Run Code Online (Sandbox Code Playgroud)

无论如何,我想验证这确实会回滚事务......它让我思考在这一点上它是否已经被提交了.另外,如果没有,会设置flush:true更改吗?我不太熟悉Spring/Hibernate如何做到这一切:)

grails spring hibernate transactions

13
推荐指数
1
解决办法
8021
查看次数

使用select中的subselect将SQL转换为HQL

我有以下SQL,我在转换为HQL时遇到问题.NPE正在被抛出 - 我认为这与SUM函数有关.另外,我想对subselect别名进行排序 - 这可能吗?

SQL(subselect):

SELECT q.title, q.author_id, 
    (SELECT IFNULL(SUM(IF(vote_up=true,1,-1)), 0) 
    FROM vote WHERE question_id = q.id) AS votecount
FROM question q ORDER BY votecount DESC
Run Code Online (Sandbox Code Playgroud)

HQL(不工作)

SELECT q, 
    (SELECT COALESCE(SUM(IF(v.voteUp=true,1,-1)), 0) 
    FROM Vote v WHERE v.question = q) AS votecount
    FROM Question AS q
    LEFT JOIN q.author u
    LEFT JOIN u.blockedUsers ub
    WHERE q.dateCreated BETWEEN :week AND :now
    AND u.id NOT IN (
        SELECT ub.blocked FROM UserBlock AS ub WHERE ub.blocker = :loggedInUser
    )
    AND (u.blockedUsers IS EMPTY …
Run Code Online (Sandbox Code Playgroud)

java sql orm hibernate hql

7
推荐指数
1
解决办法
3万
查看次数

Grails中的XML站点地图

我正在尝试找出为Grails应用程序生成XML站点地图的最佳方法(如此处所述:http://www.sitemaps.org/).我不知道有任何现有的插件,所以我可能会建立一个.但是,我想首先得到社区的意见.除了支持标准控制器/操作之外,我认为支持内容驱动的应用程序也很好,例如,基于title属性可以生成URL.

你们怎么会这样做?你会考虑什么,你将如何实现它?

谢谢!

grails grails-plugin

7
推荐指数
1
解决办法
2283
查看次数

grails中不可预测的"无法同步数据库状态与会话"异常

我开始在我的日志中看到"无法同步数据库状态与会话"异常,我很难再现它.有时它工作正常...我看到两个例外(它们发生在不同的时间):

错误JDBCExceptionReporter - 尝试获取锁定时发现死锁; 尝试重新启动事务错误PatchedDefaultFlushEventListener - 无法使用会话org.hibernate.exception.LockAcquisitionException同步数据库状态:无法更新:[com.myapp.School#1911]

错误PatchedDefaultFlushEventListener - 无法使用会话org.hibernate.StaleObjectStateException同步数据库状态:行被另一个事务更新或删除(或未保存的值映射不正确):[com.myapp.School#1905]

以下是抛出它们的方法:

def populateFriends(ArrayList<FriendView> friends, User user) {

    friends.eachWithIndex { friendView, index ->

        def friend = Friend.findByFriendId(friendView.id) ?: new Friend()
        def schoolName = friendView.schoolName
        def school = null
        if (schoolName) {
            school = School.findByName(schoolName) ?: new School(name: schoolName).save(flush:true)
        }
        if (school) {
            // add to user's school list
            user = User.get(user.id)
            user.addToSchools(school)
            user = user.merge(flush: true)
            user.save(flush: true)

            friend.school = school
        }
        friend.save(flush: true)
    }
}
Run Code Online (Sandbox Code Playgroud)

我整天都在这里,我真的很感激任何帮助.

grails grails-orm

7
推荐指数
1
解决办法
5320
查看次数

计算数据集之间相似性百分比的有效方法

我目前正在使用User对象 - 每个对象都有许多Goal对象.目标对象不是用户特定的,即用户可以共享相同的目标.我试图设计一种方法来计算两个用户之间的"相似性百分比"...(即考虑他们共享多少目标以及他们不共享多少目标)有没有人有这种类型的经验情况?我正在使用Grails与Mysql,如果这是有帮助的.

谢谢

mysql algorithm grails groovy

6
推荐指数
1
解决办法
1514
查看次数

少于Groovy case/switch语句

我有以下switch语句

    switch (points) {
       case 0: name = "new"; break;
       case 1..14: badgeName = "bronze-coin"; break;
       case 15..29: badgeName = "silver-coin"; break;
       default: badgeName = "ruby";
    }
Run Code Online (Sandbox Code Playgroud)

我想第一个案例(案例0)包含小于或等于0的点.我怎样才能在Groovy中执行此操作?

groovy

6
推荐指数
1
解决办法
5674
查看次数