Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > Java Programming > Java Forum > Java - JSP อยากทราบวิธีส่งอีเมลไปยังผู้รับหลายคนในการส่งครั้งเดียวครับ



 

Java - JSP อยากทราบวิธีส่งอีเมลไปยังผู้รับหลายคนในการส่งครั้งเดียวครับ

 



Topic : 096061



โพสกระทู้ ( 40 )
บทความ ( 0 )



สถานะออฟไลน์




คือผมทำหน้าเว็บที่มีฟอร์ม Contact us ให้ user ติดต่อสอบถามไปยังบริษัทครับ

เมื่อกดส่งข้อมูลที่ฟอร์มแล้ว จะทำการบันทึกลงฐานข้อมูลและส่งอีเมลล์ไปผู้ที่เกี่ยวข้องของบริษัทซึง่มีหลายคน

ตอนนี้มผมทำบันทึกลงฐานข้อมมูล กับส่งอีเมลล์ไปยังผู้รับได้เพียงคนเดียวครับ แล้วก็เสานำไปยังหัวหน้าแผนกได้แล้ว

อยากทราบวิธีที่ทำให้ส่งไปทีเดียวพร้อมกันหลายๆคนครับ อยากทราบว่าจะเพิ่มตรงไหนดีครับ

ไฟล์จัดการฐานข้อมูลและส่งอีเมล contactSaveAndSendEmail.java
Code (Java)
package contact;

import java.io.IOException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;

import java.util.Date;
import java.text.SimpleDateFormat;


import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class servletContact
 */
@WebServlet("/servletContact")
public class servletContact extends HttpServlet {
	private static final long serialVersionUID = 1L;
	
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		request.setCharacterEncoding("UTF-8");
		response.setContentType("text/html; charset=UTF-8");
		String fullName = new String(request.getParameter("txtFormName").getBytes("ISO8859_1"),"UTF-8");
		System.out.println(fullName);
		String nameCompany = new String(request.getParameter("txtFormCompany").getBytes("ISO8859_1"),"UTF-8");
		String address = new String(request.getParameter("txtFormAddress").getBytes("ISO8859_1"),"UTF-8");
		String tel = new String(request.getParameter("txtFormTel").getBytes("ISO8859_1"),"UTF-8");
		String fax =  new String(request.getParameter("txtFormFax").getBytes("ISO8859_1"),"UTF-8");
		String email = new String(request.getParameter("txtFormEmail").getBytes("ISO8859_1"),"UTF-8");
		String subject =  new String(request.getParameter("txtFormSubject").getBytes("ISO8859_1"),"UTF-8");
		String message =  new String(request.getParameter("txtFormMessage").getBytes("ISO8859_1"),"UTF-8");
		Date now = new Date();
		SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		String datetime = df.format(now);
		
//		Sending Email.......................................................................
		
		String host = "smtp.gmail.com";
		String port = "587";
		
		String user = "[email protected]";
		String pass = "xxxxxxxxxxx";
		
		String recipient = "[email protected]";
		String recipientCC = "[email protected]";
		
		String resultMessage = "";
		System.out.println(message);
		try {
            EmailUtility.sendEmail(host, port, user, pass, recipient, recipientCC, subject,
                    message);
            resultMessage = "The e-mail was sent successfully";
        } catch (Exception ex) {
            ex.printStackTrace();
            resultMessage = "There were an error: " + ex.getMessage();
        } finally {
            System.out.println(resultMessage);
        }
				
		//Insert Database
		String sql = "INSERT INTO contact(name, name_company, address, tel, fax, email, subject, message, date_contact) " +
				"values ( '"+fullName+"', '"+nameCompany+"', '"+address+"', '"+tel+"', '"+fax+"', '"+email+"', '"+subject+"', '"+message+"', '"+datetime+"')";
		
		Connection con = null;
		PreparedStatement pst = null;
		
		try{
			con = DBConnect.getConnection();
			pst = con.prepareStatement(sql);
			pst.executeUpdate();
		}
		catch(SQLException e) {
			throw new ServletException(e);
		} 
		finally {
			if (pst != null) {
				try {
					pst.close();
				} catch (SQLException ignore) {
				}
			}
			if (con != null) {
				try {
					con.close();
				} catch (SQLException ignore) {
				}
			}
		}
		
	}
}


ไฟล์คลาสการส่งอีเมลล์ EmailUtility.java
Code (Java)
package contact;


import java.util.Date;
import java.util.Properties;
 
import javax.mail.Authenticator;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
 
/**
 * A utility class for sending e-mail messages
 * @author www.codejava.net
 *
 */
public class EmailUtility {
    public static void sendEmail(String host, String port,
            final String userName, final String password, String toAddress, String toCC,
            String subject, String message) throws AddressException,
            MessagingException {
 
        // sets SMTP server properties
        Properties properties = new Properties();
        properties.put("mail.smtp.host", host);
        properties.put("mail.smtp.port", port);
        properties.put("mail.smtp.auth", "true");
        properties.put("mail.smtp.starttls.enable", "true");
 
        // creates a new session with an authenticator
        Authenticator auth = new Authenticator() {
            public PasswordAuthentication getPasswordAuthentication() {
                return new PasswordAuthentication(userName, password);
            }
        };
 
        Session session = Session.getInstance(properties, auth);
 
        // creates a new e-mail message
        Message msg = new MimeMessage(session);
 
        msg.setFrom(new InternetAddress(userName));
        InternetAddress[] toAddresses = { new InternetAddress(toAddress) };
        InternetAddress[] toCCC = { new InternetAddress(toCC) };
        msg.setRecipients(Message.RecipientType.TO, toAddresses);
        msg.setRecipients(Message.RecipientType.CC, toCCC);
        msg.setSubject(subject);
        msg.setSentDate(new Date());
        msg.setText(message);
 
        // sends the e-mail
        Transport.send(msg);
 
    }
}





Tag : Java, JAVA, JSP







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2013-06-04 10:58:19 By : lnwsit View : 2261 Reply : 5
 

 

No. 1

Guest


บรรทัดที่ 49

Code (Java)
String recipient = "[email protected];[email protected];................";


ใช้วิธีการวนลูปต่อ string ก็ได้ในกรณี address อยู่ใน array หรือฐานข้อมูล






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-06-04 11:04:58 By : ห้ามตอบเกินวันละ 2 กระทู้
 


 

No. 2



โพสกระทู้ ( 40 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 1 เขียนโดย : ห้ามตอบเกินวันละ 2 กระทู้ เมื่อวันที่ 2013-06-04 11:04:58
รายละเอียดของการตอบ ::
ยังไม่ได้ครับ เหมือนมันมองเป็นก้อนเดียว

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-06-04 11:35:40 By : lnwsit
 

 

No. 3



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ใช้พวก BCC น่ะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-06-04 11:39:50 By : mr.win
 


 

No. 4



โพสกระทู้ ( 40 )
บทความ ( 0 )



สถานะออฟไลน์


ตอนนี้ทำได้แล้วครับ ลืมสังเกตุไปว่า

InternetAddress[] toAddresses = { new InternetAddress(toAddress) }; เป็นตัวแปร array ผมเลยเพิ่มข้อมูลอีเมลล์ผู้รับเรียบร้อยแล้วครับ

ขอบคุณทุกท่านที่ช่วยเหลือ

Code (Java)
InternetAddress[] toAddresses = { new InternetAddress(toAddress), new InternetAddress(toAddress2) };


แต่ขอสอบถามเพิ่มเติมนะครับ BCC คืออะไรครับ เป็นการทำสำเนาแบบprivate รึป่าวครับ เห็น TC Admin บอกให้ลองใช้ปะเภทนี้

ตอบความคิดเห็นที่ : 3 เขียนโดย : mr.win เมื่อวันที่ 2013-06-04 11:39:50
รายละเอียดของการตอบ ::
BCC คืออะไรหรอครับ ตรง RecipientType ผมเห็นว่ามี ประเภท BCCด้วยครับ การสำเนาลับอะไรรึป่าวครับ

Code (Java)
msg.setRecipients(Message.RecipientType.BCC, toBCC);


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-06-04 12:31:48 By : lnwsit
 


 

No. 5



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

Java and Send Mail (JavaMail)

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-01 11:03:53 By : mr.win
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : Java - JSP อยากทราบวิธีส่งอีเมลไปยังผู้รับหลายคนในการส่งครั้งเดียวครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 03
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่