一、讲阿里巴巴的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("649849631@qq.com");
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("18865506187@163.com");
helper.setTo("18865506187@163.com");
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