1、获取表中最后一条数据

 public static String demo() throws SQLException {
     String sql = "select * FROM baoxiu ORDER BY id DESC LIMIT 0,1;";
         PreparedStatement ptmt = conn.prepareStatement(sql);
         ResultSet rs = ptmt.executeQuery();
         String str=null;
     if(rs.next()) {
         str= rs.getString("bt");
     }
     return str;
 }

2、使用模糊查询,获取符合条件的所有数据

 public static List<DuibiModel> getBaoX(String bt) throws SQLException {
     String sql = "select bt,`user`.cardid,phone FROM baoxiu,`user` WHERE baoxiu.cardid=`user`.cardid AND bt LIKE '%"+bt+"%'";
         PreparedStatement ptmt = conn.prepareStatement(sql);
         ResultSet rs = ptmt.executeQuery();
     List<DuibiModel> list = new ArrayList<>() ;
     while(rs.next()) {
         DuibiModel duibi=new DuibiModel();
         duibi.setBt(rs.getString("bt"));
         duibi.setCardid(rs.getString("cardid"));
         duibi.setPhone(rs.getString("phone"));
         list.add(duibi);
     }
     return list;
 }

3、Java 发送邮件

 import javax.mail.Authenticator;
 import javax.mail.PasswordAuthentication;

 public class Auth extends Authenticator {

     private String username = "";
     private String password = "";

     public Auth(String username, String password) {
         this.username = username;
         this.password = password;
     }
     public PasswordAuthentication getPasswordAuthentication() {
         return new PasswordAuthentication(username, password);
     }
 }
 import java.util.Properties;
 import javax.mail.Message;
 import javax.mail.Session;
 import javax.mail.Transport;
 import javax.mail.internet.InternetAddress;
 import javax.mail.internet.MimeMessage;

 public class SendMail {

     private Properties props; //系统属性
     private Session mailSession; //邮件会话对象
     private MimeMessage mimeMsg; //MIME邮件对象

     public SendMail(String SMTPHost, String Port, String MailUsername, String MailPassword) {
         Auth au = new Auth(MailUsername, MailPassword);
         //设置系统属性
         props=java.lang.System.getProperties(); //获得系统属性对象
         props.put("mail.smtp.host", SMTPHost); //设置SMTP主机
         props.put("mail.smtp.port", Port); //设置服务端口号
         props.put("mail.smtp.auth", "true"); //同时通过验证
         //获得邮件会话对象
         mailSession = Session.getInstance(props, au);
     }

     public boolean sendingMimeMail(String MailFrom, String MailTo,
             String MailCopyTo, String MailBCopyTo, String MailSubject,
             String MailBody) {
         try {
             //创建MIME邮件对象
             mimeMsg=new MimeMessage(mailSession);
             //设置发信人
             mimeMsg.setFrom(new InternetAddress(MailFrom));
             //设置收信人
             if(MailTo!=null){
                 mimeMsg.setRecipients(Message.RecipientType.TO, InternetAddress.parse(MailTo));
             }
             //设置抄送人
             if(MailCopyTo!=null){
                 mimeMsg.setRecipients(javax.mail.Message.RecipientType.CC,InternetAddress.parse(MailCopyTo));
             }
             //设置暗送人
             if(MailBCopyTo!=null){
                 mimeMsg.setRecipients(javax.mail.Message.RecipientType.BCC,InternetAddress.parse(MailBCopyTo));
             }
             //设置邮件主题
             mimeMsg.setSubject(MailSubject,"utf-8");
             //设置邮件内容,将邮件body部分转化为HTML格式
             mimeMsg.setContent(MailBody,"text/html;charset=utf-8");
             //发送邮件
             Transport.send(mimeMsg);
             return true;
         } catch (Exception e) {
             e.printStackTrace();
             return false;
         }
     }
 }
 public static boolean email(String email,String str) {
     String SMTPHost="smtp.qq.com";
     String Port="25";
     String MailUsername="gkh35@foxmail.com"; //直接用我的邮件进行发送测试
     String MailPassword="wggddlvcrqfubhde"; //密码请勿修改
     SendMail sendMail=new     SendMail(SMTPHost,Port,MailUsername,MailPassword);
     String MailFrom="gkh35@foxmail.com"; //发件人
     String MailTo=email; //收件人
     String MailCopyTo=null; //抄送人
     String MailBCopyTo=null; //暗送人
     String MailSubject="发现类似商品"; //邮件主题
     String MailBody=str; //邮件内容
     //发送邮件
     boolean isSend=sendMail.sendingMimeMail(MailFrom, MailTo, MailCopyTo, MailBCopyTo, MailSubject, MailBody);
     return isSend;
 }

4、main方法

 public static void main(String[] args) throws SQLException {
     boolean flag = false;
     String str=demo();
     for(DuibiModel duibiModel : getBaoX(str)) {
         System.out.println("名称为:"+duibiModel.getBt()+","+"身份证号:"+duibiModel.getCardid()+","+"电话号码为:"+duibiModel.getPhone());
         flag=email("gkh8299@gmail.com", duibiModel.getBt());
     }
     if(flag) {
         System.out.println("邮件发送成功");
     }else {
         System.out.println("邮件发送失败");
     }
 }

java结合email实现自动推送的更多相关文章

  1. 极光推送经验之谈-Java后台服务器实现极光推送的两种实现方式

    原创作品,可以转载,但是请标注出处地址http://www.cnblogs.com/V1haoge/p/6439313.html Java后台实现极光推送有两种方式,一种是使用极光推送官方提供的推送请 ...

  2. java后台服务器实现极光推送

    一.添加极光推送所需要的jar包,项目使用的maven,所以只需要在pom文件里添加jar包依赖 <dependency> <groupId>cn.jpush.api</ ...

  3. 百度自动推送js

    <!DOCTYPE html> <!-- saved from url=(0014)about:internet --> <html> <head> & ...

  4. java集成jpush实现客户端推送

    代码地址如下:http://www.demodashi.com/demo/13700.html 前言 java 集成jpush 实现客户端推送 一.准备工作 开发环境: jdk1.6 Eclipse ...

  5. SEO教程:快速增加360搜索引擎收录,360自动推送批量推送版

    上次改编了一下百度的JS推送代码,实现了批量推送 传送门>>>百度链接提交-js代码推送批量推送版 这次我们来研究360js自动推送代码. <script> (funct ...

  6. 基于Tomcat7、Java、WebSocket的服务器推送聊天室

    http://blog.csdn.net/leecho571/article/details/9707497 http://blog.fens.me/java-websocket-intro/ jav ...

  7. Tomcat学习总结(4)——基于Tomcat7、Java、WebSocket的服务器推送聊天室

    前言           HTML5 WebSocket实现了服务器与浏览器的双向通讯,双向通讯使服务器消息推送开发更加简单,最常见的就是即时通讯和对信息实时性要求比较高的应用.以前的服务器消息推送大 ...

  8. JAVA使用百度链接实时推送API提交链接

    官网地址:http://data.zz.baidu.com/ 百度推广API的token获取 http://data.zz.baidu.com/site/index 填写完之后会进行验证, 验证完之后 ...

  9. JAVA web 使用有盟推送总结

    仔细阅读文档,下边的都是废话. 为了省事,iOS和Android 提供了所有了参数,需要那个了修改传参. //ios actionURL为自定义参数 $.ajax({ type : "POS ...

随机推荐

  1. AJ学IOS(48)多线程网络之多线程简单了解

    AJ分享,必须精品 一:进程和线程 1:什么是进程 进程是指在系统中正在运行的一个应用程序 每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内. 比如同时打开QQ.Xcode,系统就会分 ...

  2. AJ学IOS(25)UI之触摸事件

    AJ分享,必须精品 iOS中的事件 在用户使用app过程中,会产生各种各样的事件;iOS中的事件可以分为3大类型: 响应者对象–UIResponder 在iOS中不是任何对象都能处理事件,只有继承了U ...

  3. Android MonkeyTalk测试

    Android MonkeyTalk测试 MonkeyTalk可以用于压力测试,正因为这点所以才选择MonkeyTalk进行测试,相对于Monkey测试,目前个人发现的有点在于,MonkeyTalk是 ...

  4. MDC是什么鬼?用法、源码一锅端

    近期用到阿里的一款开源的数据同步工具 Canal,不经意之中看到了 MDC 的用法,而且平时项目中也多次用到 MDC,趁机科普一把. 通过今天的分享,能让你轻松 get 如下几点,绝对收获满满. a) ...

  5. PHP函数:array_key_exists

    array_key_exists()  - 检查数组里是否有指定的键名或索引. 注意:array_key_exists() 仅仅搜索第一维的键. 多维数组里嵌套的键不会被搜索到. 说明: rray_k ...

  6. 论JDK5/7/8版本都做出了哪些革新

    在Java发展的里程碑上,有三个版本做出的改动,是革命性的 为什么说是革命性的呢? 因为这三个版本所推出的有些新机制,在之后的Java框架开发.新类的产生等等中, 都被广泛使用了. 那么,这三个版本的 ...

  7. XCTF两个PHP代码审计的笔记

    题目源码如下,考点是输入的$id和$row['id']的区别 关键在于红框内,可以知道题目的payload是要让$row['id']存在,查询的到数据,并且要让POST的id不能与adog相同.那显而 ...

  8. [html][javascript] 关于SVG环形进度条

    下面是个例子: <style> .demo2{ transform-origin: center; transform: rotate(-90deg); transition: strok ...

  9. MySQL学习之正则表达式篇

    正则表达式(REGEXP) 1.简介 正则表达式是用来匹配列值的特殊字符集合,许多领域都有涉及, MySQL使用的正则表达式仅为其一个小小的子集. 2.基本字符匹配 2.1筛选包含特定字符串的信息 / ...

  10. MySQL笔记总结-其他

    数据库相关概念 一.数据库的好处 1.可以持久化数据到本地 2.结构化查询 二.数据库的常见概念 ★ 1.DB:数据库,存储数据的容器 2.DBMS:数据库管理系统,又称为数据库软件或数据库产品,用于 ...