"এটা আমি-আবার। এবং আবার, তোমার জন্য আমার একটু সারপ্রাইজ আছে।"

"আজ আমি আপনাকে জাভা ব্যবহার করে ইমেল পাঠাতে শেখাতে যাচ্ছি । "

"আসুন সুসংবাদ দিয়ে শুরু করুন: ইমেলের সাথে কাজ করার জন্য জাভাতে একটি নেটিভ লাইব্রেরি রয়েছে। "

"খারাপ খবর হল এই লাইব্রেরিটি Java EE এর অংশ , Java SE নয় ।"

" Java EE হল JavaSE এর একটি বর্ধিত সংস্করণ , যাতে নিফটিয়ার অ্যাপ্লিকেশনের জন্য প্রয়োজনীয় ক্লাস অন্তর্ভুক্ত থাকে৷ উদাহরণস্বরূপ, ইমেলের সাথে কাজ করার জন্য একটি অ্যাপ্লিকেশন৷"

"বুঝলাম, তাহলে কি করা যায়?"

"ঠিক আছে, আমি আপনাকে এই লাইব্রেরিটি ডাউনলোড করার পরামর্শ দিচ্ছি এবং এটিই।"

"বুদ্ধিমানের সাথে IntelliJ IDEA ব্যবহার করুন।"

"একটি ক্লাস তৈরি করুন এবং javax.mail.* এবং javax.mail.internet.* লাইব্রেরিগুলি আমদানি বিভাগে যোগ করুন৷

"তারপর Alt+Enter টিপুন এবং IDEA কে আপনার জন্য সবকিছু করতে দিন:

"নিখোঁজ লাইব্রেরিগুলি ডাউনলোড করার অফারটি দেখতে কেমন তা এখানে:"

ইমেল পাঠান- ০১৭১৩৩৭৩৩৪৪

"ডাউনলোড উইন্ডোটি দেখতে কেমন তা এখানে:"

ইমেইল পাঠান - 2

"অথবা আপনি এটি এখানে ডাউনলোড করতে পারেন "

"ডাউনলোড হয়েছে। এরপর কি?"

"আপনাকে লাইব্রেরি বিভাগে প্রকল্প সেটিংসে (ওপেন মডিউল সেটিংস) যেতে হবে এবং ডাউনলোড করা আর্কাইভ থেকে JAR ফাইল যোগ করতে হবে।"

ইমেইল পাঠান - 3

"সম্পন্ন."

"নিম্নলিখিত লাইনগুলো কি আর লাল নয়?"

import javax.mail.internet.MimeMessage;
import javax.mail.internet.*;

"হ্যাঁ।"

"দারুণ, তারপর চালিয়ে যাওয়া যাক।"

"একটি ইমেল পাঠানোর তিনটি ধাপ আছে।"

1) মেল সার্ভারের সাথে একটি সংযোগ স্থাপন করুন যা ইমেল পাঠাতে ব্যবহৃত হবে

2) ইমেল তৈরি করুন এবং প্রয়োজনে সংযুক্তি যোগ করুন

3) ইমেইল পাঠান.

"আসুন শুরু থেকে শুরু করা যাক।"

"জাভাতে একটি ইমেল পাঠাতে, আপনাকে প্রথমে মেল সার্ভারের সাথে একটি সংযোগ স্থাপন করতে হবে।"

"আপনার যদি সার্ভারে ইতিমধ্যেই একটি ইমেল অ্যাকাউন্ট থাকে তবে এটি সর্বোত্তম। স্প্যাম সম্পর্কে উদ্বিগ্ন, আধুনিক মেল সার্ভারগুলি বেনামী ব্যবহারকারীদের থেকে বার্তা পাঠাতে চায় না। "

"আপনি javax.mail.Session.getDefaultInstance পদ্ধতিতে একটি একক কল দিয়ে সার্ভারের সাথে সংযোগ করতে পারেন:"

মেল সার্ভারের সাথে একটি সংযোগ তৈরি করুন
Properties props = new Properties();

// Here we need to load data into the props object

Session session = Session.getDefaultInstance(props);

"কিন্তু আপনাকে এই পদ্ধতিতে মেল সার্ভার সেটিংস পাস করতে হবে।"

"উদাহরণস্বরূপ, আপনি একটি Mail.properties ফাইল তৈরি করতে পারেন এবং এটি পছন্দসই সেটিংস দিয়ে পূরণ করতে পারেন, উদাহরণস্বরূপ, এরকম কিছু:"

Mail.properties
mail.transport.protocol=smtp
mail.host=smtp.gmail.com
mail.smtp.auth=true
mail.user=arnold@gmail.com
mail.password=strong

"সবচেয়ে গুরুত্বপূর্ণ বিষয় হল প্রোটোকল এবং হোস্ট নির্দিষ্ট করা, তবে মেল সার্ভার কীভাবে কাজ করে তার উপর নির্ভর করে আপনার অতিরিক্ত সেটিংসের প্রয়োজন হতে পারে।"

"আপনি কেবলমাত্র আপনার জাভা কোডে একটি বৈশিষ্ট্য বস্তুতে এই ডেটা যোগ করতে পারেন।"

"উদাহরণ স্বরূপ:"

মেল সার্ভারের সাথে একটি সংযোগ তৈরি করুন"
Properties props = new Properties();
props.put("mail.transport.protocol", "smtps");
props.put("mail.smtps.host", “smtp.gmail.com”);
props.put("mail.smtps.auth", "true");
props.put("mail.smtp.sendpartial", "true");

Session session = Session.getDefaultInstance(props);

"দারুণ, আমরা একটি সেশন পেয়েছি। এখন একটি ইমেল তৈরি করা যাক।"

"প্রথম নজরে মনে হওয়ার চেয়ে এটি করা সহজ৷ উদাহরণস্বরূপ:"

একটি মেইল ​​বার্তা তৈরি করুন
// Create a message
MimeMessage message = new MimeMessage(session);

// Set the message subject
message.setSubject("Test email!");

// Add the message text
message.setText("Asta la vista, baby!");

// Specify the recipient
message.addRecipient(Message.RecipientType.TO, new InternetAddress("stalone@gmail.com"));

// Specify the delivery date
message.setSentDate(new Date());

"আমি প্রাপক হিসাবে কোন ইমেল ঠিকানা নির্দিষ্ট করতে পারি?"

"হ্যাঁ। আরও কি, আপনি প্রেরক হিসাবে যে কোনও ইমেল ঠিকানাও উল্লেখ করতে পারেন।"

"কুল! আমি এটা বিবেচনায় নেব।"

"এখন আমাদের শুধু এই বার্তাটি পাঠাতে হবে।"

"প্রথমে, আমরা সার্ভারে সাইন ইন করি, তারপর আমরা আমাদের বার্তা পাঠাই। কোডের মাত্র দুটি লাইন:"

একটি বার্তা পাঠান
// Username and password for a Gmail account
String userLogin = “arnold@gmail.com;
String userPassword = “strong”;

// Sign in on the server:
Transport transport = session.getTransport();
transport.connect("smtp.gmail.com", 465, userLogin, userPassword);

// Send a message:
transport.sendMessage(message, message.getRecipients(Message.RecipientType.TO));

"কত আকর্ষণীয়! আমি এটা চেষ্টা করতে হবে."

"আপনি যদি ভাবছেন কিভাবে সংযুক্তি সহ একটি বার্তা পাঠাবেন, আপনি এটি সম্পর্কে এখানে পড়তে পারেন ।"

"আপনিও যদি মেলটি কীভাবে গ্রহণ করবেন তা জানতে চান, দয়া করে এখানে দেখুন ।"

"পবিত্র মলি. কি দরকারী লিঙ্ক!"

"হ্যাঁ, আমি এখন আমার নিজের ইমেল ক্লায়েন্ট তৈরি করতে যাচ্ছি। দুর্দান্ত!"

"ধন্যবাদ, এলি!"