qq_35381997 2022-04-30 22:19 采纳率: 100%
浏览 33
已结题

SpringBoot+thymeleaf时,pojo类的get,set大小写影响前端显示吗?

创建User类(username,password),当get,set方法全是小写的时候(getusername,setusername,getpassword,setpassword)

Controller模拟数据插入Attribute
```java
List users = new ArrayList<User>();
        users.add(new User("asd","123"));
        users.add(new User("2asd34","234"));
        users.add(new User("sda","345"));
        users.add(new User("asdasd","456"));
        model.addAttribute("users",users);

前端显示失败,查询不到传入的数据

img

当get,set方法为大写时(getUsername,setUsername,getPassword,setPassword)

却能正常显示传入的数据

img

有没有人能指点一下

另附相关代码,其中改动只有get,set的首字母大小写

Controller
@GetMapping("/dynamic_table")
    public String dynamic(Model model){
//        表格信息遍历
        List users = new ArrayList<User>();
        users.add(new User("asd","123"));
        users.add(new User("2asd34","234"));
        users.add(new User("sda","345"));
        users.add(new User("asdasd","456"));
        model.addAttribute("users",users);
        return "table/dynamic_table";
    }

User类改动前
public class User {
    private String username;
    private String password;
    public String getUsername() {
        return username;
    }

    public String getPassword() {
        return password;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public void setPassword(String password) {
        this.password = password;
    }
}

User类改动后
public class User {
    private String username;
    private String password;
    public String getusername() {
        return username;
    }

    public String getpassword() {
        return password;
    }

    public void setusername(String username) {
        this.username = username;
    }

    public void setpassword(String password) {
        this.password = password;
    }
}
<table class="display table table-bordered" id="hidden-table-info">
        <thead>
        <tr>
            <th>Rendering engine</th>
            <th>Browser</th>
            <th class="hidden-phone">Platform(s)</th>
        </tr>
        </thead>
        <tbody>
        <tr  data-th-each="user:${users}">
            <td>Internet</td>
            <td th:text="${user.username}">username</td>
            <td th:text="${user.password}">password</td>
        </tr>
        </tbody>
        </table>
  • 写回答

3条回答 默认 最新

  • CSDN专家-sinJack 2022-04-30 23:15
    关注
    ${user.username}
    

    这种用法,方法名需要遵循驼峰命名法。对应的get方法必须是getUsername,否则会导致找不到这个方法的返回值。
    这是一种规范定义(驼峰命名),根据属性名找到对应的get方法从而获取属性值。

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 5月9日
  • 已采纳回答 5月1日
  • 创建了问题 4月30日

悬赏问题

  • ¥15 在若依框架下实现人脸识别
  • ¥15 网络科学导论,网络控制
  • ¥100 安卓tv程序连接SQLSERVER2008问题
  • ¥15 利用Sentinel-2和Landsat8做一个水库的长时序NDVI的对比,为什么Snetinel-2计算的结果最小值特别小,而Lansat8就很平均
  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同