- 浏览: 782007 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (386)
- Linux (36)
- Tomcat (6)
- windows (8)
- Apache (10)
- Java (25)
- jquery (7)
- Jquery 插件 (3)
- Oracle (5)
- Oracle SQL (68)
- Spring (15)
- 开发工具 (6)
- Struts (20)
- js (14)
- Project Code (2)
- Project Code Tomcat (1)
- libset (1)
- JSP (8)
- arithmetic (2)
- 浏览器 (1)
- extjs (3)
- 学习网站 (5)
- 生活情感 (0)
- 电话号码算法 (3)
- 快捷键 (1)
- 转载 (1)
- Dos命令 (2)
- services (1)
- Resources (1)
- 行业积累 (3)
- 项目积累 (3)
- Web (3)
- 文档 (1)
- JavaEE (2)
- JSF (3)
- http (3)
- JS窗口 (1)
- Html (4)
- Flex (1)
- 资讯 (2)
- 项目规范 (1)
- Struts s:property textarea中默认值用 (1)
- Quartz 2.0.2 (12)
- 1天有多少毫秒 (1)
- 专题 (1)
- intellij idea 10 CD-KEY (1)
- restlet (4)
- Mail (1)
- Excel (3)
- Menu (1)
- Big Data技术综述 (1)
- Quart 1 (1)
- nosql (1)
- linux远程 (1)
- jdk (5)
- wind7 (1)
- 虚拟人 (0)
- 虚拟机 (1)
- 终端 (1)
- Ubuntu (16)
- Myeclipse (2)
- Wmware (1)
- eclipse (2)
- css (2)
- csv (1)
- 开源 (1)
- plsql (2)
- cassandra (4)
- maven (1)
- hadoop (2)
- mysql (1)
- spring security (1)
- tools (1)
- jdbc (2)
- exception (2)
- 硬盘数据备份 (1)
- dwr (1)
- svn (1)
- PowerDesigner15使用时的十五个问题 (1)
- tomcat 项目发部路径 (1)
- js 暂停执行 (1)
- jquery jqgrid 格式化数据显示 (1)
- js 代码模板 (1)
- strutss2 直接跳转到jsp页面 (1)
- servlet (1)
- jdbc spring (1)
- js学习网站 (1)
- 自学考试 (2)
- hibernate (2)
- eos (1)
- c (4)
- 黑马 (2)
- 大数据 (2)
- 实战云大数据案例分享 (0)
- Spark (2)
- Flink (1)
最新评论
-
coosummer:
推荐使用http://buttoncssgenerator.c ...
jquery button 漂亮 -
thinktothings:
Array_06 写道你好,我是一名刚毕业学生,我以后就是做J ...
如何转型架构师 -
thinktothings:
软考,考有职业资格证,有系统的知识体系学习
如何转型架构师 -
Array_06:
你好,我是一名刚毕业学生,我以后就是做Java的架构师,那请问 ...
如何转型架构师 -
beykery:
你这也太复杂了。。。。jsf2不应该是这样的。。。。
JSF2.0的一个简单Demo
转载:http://blog.csdn.net/matrixjava/archive/2008/11/06/3237772.aspx
使用Spring的封装的MailSender和定时任务可以实现在规定某一时间自动处理邮件群发可以提高效率。
在使用中有一些中文的乱码问题需要解决!
1.增加验证,否则会报:553 authentication is required 的错误信息
Properties prop = new Properties();
prop.setProperty("mail.smtp.auth", "true");
JavaMailSenderImpl.setJavaMailProperties(prop);
2.当邮件内容是HTML语言时的中文问题:
初始化MimeMessageHelper辅助类时,设置"GBK" encoding!如:
MimeMessageHelper messageHelp = new MimeMessageHelper(message,true,"GBK");
同时在设置:<META http-equiv=Content-Type content='text/html; charset=GBK'>
如果都设置为"UTF-8",在某些邮件客户端标题不能正常显示!
3.邮件附件的中文问题!
spring的文档里面说MimeMessageHelper设置了encoding,同时对title,text,attach产生作用,但还是会出问题:
解决方法:MimeUtility.encodeWord(file.getName());就OK了!
代码片段:
public void SendMail() {
List userList = this.gcmDao.findUserProvider();
JavaMailSenderImpl senderImpl = new JavaMailSenderImpl();
//设定mail server
senderImpl.setHost("202.110.96.6");
senderImpl.setUsername("gcm");
senderImpl.setPassword("lsm@gcm");
Properties prop = new Properties();
prop.setProperty("mail.smtp.auth", "true");
senderImpl.setJavaMailProperties(prop);
//建立邮件消息,发送简单邮件和html邮件的区别
MimeMessage mailMessage = senderImpl.createMimeMessage();
//注意这里的boolean,等于真的时候才能嵌套图片,在构建MimeMessageHelper时候,所给定的值是true表示启用,
// multipart模式
MimeMessageHelper messageHelper;
for(int i=0;i<userList.size();i++){
UserProvider user = (UserProvider)userList.get(i);
List list = this.findCpmiFileDetail(user.getUserCode());
if(!list.isEmpty()){
try {
String name = user.getUserCode()+"-"+user.getUserName()+".xls";
String dir = "c:/"+name;
messageHelper = new MimeMessageHelper(mailMessage,true,"GBK");
//设置收件人,寄件人
// mailMessage.setTo(array);
String email = user.getEmail();
if(email!=null){
messageHelper.setTo(email);
}else{
messageHelper.setTo("pc16@lotes.com.cn");
}
messageHelper.setFrom("gcm@lotes.com.cn");
messageHelper.setSubject("GCM預警事件管理通知!");
//true 表示启动HTML格式的邮件
String context = "<html><head><meta http-equiv='keywords' content='keyword1,keyword2,keyword3'>" +
"<meta http-equiv='description' content='this is my page'><meta http-equiv='content-type' content='text/html; charset=GBK'>" +
"</head><body><h1>"+user.getUserName()
+"你好:</h1><h1> 是你需要處理的SGS管控部分的清單!有"+String.valueOf(list.size())
+"需要處理。</h1><h1></h1><h1></h1><h1> 這是一封系統郵件,請不必回復!</h1><h1> 謝謝!</h1><h1>"+DateUtil.getDate()+"</h1></body></html>";
messageHelper.setText(context,true);
// FileSystemResource file = new FileSystemResource(new File(dir));
File file=new File(dir);
//这里的方法调用和插入图片是不同的。
try {
messageHelper.addAttachment(MimeUtility.encodeWord(file.getName()), file);
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//发送邮件
senderImpl.send(mailMessage);
System.out.println("邮件发送成功.....");
} catch (MessagingException e) {
e.printStackTrace();
}
}
}
}
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/matrixjava/archive/2008/11/06/3237772.aspx
发表评论
-
中文乱码问题
2012-09-20 08:19 949http://myxiaoyi.blog.51cto.com/ ... -
验证码
2012-09-12 08:53 845验证码 -
java.sql.SQLRecoverableException
2012-09-05 23:05 5675jdbc操做数据库 Blob 数据类型时,不能关了 Con ... -
java学习网站
2012-08-30 18:18 5435http://java.sun.com/developer/b ... -
启动java文件报环境问题
2012-08-03 12:11 738启动java文件报环境问题 cd `dirname $ ... -
得到当前系统路径
2012-08-02 13:26 1078package com.common.path; im ... -
java md5加密
2012-07-01 13:52 975import java.math.BigInteger; i ... -
java读写csv文件,中文乱码问题
2012-05-21 10:19 26773java读写csv文件,中文乱码问题 read / ... -
java学习网址
2012-05-18 09:35 1080javaee官方: http://docs.oracle.c ... -
判断两个类是否相等
2012-03-28 09:21 1128public class TestVo { private ... -
java 调用doc命令
2012-03-02 11:11 1177java 调用doc命令 import java. ... -
java classpath
2011-12-09 00:37 1041java调用文件时,相对路径,都是指,当前的启动路径 文件所 ... -
javac 可以执行 java不能执行
2011-10-26 20:40 5253javac 可以执行 java不能执行 java ... -
java 函数
2011-10-18 17:28 1133java 函数 /** * 向上取整 ... -
注释去掉提示
2011-07-27 08:46 880注释去掉提示 @SuppressWarnings(&q ... -
Java调用存储过程的2种方法
2011-05-11 12:28 1186Java调用存储过程的2种方法 creat proc ... -
quartz 执行定时任务
2011-03-08 10:13 926http://www.quartz-scheduler.org ... -
Javadb学习 连接Javadb的两种方法 javadb-10_5_1_1.zip
2010-12-24 14:40 3573Javadb学习 环境变量设置: DERBY_HOME=D ... -
Java初学者遇到的问题 环境变量
2010-12-10 08:47 1068Java初学者遇到的问题 Java ... -
Java执定定时任务
2010-12-08 14:03 778开始时间可通过属性文件配置,修改文件后,在执行一次任务后,就会 ...
相关推荐
SpringBoot mail中文附件乱码的解决方法 邮件附件中文乱码问题 在使用 SpringBoot 发送邮件时,经常会遇到附件名称中文乱码的问题。本文将详细介绍解决此问题的方法。 问题分析 在发送邮件时,我们需要将附件...
本示例将深入探讨如何使用Spring发送电子邮件,特别是针对中文乱码问题的解决方案。我们将涉及Spring的Java配置和Velocity模板引擎来创建动态邮件内容。 首先,我们需要引入必要的依赖。在Spring项目中,我们通常会...
spring.mail.properties.mail.smtp.starttls.enable=true ``` 然后创建一个邮件服务类,用于处理邮件发送。在这个类中,我们将使用Freemarker模板生成HTML内容,并通过JavaMailSender发送邮件: ```java @Service ...
本项目使用到的mail服务可在mail.properties中配置,不配置的话不影响整体,只是使用不了邮件服务。 本项目原本使用的是阿里云oss服务,现已修改成图片上传到本地服务器,如果需要可以在db.properties中进行阿里云...
1. **中文乱码处理**:在Java开发中,中文乱码问题经常出现,特别是在文件读写、网络传输或者数据库操作时。为了解决这个问题,我们需要确保在整个程序中统一字符编码,通常设置为UTF-8。在SSH框架中,可以在web.xml...
最后,字符乱码问题在处理多国语言和编码格式时尤为突出。解决这个问题需要理解字符编码(如UTF-8、GBK等)和HTTP头中的Content-Type字段,以及在Servlet和JSP中正确设置请求和响应的编码。 总结,Java Web应用的...
对于非ASCII字符,正确设置字符集非常重要,以防止乱码问题。 在实际开发中,获取文件的MIME类型通常涉及到对文件扩展名的检查,或者通过读取文件头信息来判断。Java中,可以使用`Files.probeContentType(path)`...
- **编码设置**:确保项目编码格式为UTF-8,避免字符乱码问题。 ##### 3. 配置MySQL - **创建数据库**:在MySQL中创建名为`email`的数据库,用于存储邮件服务器的相关数据。 - **连接配置**:根据具体使用的框架...