-2

我正在使用 JADE 框架,我想知道智能代理有没有办法使用某种数据库,他们可以从中读取并写入一些信息?..

我试图在 excel(使用 jxl)和我的项目之间建立连接,但是有一个问题:下面是在 excel 文件中编写的代码:

public static void write(String[] args) throws Exception {
    // TODO code application logic here
    File f = new File("C:\\Users\\Mastisa\\Desktop\\Master.xls");
    WritableWorkbook  Master = Workbook.createWorkbook(f);
    WritableSheet History_Table = Master.createSheet("History_Table", 0);

    Label L00 = new Label (0,0,"RUN#");

    History_Table.addCell(L00);


    Master.write();

    System.out.println("finished...");

    Master.close();
}

}

但我希望代理做这样的事情:

Database D;
D.add(myAgent.getLocalName);

但这是不可能的,因为 jxl 不提供与代理合作的功能。看起来所有内容都必须手动写入该 excel 文件....但这不是我想要的..我希望代理能够舒适地读写...

还有其他方法吗?

4

1 回答 1

1

是的,基本上当您创建 JADE 代理时,您可以向这些代理添加行为,有几种类型的行为,您应该根据您的要求选择它们。您可以在此处找到行为列表

举个例子,

public class MyAgent extends Agent
{
    @Override
    protected void setup()
    {
         addBehaviour( new InformBehaviour() );
    }
    private class InformBehaviour extends CyclicBehaviour
    {
        //dostuff
    }
}

所以基本的想法是你需要在一个代理的行为中做所有这些。

确保选择适合您要求的正确行为。

于 2018-11-02T10:38:14.693 回答