对于通过电子邮件发送用户确认链接的bean,我想动态生成URL,这意味着我应该知道:
应用程序正在运行。
那时我不会运行Controller,所以我想以某种方式检索这些数据。
我发现ServletContextAware
因此我将其用于上下文路径,但其余部分则不知道。我在哪里可以找到它们?
答案 0 :(得分:2)
我不确定您是否可以在不处理请求时获取服务器名称/端口号。 另一方面,如果您正在处理请求,可以使用ServletRequest interface。
答案 1 :(得分:1)
您可以使bean定义请求范围,因此Spring将为每个http请求创建一个新的。然后,您可以选择声明@Autowired HttpServletRequest字段,Spring将为您提供。然后,您可以使用该请求对象来构建您的URL。
有一些关于范围豆的问题(见here),但没有什么严重的。