以编程方式执行spring roo

时间:2012-02-17 03:25:37

标签: java spring spring-roo

我看了一下spring roo。我发现我们可以使用命令提示符生成实体,控制器和其他人。但我需要从文本框中获取实体名称和字段名称作为用户输入,然后使用roo生成项目。我正在使用Windows。

3 个答案:

答案 0 :(得分:5)

您可以创建脚本文件,然后使用roo执行该文件。

>roo script --file fileName.

不幸的是,我不知道是否可以将脚本作为参数运行roo,以便自动运行该脚本。

答案 1 :(得分:0)

您可以使用Springsource Tool Suite(STS)上提供的Roo命令向导。

答案 2 :(得分:0)

最新的roo(我有2.0.0.BUILD-SNAPSHOT [rev 7a0fe1b])有一个名为Eastern Grey UI(http://localhost:9191)的初出茅庐的网络界面。我发现你可以调用这样的函数(我正在研究的一个测试模块 - service.post只是为网站做了一个标准的帖子):

    Map<String, String> env = new HashMap<String, String>();
    env.put("projectName", "clinic");
    env.put("topLevelPackage", "com.ritchey");
    String resp = service.post("http://localhost:9191/rs-api/project", env);
    log.debug("resp = " + resp);

    env = new HashMap<String, String>();
    env.put("database", "MSSQL");
    env.put("providerName", "HIBERNATE");
    env.put("username", "Avatar");
    env.put("password", "xxxxxx");
    resp = service.post("http://localhost:9191/rs-api/persistence", env);
    log.debug("resp = " + resp);

    env = new HashMap<String, String>();
    env.put("entityName", "~.domain.Pet");
    resp = service.post("http://localhost:9191/rs-api/entities", env);
    log.debug("resp = " + resp);

    env = new HashMap<String, String>();
    env.put("entityName", "~.domain.Pet");
    env.put("fieldName", "name");
    env.put("fieldGroup", "");
    env.put("fieldType", "string");
    env.put("referencedClass", "");
    resp = service.post("http://localhost:9191/rs-api/fields", env);
    log.debug("resp = " + resp);