有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

Java在JavaEE应用程序中从不同的SMTPServer发送电子邮件

我目前正在开发一个JavaEE应用程序,我必须实现一个功能,即用户可以将自己的SMTP服务器定义为通知邮件的发件人。我已经有了一个应用程序,它执行相同的任务,但是在一个标准的JavaSE应用程序中。我做了一些研究,发现我们正在使用的应用服务器(Glassfish 3.X)在邮件服务器的管理面板中有一个配置菜单。所以我的问题是:从JavaEE和普通JavaSE应用程序发送邮件之间有什么区别?我的JavaSE应用程序的工作源是否也应该在我的企业应用程序中工作

致意


共 (1) 个答案

  1. # 1 楼答案

    考虑AppServer中JavaMail会话的定义作为一种方便,这一特性通过将服务配置从应用程序中拉入应用服务器来帮助规范应用程序实例的配置。p>

    但是,没有什么可以阻止您在appserver中使用手动和动态定义的javamail会话

    那么,在SE程序中,您将在何处配置邮件会话,以

    // typically a set of
    properties.put("mail.smtp.port", "25");
    // that are used to configure the Session
    Session session = Session.getDefaultInstance(properties);
    

    你通常会发现

    @Resource(lookup = "sessionAsDefinedInGF")
    private Session session;
    

    在EE应用程序中。从这一点来看,两个程序可以完全相同,在后者中,会话对象的整个初始化和管理将由appserver执行

    但是如上所述,尽管后者在大多数情况下更加方便,因为配置在应用程序之外,但是如果您执行前者,没有什么会阻止您,即SE风格的会话手动配置