1. 程式人生 > >國際物流雲專案day6

國際物流雲專案day6

一、講阿里巴巴的FastJson
二、講javaMmail
1、手動編寫傳送郵件類
2、做一個傳送郵件的工具類
https://blog.csdn.net/shishize55/article/details/83754840
三、javaMail與Spring整合開發
在這裡插入圖片描述

1、導包
mava下

在這裡插入圖片描述

web 下
在這裡插入圖片描述

2、Spring對javaMail的API支援
在這裡插入圖片描述

3、建立郵件的配置檔案 mail.properties

mail.host=smtp.163.com 
mail.username=傳送郵件使用者名稱
mail.password=外部發送郵件的 授權密碼
mail.from=管理員郵箱

4、spring與javaMail整合配置檔案 applicationContext-mail.xml
https://blog.csdn.net/shishize55/article/details/83755721

5、測試

@Test
	public void fun(){
		//獲取配置檔案
		ApplicationContext ac = new ClassPathXmlApplicationContext("classpath:applicationContext-mail.xml");
		
		
		JavaMailSender sender = (JavaMailSender) ac.getBean("mailSender");
		
	    SimpleMailMessage message = (SimpleMailMessage) ac.getBean("mailMessage");
	    
	    message.setTo("
[email protected]
"); message.setSubject("spring的javaMail整合傳送"); message.setText("spring簡單傳送郵件"); sender.send(message); }

6、發郵件帶附件

import java.io.File;

import javax.mail.MessagingException;
import javax.mail.internet.MimeMessage;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.core.io.FileSystemResource;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.mail.javamail.MimeMessageHelper;

public class SpringMailTest1 {

	public static void main(String[] args) throws MessagingException {
		ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext-mail.xml");
		JavaMailSender sender = (JavaMailSender) ac.getBean("mailSender");
	
		MimeMessage message = sender.createMimeMessage();
		MimeMessageHelper helper = new MimeMessageHelper(message,true); //true帶圖片帶附件必須設定
		helper.setFrom("
[email protected]
"); helper.setTo("[email protected]"); helper.setSubject("200張圖片的附件"); //true代表前面的文字可以當成html標籤進行解析 helper.setText("<html><head></head><body><h1>hello!!spring image html mail</h1><a href=http://www.baidu.com>baidu</a><img src='cid:image' /></body></html>", true); //添加了一個圖片的附件 helper.addInline("image", new FileSystemResource(new File("E:/test.jpg"))); //新增附件 helper.addAttachment("axis.log", new FileSystemResource(new File("E:/axis.log"))); sender.send(message); } }

四、HttpClient應用
在這裡插入圖片描述

2、HttpClient 導包
2.1引人HttpClient開發座標

	<dependency>
		<groupId>org.apache.httpcomponents</groupId>
		<artifactId>httpclient</artifactId>
		<version>4.4</version>
	</dependency>

3、Httpclient開發步驟

使用HTTPClient 傳送請求、接收響應很簡單,一般有如下幾步

1、建立HttpClient物件
	HttpClient client = new HttpClient();
2、建立請求方法的例項,並指定請求URL。
	如果需要傳送GET請求,建立HTTPGet物件,
	如果需要傳送POST請求,建立HTTPPost物件、
3、如果需要傳送請求引數,可呼叫HttpGet、HttpPost共同的
	String params = EntityUtils.toString(new UrlEncodedFormEntity(List.Consts.UTF_8));
	再通過?實現url拼接
	HttpPost物件,也可以呼叫setEntity(HttpEntity entity)方法來設定請求引數;
4、呼叫HttpClient物件的 execute(HttpUrlRequest request)傳送請求
	該方法返回一個HttpResponse響應
5、呼叫HttpResponse 的getAllHeaders(),getHeaders(String name)等方法可回去伺服器的響應頭,
   呼叫HttpResponse的getEntity()方法可獲取HttpEntity物件 ,該物件包裝類伺服器的響應內容,程式可通過該物件獲取伺服器響應的內容
 6、釋放連線、無論執行方法是否成功,都必須釋放連線

4、HTTPClient 傳送請求
4.1 Get 傳送請求 不帶引數 測試
https://blog.csdn.net/shishize55/article/details/83759118
4.2 Get 傳送請求 帶引數 測試
https://blog.csdn.net/shishize55/article/details/83759142
4.3 Post 傳送請求 不帶引數 測試
https://blog.csdn.net/shishize55/article/details/83759165
4.4 Post 傳送請求 帶引數 測試
https://blog.csdn.net/shishize55/article/details/83759176
4.5 Post 以表單提交方式請求 帶引數 測試
https://blog.csdn.net/shishize55/article/details/83759196