从数据库初始化数组代理属性

Initializing an array agent attribute from a database

我正在生成代理,其中两个属性(模块和 Passed_Modules)是数组。我想以与标量属性相同的方式从数据库引用中提取它们的值。但是,没有这样的选择。如何通过从数据库中绘制来初始化这些数组属性?

这是与标量属性之一(即 HistoricYear)关联的选项:

Scalar attribute has the option to initialise from a database

但是,数组属性(例如模块)没有这样的选项:

Array attribute does not have this option

有什么建议吗?

最好的选择是拥有一个使用数据库值的函数,然后return一个数组供您使用。

然后是 getModules 函数,您有一些代码可以为您处理数据库和 return 一个数组:

int[] result = new int[10];

List<Tuple> rows = selectFrom(module_table).list();

int i = 0;
for (Tuple row : rows) {
    result[i](row.get( module_table.modules ));
    i ++;
}


return result;