jdk引入第三方jar
来源:互联网 发布:linux服务器防火墙设置 编辑:程序博客网 时间:2024/05/20 20:05
由于工作的需要,
要求:定时发信功能
细节:只允许装jdk
方案:定时用批处理来完成,发信功能由javamail 实现
步骤:1、定时 批处理脚本,以下是每5秒钟运行一次,运行10000000次 ,java 文件新建在 c 盘根目录下
- ping -n 5 127.1>nul
- @echo off
- for /l %%x in (1,1,10000000) do (
- echo %%x
- cd/
- javac SendMail.java
- java SendMail
- ping -n 5 127.1>nul
- )
- pause
2、java 实现发信功能
首先,CLASSPATH 配置第三方jar包,如 :%JAVA_HOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jar;D:/java/jdk1.5.0_12/lib/thirdJar/mail.jar;D:/java/jdk1.5.0_12/lib/thirdJar/activation.jar;D:/java/jdk1.5.0_12/lib/thirdJar/mailapi.jar;
其次,编译文件,执行文件 SendMail.java
- import java.io.BufferedReader;
- import java.io.File;
- import java.io.FileInputStream;
- import java.io.IOException;
- import java.io.InputStream;
- import java.io.InputStreamReader;
- import java.text.SimpleDateFormat;
- import java.util.ArrayList;
- import java.util.Date;
- import java.util.List;
- import java.util.Properties;
- import javax.activation.DataHandler;
- import javax.activation.DataSource;
- import javax.activation.FileDataSource;
- import javax.mail.Message;
- import javax.mail.Multipart;
- import javax.mail.Session;
- import javax.mail.Transport;
- import javax.mail.internet.InternetAddress;
- import javax.mail.internet.MimeBodyPart;
- import javax.mail.internet.MimeMessage;
- import javax.mail.internet.MimeMultipart;
- public class SendMail {
- public static void main(String[] args) {
- System.out.println("------start-----");
- SendMail sm = new SendMail();
- String from = "xingyu@bolasoft.com";
- String content = "<html><body>いつも大変、お世話になっております。<br>本日発行したアカウントをご連絡いたします。<br> よろしくお願いいたします。<br>==============================<br>株式会社シルクロード<br> 〒135‐0001 江東区毛利1‐12‐10‐1102<br>電話:03‐5624‐5805<br>Fax :03‐5624‐5807<br> ==============================<br>";
- String to = "anxingyu_1984@126.com";
- String password = "×××";
- String username = "xingyu@bolasoft.com";
- String subject = "発行通知";
- String host = "smtp.bolasoft.com";
- try {
- // 读文件,得到发件人和收件人
- File f=new File("C:/MBSTimingJobs/property.txt");
- InputStream is = new FileInputStream(f);
- List<Object> list = sm.readToBuffer(is);
- is.close();
- from=list.get(0).toString();
- username=list.get(0).toString();
- password=list.get(1).toString();
- to=list.get(2).toString();
- System.out.println(host);
- System.out.println(from);
- System.out.println(to);
- System.out.println(username);
- System.out.println(password);
- sm.smail(host, from, to, username, password, subject, content);
- } catch (Exception e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- System.out.println("------end-----");
- }
- public List<Object> readToBuffer( InputStream is)
- throws IOException {
- List<Object> list = new ArrayList<Object>();
- String line; // 用来保存每行读取的内容
- BufferedReader reader = new BufferedReader(new InputStreamReader(is));
- line = reader.readLine(); // 读取第一行
- while (line != null) { // 如果 line 为空说明读完了
- list.add(line);
- line = reader.readLine(); // 读取下一行
- }
- return list;
- }
- public void smail(String host, String from, String to, String username,
- String password, String subject, String content) throws Exception {
- Properties props = new Properties();
- // Setup mail server
- props.put("mail.smtp.host", host);
- props.put("mail.smtp.auth", "true");
- // Get session
- Session session = Session.getDefaultInstance(props);
- // watch the mail commands go by to the mail server
- session.setDebug(true);
- // Define message
- MimeMessage message = new MimeMessage(session);
- message.setFrom(new InternetAddress(from));
- message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
- message.setSubject(subject);
- // create the message part
- MimeBodyPart messageBodyPart = new MimeBodyPart();
- String fileAttachment = "C:/MBSTimingJobs/DayStatistc/"+dateFormat()+".csv";
- // fill message
- Multipart multipart = new MimeMultipart();
- messageBodyPart.setContent(content, "text/html;charset=GBK");
- multipart.addBodyPart(messageBodyPart);
- // Part two is attachment
- messageBodyPart = new MimeBodyPart();
- DataSource source = new FileDataSource(fileAttachment);
- messageBodyPart.setDataHandler(new DataHandler(source));
- @SuppressWarnings("unused")
- String fileName = new String(fileAttachment.getBytes("ISO-8859-1"),"GBK");
- String[] arrayStr = fileAttachment.split("/");
- String file = arrayStr[arrayStr.length - 1];
- System.out.println("file = " + file);
- messageBodyPart.setFileName(file);
- multipart.addBodyPart(messageBodyPart);
- // Put parts in message
- message.setContent(multipart);
- // Send message
- message.saveChanges();
- Transport transport = session.getTransport("smtp");
- transport.connect(host, username, password);
- transport.sendMessage(message, message.getAllRecipients());
- transport.close();
- }
- private static String dateFormat(){
- SimpleDateFormat sdf=new SimpleDateFormat("yy-MM-dd");
- return sdf.format(new Date());
- }
- }
注意:jar 所在位置,根据CLASSPATH可看出,发送邮件的源码中附件的位置 C:/MBSTimingJobs/DayStatistc/ ,附件名称是每天动态得到
ok!
- jdk引入第三方jar
- eclipse引入第三方jar
- android 引入第三方jar出错问题
- Android引入第三方jar的问题
- android引入第三方jar包步骤
- Android MK 引入第三方jar包
- android studio引入第三方jar包
- android studio引入第三方JAR.
- 创建jar并引入第三方包
- anroid studio 中引入第三方jar
- android studio引入第三方jar包
- eclipse中引入第三方jar包
- AndroidStudio引入第三方jar包操作
- Android Studio 引入第三方jar包
- MAVEN引入第三方JAR包
- 将引入的第三方jar一起打包成jar
- myeclipse生成jar包并引入第三方jar包
- ava项目导出jar包,引入第三方jar包。
- 低沉中。。。
- My Ubuntu free CD Shipped/Cancelled requests list:
- 新手
- “windows workflow foundation 新一代工作流开发实务” 读后感
- 一个数据库简易浏览功能的实现
- jdk引入第三方jar
- 技术收集
- UNIX基础知识常用UNIX命令
- 运用ajax提示未定义
- 设计模式简单代码之Flyweight模式(二)
- JXTA v2.5技术手册
- c++ string类
- Opera 9.61 build 10463 正式版
- SoapFormatter