java– 根据devtestprod模式更改Spring电子邮件设置

java– 根据devtestprod模式更改Spring电子邮件设置,第1张

概述我经常使用实时数据库的副本测试我的应用程序,但必须小心不要执行任何导致将电子邮件发送给用户的 *** 作.我希望有一种配置d簧的方法,这样当我处于开发或测试模式时,没有电子邮件会被发送给真实用户.理想情况下,我希望所有应该转到用户的电子邮件转到我可以检查的邮箱.我不想改变任何代码来实现这一点,只需要xml配置文件.我已经在使用PropertyPlaceholderC

我经常使用实时数据库的副本测试我的应用程序,但必须小心不要执行任何导致将电子邮件发送给用户的 *** 作.我希望有一种配置d簧的方法,这样当我处于开发或测试模式时,没有电子邮件会被发送给真实用户.理想情况下,我希望所有应该转到用户的电子邮件转到我可以检查的邮箱.我不想改变任何代码来实现这一点,只需要xml配置文件.

我已经在使用PropertyPlaceholderConfigurer并且正在读取基于我是否在生产,测试或开发模式下运行的不同属性文件.我根据属性文件中的值配置JavaMailSenderImpl.我还使用SimpleMailMessage创建一个带有From地址的模板.

理想情况下,如果我在开发或测试模式下运行,将有一种方法可以重写到测试帐户的所有外发电子邮件的TO地址.

我的第一个想法是使用不同的SMTP服务器进行开发和测试.但是,我还必须管理另一个邮件服务器,并且需要对其进行自定义,以便它不会将邮件发送到任何地方,而是将其发送到单个邮箱.如果可能,我不想添加更多管理要求.

也许这是最好的解决方案,但似乎应该有一种拦截电子邮件和更改收件人的方法.

有没有人以前处理过这个问题?你想出了什么解决方案?

最佳答案注意:我的回答是基于使用Maven,所以这更多的是关于构建而不是任何东西,但使用spring让我方便地注入值.

我使用property-placeholder并构建如下的bean:

jdbc.propertIEs:

db.url=hostname:1521/testdb.username=awesomedb.password=password

applicationContext.xml(使用上下文命名空间)

然后我将环境存储在具有特定于域的值的单独文件夹中,例如:

src/main/environments ++ prod +++++ jdbc.propertIEs ++ dev +++++ jdbc.propertIEs ++ cert +++++ jdbc.propertIEs

使用maven配置文件(来自pom.xml):

您可以使用-Denviroment属性运行任何maven命令来灵活属性:

mvn clean -Denvironment=dev testmvn clean -Denvironment=cert packagemvn clean -Denvironment=prod deploy

等等,该环境文件夹中的任何文件都与任何src / main / resources文件一起复制到目标或工件中. 总结

以上是内存溢出为你收集整理的java – 根据dev / test / prod模式更改Spring电子邮件设置全部内容,希望文章能够帮你解决java – 根据dev / test / prod模式更改Spring电子邮件设置所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1265859.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-08
下一篇 2022-06-08

发表评论

登录后才能评论

评论列表(0条)