spring 3メールと添付ファイルを送ります.


spring 3フレームは非常に有用なメール機能を提供しています.org.springframework.mailはメールの送信に対するjarパケットを提供しています.中の関数を自分で見に行ったほうがいいです.スプリングフレームワークは簡単で添付ファイル付きメール送信機能を提供します.
これがビジネスロジック層コードであると仮定して、注文情報に関するメールを顧客に送る必要があります.
publicinterface OrderManager {

    void placeOrder(Order order);
}
簡単メール送信機能
import org.springframework.mail.MailException;
import org.springframework.mail.MailSender;
import org.springframework.mail.SimpleMailMessage;

publicclass SimpleOrderManager implements OrderManager {

   prvate Mail Sender mail Sender;/springはすでにパッケージされたライブラリを提供しています.具体的な実装はAPIを参照することができます.
prvate SimpleMail Message templateMessage;
public
void setMail Sender(Mail Sender mail Sender){
this.mail Sender=mail Sender;
public
void set TemplateMessage(株){SimpleMail Message)templateMessage)}
this.templateMessage=templateMessage;
public
void plceOrder(Order order){
//Do the busines calculations…
//Call the collaboorators to persist the order…
//Create a thread safe「copy」of the template message and customize it SimpleMail Message msg=
new SimpleMail Message(
this.templateMessage);msg.setTo(order.get Cusstomer).getEmail Address();msg.set Text(
「Dear」+order.get Cutstomer().get First Name()+order.get Cutstomer().get LastName()+
「thank you for playing order.Your order number is」+order.getOrder Number();
try{
this.mail Sender.send(msg);
catch(Mail Exception ex){
//simply logt it and go on...System.err.println(ex.getMessage();)
)
xmlのプロファイルはもちろん、コメントも使用できます.
<beanid="mailSender"class="org.springframework.mail.javamail.JavaMailSenderImpl">
 /メールのサービスホスト
 

<property name="port" value="25" />

<property name="javaMailProperties">

<props>

<prop key="mail.smtp.auth">true</prop>

<prop key="mail.smtp.timeout">25000</prop>

</props>

</property>

<property name="username" value="**********" />//用户名

<property name="password" value="*******"></property>//密码

< /bean> < !-- this is a template message that we can pre-load with default state --> < bean id= "templateMessage" class= "org.springframework.mail.SimpleMailMessage"> < property name= "from" v alue= "[email protected]"/>//发送者的邮箱地址 < property name= "subject" value= "Your order"/> < /bean> < bean id= "orderManager" class= "com.mycompany.businessapp.support.SimpleOrderManager"> < property name= "mailSender" ref= "mailSender"/> < property name= "templateMessage" ref= "templateMessage"/> < /bean>


发送附件和内嵌的htm啊

JavaMail and MimeMessageHelper

1 附件的发送

JavaMailSenderImpl sender = new JavaMailSenderImpl();

MimeMessage message = sender.createMimeMessage();

// use the true flag to indicate you need a multipart message
MimeMessageHelper helper = new MimeMessageHelper(message, true);//true               
helper.setTo("[email protected]");

helper.setText("Check out this image!");

// let's attach the infamous windows Sample file (this time copied to c:/)
FileSystem Resource file=new FileSystem Resource(new File);
//spring 2.5のバージョンが必要です.
//FileSystem Resource file=new FileSystem Resource(new File:c:/Sample.jpg);helper.addAttachment(
「CoolImage.jpg」、file);
//helper.addAttachment(MimeUtility.encodeWord(「個人申請表.pdf」)、new FileSystem Resource(new File(pdfP/ath)));sender.send;
2 html付きメールを送信します.
JavaMailSenderImpl sender = new JavaMailSenderImpl();
sender.setHost("mail.host.com");

MimeMessage message = sender.createMimeMessage();

// use the true flag to indicate you need a multipart message
MimeMessageHelper helper = new MimeMessageHelper(message, true);
helper.setTo("[email protected]");

// use the true flag to indicate the text included is HTML
helper.setText("<html><body><img src='cid:identifier1234'></body></html>", true);

// let's include the infamous windows Sample file (this time copied to c:/)
FileSystemResource res = new FileSystemResource(new File("c:/Sample.jpg"));
helper.addInline("identifier1234", res);

sender.send(message);