OpenDaylight(一):如何用postman控制ODL查看和下发流表

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OpenDaylight(一):如何用postman控制ODL查看和下发流表相关的知识,希望对你有一定的参考价值。

参考技术A 下面记录一下如何用Chrome的插件postman来操作ODL 查看和下发流表

如何用groovy语言将项目一一添加到数组中

【中文标题】如何用groovy语言将项目一一添加到数组中【英文标题】:How to add items to an array one by one in groovy language 【发布时间】:2013-06-21 22:30:38 【问题描述】:

我正在开发一个 grails 应用程序,并且我已经有一个域类“ExtendedUser”,其中包含有关用户的信息,例如:“name”、“bio”、“birthDate”。现在我打算对用户的年龄进行统计,所以我创建了另一个控制器“StatisticsController”,想法是将所有出生日期存储在本地数组中,这样我就可以用它管理多个计算

class StatisticsController 
//    @Secured(["ROLE_COMPANY"])
    def teststat()
        def user = ExtendedUser.findAll()   //A list with all of the users
        def emptyList = []    //AN empty list to store all the birthdates
        def k = 0
        while (k<=user.size())
            emptyList.add(user[k].birthDate) //Add a new birthdate to the emptyList (The Error)
            k++
        
        [age: user]
    

当我测试时,它向我显示此错误消息:Cannot get property 'birthDate' on null object 所以我的问题是如何将所有生日存储在一个数组或列表中,以便我可以用它进行计算。谢谢

【问题讨论】:

所有这些替代解决方案都有效,但是您收到错误的原因是您让 k 在等于 user.size() 时通过循环,并且此时 user[k]不在列表的末尾。如果 user.size() == 3,则存在 user[0]、user[1] 和 user[2],但不存在 user[3]。将 k 【参考方案1】:

我更喜欢 .each() 尽可能在 groovy 中。阅读 groovy 循环 here。

为此尝试类似:

user.each() 
    emptylist.push(it.birthdate) //'it' is the name of the default iterator created by the .each()

我没有在这台计算机上设置 grails 环境,所以没有经过测试就在我的脑海中浮现,但试一试。

【讨论】:

那么“推”应该做什么? Push 将值添加到数组中。我强烈建议您至少简要阅读文档,了解您要使用的数据类型。 Groovy list doc 谢谢,这似乎工作得很好,只是我已经看过文档了。和 IDK 为什么说“推”返回布尔值。比你再次 我在其中添加了.birthdate,这可能更符合您的要求。至于 push,如果它成功添加了一个值到列表中,它返回 true,因此你可以将它与控制语句一起使用,如 while(list.push(x)) ,它将循环直到它没有值添加到列表中。 在您的示例中,空列表可以这样定义:emptylist = []【参考方案2】:

我会使用这种方法:

def birthDates = ExtendedUser.findAll().collect  it.birthDate 

collect 方法转换集合的每个元素并返回转换后的集合。在这种情况下,用户被转换成他们的出生日期。

【讨论】:

【参考方案3】:

你可以试试:

List dates = ExtendedUser.findAll().birthDate

【讨论】:

以上是关于OpenDaylight(一):如何用postman控制ODL查看和下发流表的主要内容,如果未能解决你的问题,请参考以下文章

OpenDayLight——HelloWorld

OpenDayLight(硼Boron版本)实战开发入门

从零开始学OpenDaylight之使用Archetype构建项目

从零开始学OpenDayLight之基础环境

从零开始学OpenDaylight之六:YANG

从零开始学OpenDaylight之四:Maven工具