Tải bản đầy đủ (.pdf) (26 trang)

Tài liệu Lập trình mạng P7 ppt

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (64.07 KB, 26 trang )

Java Training
Introduction to Java Mail
What is JavaMail? -1

JavaMail is an API for sending and receiving email using
Java. The current version is 1.3.1 and can be downloaded
from Sun's website at:
/>
Possible uses:

Send email from web pages using servlets

Create a GUI email client

Send email from Java stored procedures

Send email from any type of Java application

Spam your friends and enemies! (read email addresses
from a database, write a for () loop, and away the emails
go!)
What is JavaMail? -2

To send JavaMail, you'll need to add at least two JAR files
from Sun to your classpath (placing them in a lib directory
may be a good idea)

activation.jar

mail.jar
(Note: You can download these files from the Java Zone)



For more complex emailing tasks (like receiving or
managing pop3 or imap mail servers), you'll need to
download additional files like pop3.jar and imap.jar.

You will also need access to a mail server and possibly a
username/password for that mail server
How Does Email Work?

In general, each internet domain has an email server.

When you send out an email

Your email client program sends the message to your
email server

Your email server contacts the addressee's email server
using the SMTP (simple mail transfer protocol)

Your email server verifies that the addressee's user
name is valid

Your email server then transfers the email to the
addressee's email server

When the addressee logs into his email server (using his
email client program), he gets his email
Mail Servers (sendmail)-1

sendmail is the most commonly used mail server in the

world, as it generally comes free with Unix and Linux
installations

very powerful and flexible. Supports POP3 and IMAP

well documented (lots of books on setting up sendmail)

long track record (first version appeared in early '80s)

tedious to set up (lots of cryptic configuration files)

free

www.sendmail.org
Mail Servers (qmail)-2

qmail is probably the most popular alternative to sendmail
in the UNIX world

perhaps more secure than sendmail (at least older
versions of sendmail)

Easier to set up and administer than sendmail

pretty good documentation (several books written on
qmail in the past few years)

free

/>Mail Servers (MS Exchange)-2


MS Exchange is widely used in the Windows world,
especially in corporate environments that use MS Office
(and hence MS Outlook)

Expensive

Integrated into MS Active Directory

GUI administration tools are easier to learn for Windows
people

MS Outlook is a powerful and slick email program that will
work with Exchange, sendmail, or qmail. It does, however,
have a history of security vulnerabilities and some
organizations refuse to use it because of that.
POP3, IMAP, MAPI -1

Currently, the most popular protocols are

POP3 (Post Office Protocol, version 3)

IMAP (Internet Message Access Protocol)

MAPI (Messaging Application Programming Interface--
Microsoft Windows email interface)
POP3

POP3 is the oldest and most widely used. It was designed
to support offline mail processing.


Mail is delivered to a server and a user's computer runs
a mail client program to download any new mail

Once messages are delivered, they are generally
deleted from the mail server

This minimizes disk space requirements for mail server,
but ties the mail to a particular machine. If user goes to
another computer, he can't access his mail

POP3 has limited support for reading mail online (and
leaving the mail on the mail server)

Simpler protocol than IMAP makes it easier to
implement. More POP3 mail clients available
IMAP

IMAP

Developed at University of Washington

Primarily used to access mail and leave it on the mail
server. This allows users to access their mail from any
computer

Requires more disk space to store email messages

Can work in "offline" mode like POP3


Easy to manage multiple mailboxes

Supports tagging emails with flags like "read", "deleted",
"answered", etc.

×