Open leeyuunsung opened 2 years ago
public static void main(String[] args) throws ClassNotFoundException {
Class.forName ("org.h2.Driver");
try (Connection conn = DriverManager.getConnection ("jdbc:h2:mem:~/test", "sa","")) {
String sql = "CREATE TABLE ACCOUNT " +
"(id INTEGER not NULL, " +
" email VARCHAR(255), " +
" password VARCHAR(255), " +
" PRIMARY KEY ( id ))";
Statement statement = conn.createStatement();
statement.execute(sql);
PreparedStatement statement1 = conn.prepareStatement(sql);
ResultSet resultSet = statement.executeQuery(sql);
} catch (SQLException e) {
throw new RuntimeException(e);
}
}
org.h2.Driver
: H2 드라이버를 등록해서 사용하면 H2 를, MySQL 사용을 위해선 MySQL 드라이버를 등록하는 식Connection
, DriverManager
등 추상화된 인터페이스 자체는 어떤 DB 를 쓰더라도 변경되지 않음public class Slf4jExample {
private static Logger logger = LoggerFactory.getLogger(Slf4jExample.class);
public static void main(String[] args) {
logger.info("hello logger");
}
}
public static void main(String[] args) {
MailSender mailSender = new JavaMailSenderImpl();
PlatformTransactionManager platformTransactionManager = new JdbcTransactionManager();
}
브릿지 패턴 1부 - 패턴 소개
브릿지 패턴 2부 - 패턴 적용하기
Before
아리
라는 캐릭터의 스킨이 추가될 때 마다Champion
인터페이스를 상속받고, 유사한 구조를 계속 생성하여 구현을 해주게 된다After
DefaultChampion
을 두고, 변경의 여지가 있는Skin
을 인터페이스로 분리해 내서DefaultChampion
의 필드로 주입받도록 함DefaultChampion
을 구현하는 구현체아리
는 생성시 주입된Skin
을 상위에 전달하여 생성