java - 使用 POST 方法中的 ftl 显示列表

标签 java spring-mvc freemarker cuba-platform

对不起我的英语! 我是 Spring 和 FTL 的新手。 我想显示firstNamelastName使用<#list模板,但我无法识别我的 POST 方法中的任何序列,有人可以向我解释一下吗?再说一次,我是一个新手,如果我不明白我应该做什么,请不要评判我。我正在使用 CUBA STUDIO 6.8 和 IDEA。我也在门户模块中处理此任务

这就是我添加firstName的方式和lastName使用我的 ftl 表单和门户 Controller 到数据库:

@GetMapping("/add")
public String add(Model model){
    PersonPojo personPojo = new PersonPojo();
    model.addAttribute("personPojo", personPojo);
    return "add";
}

@PostMapping("/add")
public String save(Model model, @ModelAttribute("personPojo") PersonPojo personPojo){

    String firstName = personPojo.getFirstName();
    String lastName = personPojo.getLastName();
    PersonPojo newPerson = new PersonPojo(firstName, lastName);

    Person standardEntity = metadata.create(Person.class);
    standardEntity.setFirtName(newPerson.getFirstName());
    standardEntity.setLastName(newPerson.getLastName());
    dataManager.commit(standardEntity);

    return "redirect:/allPersons";
}

我的ftl表单:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<form action="" method="post" name="person">
    First Name: <input type="text" name="firstName"> <br>
    Last Name: <input type="text" name="lastName"> <br>
    <input type="hidden" name="${_csrf.parameterName}" value="${_csrf.token}">
    <input type="submit" value="Create">
</form></body>
</html>

谢谢!

最佳答案

所以,如果有人感兴趣,我会在这里发布我的解决方案:

 @RequestMapping(value = "/allPersons", method = RequestMethod.GET)
    public String getPersons(Model model) {
            LoadContext loadJohn = new LoadContext(John.class);
            loadJohn.setQueryString("select u from test6$John u");
            model.addAttribute("users", dataService.loadList(loadJohn));
            return "list";
    }

ftl 应该如下所示: 接下来我面临的问题是我不知道我必须检查列表是否为空。 !"" 这样做

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h3>Person List</h3>
<a href="/app-portal/add">Add Person</a>
<br><br>
<div>
    <table border="1">
        <tr>
            <th>First Name</th>
            <th>Last Name</th>
        </tr>
        <#list users as show>
            <tr>
                <td>${show.firstName!""}</td>
                <td>${show.lastName!""}</td>
            </tr>
        </#list>
    </table>
</div>
</body>
</html>

希望这对像我这样的人有帮助。 另外,如果有人知道如何删除和更新数据,请分享。 谢谢!

关于java - 使用 POST 方法中的 ftl 显示列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58640120/

相关文章:

java - 无法使用 Spring-Security 保护 HTML 文件

java - Hadoop 1.2.1 - 多节点集群 - Wordcount 程序的 Reducer 阶段挂起?

java - AppEngine Java 全文。按日期排序适用于本地计算机,但未部署(SDK 1.6.6)

Java匹配器如何根据组的值动态替换组

javascript - Mysql使用freemarker将表打印到html上

java - Spring mvc 异常中的 servlet 名称为空

java - freemarker 将 ${..} 显示为 html 而不是字符串

java - 如何在 JMapViewer 中的两点之间放置像箭头一样的图像

java - angularJs上传文件错误: The current request is not a multipart request

spring-mvc - WAR 文件不会在 Tomcat 7 上启动