design patterns : facade
This commit is contained in:
BIN
design-pattern/gof/lib/javax.mail-api-1.6.2.jar
Normal file
BIN
design-pattern/gof/lib/javax.mail-api-1.6.2.jar
Normal file
Binary file not shown.
20
design-pattern/gof/src/facade/after/Client.java
Normal file
20
design-pattern/gof/src/facade/after/Client.java
Normal file
@@ -0,0 +1,20 @@
|
||||
package facade.after;
|
||||
|
||||
public class Client {
|
||||
|
||||
public static void main(String[] args) {
|
||||
EmailSettings emailSettings = new EmailSettings();
|
||||
emailSettings.setHost("127.0.0.1");
|
||||
|
||||
EmailSender emailSender = new EmailSender(emailSettings);
|
||||
|
||||
EmailMessage emailMessage = new EmailMessage();
|
||||
emailMessage.setFrom("kim");
|
||||
emailMessage.setTo("lee");
|
||||
emailMessage.setSubject("오징어게임");
|
||||
emailMessage.setText("밖은 더 지옥이더라고...");
|
||||
|
||||
emailSender.sendEmail(emailMessage);
|
||||
}
|
||||
|
||||
}
|
||||
41
design-pattern/gof/src/facade/after/EmailMessage.java
Normal file
41
design-pattern/gof/src/facade/after/EmailMessage.java
Normal file
@@ -0,0 +1,41 @@
|
||||
package facade.after;
|
||||
|
||||
public class EmailMessage {
|
||||
|
||||
private String from;
|
||||
private String to;
|
||||
private String subject;
|
||||
private String text;
|
||||
|
||||
public String getFrom() {
|
||||
return from;
|
||||
}
|
||||
|
||||
public void setFrom(String from) {
|
||||
this.from = from;
|
||||
}
|
||||
|
||||
public String getTo() {
|
||||
return to;
|
||||
}
|
||||
|
||||
public void setTo(String to) {
|
||||
this.to = to;
|
||||
}
|
||||
|
||||
public String getSubject() {
|
||||
return subject;
|
||||
}
|
||||
|
||||
public void setSubject(String subject) {
|
||||
this.subject = subject;
|
||||
}
|
||||
|
||||
public String getText() {
|
||||
return text;
|
||||
}
|
||||
|
||||
public void setText(String text) {
|
||||
this.text = text;
|
||||
}
|
||||
}
|
||||
37
design-pattern/gof/src/facade/after/EmailSender.java
Normal file
37
design-pattern/gof/src/facade/after/EmailSender.java
Normal file
@@ -0,0 +1,37 @@
|
||||
package facade.after;
|
||||
|
||||
import javax.mail.Message;
|
||||
import javax.mail.MessagingException;
|
||||
import javax.mail.Session;
|
||||
import javax.mail.Transport;
|
||||
import javax.mail.internet.InternetAddress;
|
||||
import javax.mail.internet.MimeMessage;
|
||||
import java.util.Properties;
|
||||
|
||||
public class EmailSender {
|
||||
|
||||
private EmailSettings emailSettings;
|
||||
|
||||
public EmailSender(EmailSettings emailSettings) {
|
||||
this.emailSettings = emailSettings;
|
||||
}
|
||||
|
||||
public void sendEmail(EmailMessage emailMessage) {
|
||||
Properties properties = System.getProperties();
|
||||
properties.setProperty("mail.smtp.host", emailSettings.getHost());
|
||||
|
||||
Session session = Session.getDefaultInstance(properties);
|
||||
|
||||
try {
|
||||
MimeMessage message = new MimeMessage(session);
|
||||
message.setFrom(new InternetAddress(emailMessage.getFrom()));
|
||||
message.addRecipient(Message.RecipientType.TO, new InternetAddress(emailMessage.getTo()));
|
||||
message.setSubject(emailMessage.getSubject());
|
||||
message.setText(emailMessage.getText());
|
||||
|
||||
Transport.send(message);
|
||||
} catch (MessagingException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
14
design-pattern/gof/src/facade/after/EmailSettings.java
Normal file
14
design-pattern/gof/src/facade/after/EmailSettings.java
Normal file
@@ -0,0 +1,14 @@
|
||||
package facade.after;
|
||||
|
||||
public class EmailSettings {
|
||||
|
||||
private String host;
|
||||
|
||||
public String getHost() {
|
||||
return host;
|
||||
}
|
||||
|
||||
public void setHost(String host) {
|
||||
this.host = host;
|
||||
}
|
||||
}
|
||||
35
design-pattern/gof/src/facade/before/Client.java
Normal file
35
design-pattern/gof/src/facade/before/Client.java
Normal file
@@ -0,0 +1,35 @@
|
||||
package facade.before;
|
||||
|
||||
import javax.mail.Message;
|
||||
import javax.mail.MessagingException;
|
||||
import javax.mail.Session;
|
||||
import javax.mail.Transport;
|
||||
import javax.mail.internet.InternetAddress;
|
||||
import javax.mail.internet.MimeMessage;
|
||||
import java.util.Properties;
|
||||
|
||||
public class Client {
|
||||
|
||||
public static void main(String[] args) {
|
||||
String to = "keesun@whiteship.me";
|
||||
String from = "whiteship@whiteship.me";
|
||||
String host = "127.0.0.1";
|
||||
|
||||
Properties properties = System.getProperties();
|
||||
properties.setProperty("mail.smtp.host", host);
|
||||
|
||||
Session session = Session.getDefaultInstance(properties);
|
||||
|
||||
try {
|
||||
MimeMessage message = new MimeMessage(session);
|
||||
message.setFrom(new InternetAddress(from));
|
||||
message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
|
||||
message.setSubject("Test Mail from Java Program");
|
||||
message.setText("message");
|
||||
|
||||
Transport.send(message);
|
||||
} catch (MessagingException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user