gpt4 book ai didi

java - 使用 spring/struts 框架在 JSP 头文件中显示用户全名的最佳方法?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:20:26 24 4
gpt4 key购买 nike

我有一个 JSP struts 应用程序,它使用 Spring 与服务/dao/数据库集成。基本上,struts 使用 spring 从数据库中获取数据,它构建表单并将它们转发到 JSP 文件。

我有一个头文件,它使用 Tiles 注入(inject)到每个 JSP 文件中。我想在标题内的每个页面上显示“欢迎 John Doe”。其中“John Doe”是当前登录用户的名称。

做到这一点的最佳方法是什么?我能想到的解决方案是:

  1. 使用 Spring Filter 捕获 http 请求。使用包含用户 ID(*) 的 cookie 从数据库加载用户,并将该名称放入名为“CurrentUser”的 session bean 中

  2. 在“header.jsp”中,获取 spring 应用上下文。使用它,加载 bean“CurrentUser”并获取名称。将名称放在 html 中。

我想我可以让它工作。但我不确定这是最好的方法。对我的方法有什么想法吗?


(*)当然会加密cookie

最佳答案

虽然它可能对于您相当简单的用例来说是一个非常大的锤子,但我们已经通过使用 ELResolver 获得了一个非常简洁的 spring-jsp 集成(需要 jsp 2.1!) .通过关注this tutorial您基本上可以将任何 spring 管理的 bean 注入(inject)到您的 el-context 中,并允许使用 jsp-el 访问它,如下所示:

${spring.mybean.myproperty}

您可以选择将预定义的 bean 注入(inject)到您的 el-context 中,或者只是将“mybean”传递给 getBean 并允许从 jsp 访问几乎所有由 spring 管理的内容。 mybean 很容易成为 session 范围的 spring bean。

不过,我不太确定这将如何与图 block 对齐。

关于java - 使用 spring/struts 框架在 JSP 头文件中显示用户全名的最佳方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/854296/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com