发邮件 maven

本文详细介绍如何在Maven项目中配置并实现邮件发送功能,包括依赖导入、Spring配置、邮件实体类定义、邮件发送服务及实用类的实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、 maven项目下发邮件:

1. 依赖jar包导入

<dependency>
        <groupId>javax.mail</groupId>  
        <artifactId>mail</artifactId>  
        <version>1.4.7</version>  
 </dependency>    

 

2.spring.xml

<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">  
        <property name="locations">  
            <list>  
                <value>classpath:mail.properties</value>  
               <!-- <value>classpath:myconn.properties</value>  -->
            </list>  
        </property>  
    </bean>
 <!-- 邮件发送器 163  -->  
    <bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">  
        <property name="host" value="${mail.host}" />  
        <property name="username" value="${mail.username}" />  
        <property name="password" value="${mail.password}" />  
        <property name="defaultEncoding" value="UTF-8"></property>  
        <property name="javaMailProperties">  
            <props>  
                <prop key="mail.smtp.auth">${mail.smtp.auth}</prop>  
                <prop key="mail.smtp.timeout">${mail.smtp.timeout}</prop> 
            </props>  
        </property>  
    </bean> 

 

 

3. MailBean.java

public class MailBean {
    private String from;  
    private String fromName;  
    private String[] toEmails;  
    private String subject;
    private String context;

    //get,set方法
}

4. MailSenderService.java

import java.io.UnsupportedEncodingException;
 
import javax.mail.MessagingException;
import javax.mail.internet.MimeMessage;
 
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.mail.javamail.JavaMailSenderImpl;
import org.springframework.mail.javamail.MimeMessageHelper;
import org.springframework.stereotype.Service;

import com.dzt.pojo.MailBean;
@Service
public class MailSenderService {
    @Autowired
    private JavaMailSenderImpl javaMailSenderImpl;
    
    /**
     * @param mailBean
     * @return
     * @throws MessagingException 
     * @throws UnsupportedEncodingException 
     */
    public MimeMessage createMimeMessage(MailBean mailBean) throws MessagingException, UnsupportedEncodingException{
        MimeMessage mimeMessage = javaMailSenderImpl.createMimeMessage();
        MimeMessageHelper messageHelper = new MimeMessageHelper(mimeMessage, true, "UTF-8");
        messageHelper.setFrom(mailBean.getFrom(), mailBean.getFromName()); 
        messageHelper.setSubject(mailBean.getSubject());  
        messageHelper.setTo(mailBean.getToEmails());  
        messageHelper.setText(mailBean.getContext(), true); // html: true 
        return mimeMessage;
    }
    
    public void sendMail(MailBean mailBean) throws UnsupportedEncodingException, MessagingException{
        MimeMessage msg = createMimeMessage(mailBean);
        javaMailSenderImpl.send(msg);
    }
}

5. MailSenderUtil.java

import java.text.SimpleDateFormat;
import java.util.Date;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import com.dzt.pojo.MailBean;
import com.dzt.service.MailSenderService;
 
public class MailSenderUtil {
    /**
     * 
     * @param args
     * @throws Exception
     */
    public static void main(String[] args) throws Exception{
        ApplicationContext ac = new ClassPathXmlApplicationContext("spring.xml");
        MailSenderService mailSenderService = (MailSenderService) ac.getBean("mailSenderService");
        MailBean mailBean = new MailBean();
        SimpleDateFormat format = new  SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String dateString = format.format(new Date());
        String message="尊敬的互联微网管理员,当前时间 "+dateString+"商城系统定时器已启动。";
        mailBean.setFrom("187xxxx2348@163.com");
        mailBean.setFromName("187xxxx2348@163.com");
        mailBean.setSubject("定时器任务已启动");
        mailBean.setToEmails(new String[]{"853xxxx16@qq.com","124xxxxx7@qq.com"});
        mailBean.setContext(message);
        mailSenderService.sendMail(mailBean);
        System.out.println(message);
        
    }

}

 

转载于:https://www.cnblogs.com/dztHome/p/9530769.html

基于Mavenjavax.mail发送邮件例子程序 pom.xml添加依赖jar: javax.mail mail ${javamail.version} 1.4.1 /* 功能:加入了参考文章中没有的发送附件的功能.本机测试通过. 参考文章:http://ajava.org/article-722-1.html 使用Javamail发送邮件例子及解释 2012-2-1 00:14| 发布者: mark| 查看: 236| 评论: 0|原作者: mark|来自: ajava.org 摘要: 下面例子演示怎样用javamail来发送邮件,在测试之前,我们要下载javamail的类包,并添加入你的工程中,如果你的IDE自带javamail的类包,那就很简单,直接import 就行,我使用的是MyEclipse 7.5,自带,所以可以直接 ... 下面例子演示怎样用javamail来发送邮件,在测试之前,我们要下载javamail的类包,并添加入你的工程中,如果你的IDE自带javamail的类包,那就很简单,直接import 就行,mark使用的是MyEclipse 7.5,自带,所以可以直接测试下面代码了。 几个javamail类的作用 javax.mail.Properties类 我们使用Properties来创建一个session对象。里面保存里对Session的一些设置,如协议,SMTP地址,是否验证的设置信息 javax.mail.Session类 代表一个邮件session. 有session才有通信。 javax.mail.InternetAddress类 Address确定信件地址。 javax.mail.MimeMessage类 Message对象将存储发送的电子邮件信息,如主题,内容等等 javax.mail.Transport类 Transport传输邮件类,采用send方法是发送邮件。 * */
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值