发邮件的写法

using System;
using System.Web.Mail;
using System.Configuration;

namespace  OnLineExamSystem.WebCommon
{
 /// <summary>
 /// SendMail 发送邮件
 /// </summary>
 public class EMail
 {
  private string stmpServer;
  private string stmpName;
  private string stmpPwd;
  


  public EMail()
  {
   stmpServer=System.Configuration.ConfigurationSettings.AppSettings["Smtp"].Trim();
   stmpName=System.Configuration.ConfigurationSettings.AppSettings["SmtpUser"].Trim();
   stmpPwd=System.Configuration.ConfigurationSettings.AppSettings["SmtpPwd"].Trim();
  }

  /// <summary>
  /// 发送邮件
  /// </summary>
  /// <param name="emailFrom">发件人</param>
  /// <param name="emailTo">收件人</param>
  /// <param name="emailSubject">主题</param>
  /// <param name="emailBody">内容</param>
  public void SendMail(string emailFrom,string emailTo,string emailSubject,string emailBody)
  {
   System.Web.Mail.MailMessage sendMail=new MailMessage();
   sendMail.From=emailFrom; //发件人邮件地址
   sendMail.To=emailTo;//收件人地址
   sendMail.Subject=emailSubject;//主题
   sendMail.Body=emailBody; //邮件正文
   sendMail.BodyEncoding=System.Text.Encoding.Unicode; //邮件编码
   sendMail.BodyFormat=System.Web.Mail.MailFormat.Text;//邮件格式

   
   if(stmpName!="")
   {
    //设置为需要用户验证
    sendMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate","1");
                //设置验证用户名
    sendMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername",stmpName);
          //设置验证密码
    sendMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword",stmpPwd);
   }
   System.Web.Mail.SmtpMail.SmtpServer=stmpServer;  //设置Smtp服务器

   SmtpMail.Send(sendMail);//发送邮件


  }
 }
}

考勤周汇总的写法思路可以分为以下几个步骤: 1. 获取考勤数据:从数据库或者文件中读取考勤数据,可以使用 JDBC 或者文件读操作实现。 2. 统计考勤数据:对考勤数据进行统计,计算出每个员工的出勤天数、迟到次数、早退次数等信息。 3. 生成周报表:将统计结果按照一定的格式输出到周报表中,可以使用文本文件或者 Excel 表格等形式。 4. 发送周报表:将生成的周报表发送给相关人员,可以通过邮件、微信等方式发送。 下面是一个简单的 Java 代码示例,演示了如何实现考勤周汇总: ```java import java.io.*; import java.sql.*; import java.text.SimpleDateFormat; import java.util.*; public class AttendanceSummary { public static void main(String[] args) { // 1. 获取考勤数据 List<AttendanceRecord> records = getAttendanceRecords(); // 2. 统计考勤数据 Map<String, AttendanceSummaryData> summaryDataMap = new HashMap<>(); for (AttendanceRecord record : records) { String employeeId = record.getEmployeeId(); AttendanceSummaryData summaryData = summaryDataMap.getOrDefault(employeeId, new AttendanceSummaryData()); summaryData.addAttendanceRecord(record); summaryDataMap.put(employeeId, summaryData); } // 3. 生成周报表 SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); String report = "员工ID\t出勤天数\t迟到次数\t早退次数\n"; for (Map.Entry<String, AttendanceSummaryData> entry : summaryDataMap.entrySet()) { String employeeId = entry.getKey(); AttendanceSummaryData summaryData = entry.getValue(); report += employeeId + "\t" + summaryData.getAttendanceDays() + "\t" + summaryData.getLateTimes() + "\t" + summaryData.getEarlyLeaveTimes() + "\n"; } // 4. 发送周报表 sendReport(report); } private static List<AttendanceRecord> getAttendanceRecords() { // TODO: 从数据库或者文件中读取考勤数据 return new ArrayList<>(); } private static void sendReport(String report) { // TODO: 发送周报表给相关人员 } } class AttendanceRecord { private String employeeId; private Date date; private boolean isLate; private boolean isEarlyLeave; public AttendanceRecord(String employeeId, Date date, boolean isLate, boolean isEarlyLeave) { this.employeeId = employeeId; this.date = date; this.isLate = isLate; this.isEarlyLeave = isEarlyLeave; } public String getEmployeeId() { return employeeId; } public Date getDate() { return date; } public boolean isLate() { return isLate; } public boolean isEarlyLeave() { return isEarlyLeave; } } class AttendanceSummaryData { private int attendanceDays; private int lateTimes; private int earlyLeaveTimes; public void addAttendanceRecord(AttendanceRecord record) { attendanceDays++; if (record.isLate()) { lateTimes++; } if (record.isEarlyLeave()) { earlyLeaveTimes++; } } public int getAttendanceDays() { return attendanceDays; } public int getLateTimes() { return lateTimes; } public int getEarlyLeaveTimes() { return earlyLeaveTimes; } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值