model.addattribute()

🙊🙊作者主页: 🔗进朱者赤的博客 📔📔 精选专栏:🔗经典算法 作者简介:阿里非典型程序员一枚 ,记录在大厂的打怪升级之路。 一起学习Java、大数据、数据结构算法(公众号同名

💞💞觉得文章还不错的话欢迎大家点赞👍➕收藏⭐️➕评论💬支持博主🤞 ————————————————-

一、简介

model.addAttribute() 是 Spring MVC 中用于向模型(Model)对象添加属性的方法。

这些属性通常是数据、状态或任何需要在视图中展示的信息。

二、使用

在java代码中使用 model.addAttribute()写入属性,在视图中渲染和显示

Controller(控制器)层

import org.springframework.stereotype.Controller;  
import org.springframework.ui.Model;  
import org.springframework.web.bind.annotation.GetMapping;  
  
@Controller  
public class MyController {  
  
    @GetMapping("/hello")  
    public String hello(Model model) {  
        String message = "Hello, World!";  
        model.addAttribute("message", message);  
        return "hello";  
    }  
}

View(视图)层:


<p th:text="${message}"></p>

在这个例子中,当用户访问 "/hello" URL时,hello() 方法会被调用。这个方法创建了一个字符串 message,并使用 model.addAttribute() 将其添加到模型中,键为 "message"。然后,该方法返回一个视图名称 "hello",这通常对应于一个Thymeleaf或JSP模板。在这个模板中,你可以使用 ${message} 来访问并显示之前添加到模型中的消息。 

三、注意事项

  1. 选择合适的重载方法:根据需要传递的数据类型和用途,选择正确的addAttribute(..)方法。可以传递一个属性名和值,或者仅传递一个值,此时属性名将是传入对象的类名首字母小写的形式。
  2. 理解模型的作用:模型(Model)是控制器和视图之间的桥梁,用于存储数据。model.addAttribute()方法将数据添加到模型中,供视图渲染页面时使用。
  3. 前端交互注意事项:在Java的Spring MVC框架中,通过model.addAttribute()传递的数据不能直接在JavaScript中使用,因为JavaScript在前端执行。如果需要在JavaScript中使用这些数据,可以考虑将其嵌入到HTML元素的属性中,或者转换为JSON格式。
  4. 避免命名冲突:添加属性时,确保属性名不会与现有的模型属性或潜在的模型属性发生冲突,以免覆盖重要数据。

附录 :MVC 模式介绍

代表 Model-View-Controller(模型-视图-控制器) 模式。这种模式用于应用程序的分层开发。

  • Model(模型) - 模型代表一个存取数据的对象或 JAVA POJO。它也可以带有逻辑,在数据变化时更新控制器。
  • View(视图) - 视图代表模型包含的数据的可视化。
  • Controller(控制器) - 控制器作用于模型和视图上。它控制数据流向模型对象,并在数据变化时更新视图。它使视图与模型分离开

欢迎一键三连(关注+点赞+收藏),技术的路上一起加油!!!代码改变世界

  • 关于我:阿里非典型程序员一枚 ,记录在大厂的打怪升级之路。 一起学习Java、大数据、数据结构算法(公众号同名),回复暗号,更能获取学习秘籍和书籍等

  • ---⬇️欢迎关注我的公众号:进朱者赤,认识不一样的技术人。⬇️---

 

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

进朱者赤

多多支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值