General > Web Browser : Chrome
์ฒดํฌ
General > Workspace - Text file encoding : UTF-8
์ ํ
Java > Compiler - JDK Compliance[Compiler compliance level]
: ์ค์นํ JDK ๋ฒ์
์ ํ (๋๋ 11
)
Java > Installed JREs : Add
- Standard VM
- JRE home
> jdk ๊ฒฝ๋ก ์ถ๊ฐ
(๋๋ C:\Program Files\Java\jdk-11
) > ์ถ๊ฐํ ๊ฒฝ๋ก ์ ํํ๊ณ finish
Web > CSS Files, HTML Files, JSP Files : Encoding
- ISO 10646/Unicode(UTF-8)
์ ํ
์ค์ ์๋ฃ ํ ์ ์ฉํ๊ณ ๋ซ๊ธฐ!!
help
> Eclipse Marketplace
: mybatis ๊ฒ์ MyBatis 1.3.0
installSelect All
๋๋ฅด๊ณ Trust Selected
์ญ์ญ ์งํ...!java -jar lombok.jar
์คํFile > New > Maven Project
Group Id
(org.apache.maven.archetypes)Artifact Id
(maven-archetype-quickstart)๋๋ฉ์ธ๋ช (ํ์ฌ), ํ๋ก์ ํธ๋ช ?
์ฐธ๊ณ : https://byul91oh.tistory.com/304
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<!-- jdk ๋ฒ์ ์์ ํด์ฃผ๊ธฐ -->
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
</properties>
maven repository
์์ ํ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์์กด์ฑ ์ฃผ์
ํ๊ธฐ<dependencies>
<!-- ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ฃผ์
-->
</dependencies>
๋ง์ด๋ฐํฐ์ค XML ์ค์ ํ์ผ
์ ์์ฑํด๋ ์๊ด์์ผ๋, ๊ด๋ฆฌ๋ฅผ ์ ์ฉํ๊ฒ ํ๋ ์ฐจ์์์ ๋ฐ๋ก ์์ฑํด์ค๋ค.<!-- ์ฃผ์์ฌํญ : ๋ค์ ๊ณต๋ฐฑ์ด ๋ค์ด๊ฐ๋ฉด ์ค๋ฅ๋ฐ์!!!! -->
driver = oracle.jdbc.driver.OracleDriver
url = jdbc:oracle:thin:@localhost:1521:xe
user = DB์ ์ ์์ด๋
password = DB์ ์ ํจ์ค์๋
<properties resource="database.properties" />
mapUnderscoreToCamelCase
: ์ ํต์ ์ธ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์นผ๋ผ๋ช
ํํ์ธ A_COLUMN์ CamelCaseํํ์ ์๋ฐ ํ๋กํผํฐ๋ช
ํํ์ธ aColumn์ผ๋ก ์๋์ผ๋ก ๋งคํํ๋๋ก ํจ (๊ธฐ๋ณธ๊ฐ : false)
jdbcTypeForNull
: Oracle ์ฌ์ฉ์ Null ํ์ฉ์ปฌ๋ผ์ null๊ฐ์ด ๋ค์ด๊ฐ๋ ๊ฒฝ์ฐ ๋ถ์ ํฉํ ์ด ์ ํ ์ด๋ผ๋ ์๋ฌ ๋ฉ์ธ์ง ๋ฐ์. ์ด๋ฅผ ๋ง๊ธฐ ์ํ ์ค์ <settings>
<setting name="mapUnderscoreToCamelCase" value="true"/>
<setting name="jdbcTypeForNull" value="NULL"/>
</settings>
<!-- ํจํค์ง๋ด ๋ชจ๋ ์ธํฐํ์ด์ค๋ฅผ ๋ฑ๋ก -->
<mappers>
<package name="co.yedam.hello"/>
</mappers>
public class DataSource {
private static SqlSessionFactory sqlSessionFactory;
private DataSource() {}
public SqlSessionFactory getInstance() {
String resource = "mybatis-config.xml";
try {
InputStream inputStream = Resources.getResourceAsStream(resource);
sqlSessionFactory =
new SqlSessionFactoryBuilder().build(inputStream);
} catch (IOException e) {
e.printStackTrace();
}
return sqlSessionFactory;
}
}
๊ตฌํ์ฒด
๋ xml
ํ์ผ๋ก ์์ฑํด์ผํ๋ค.ServiceImpl
์์ ์ฐ๊ฒฐsession
๊ณผ mapper class
๋ก ์ฐ๊ฒฐ ํ์ง๋ง ์คํ๋ง์์๋ ๋ค๋ฅด๋ค // mapper์ service ์ฐ๊ฒฐ
private SqlSession sqlSession = DataSource.getInstance().openSession(true);
private MemberMapper map = sqlSession.getMapper(MemberMapper.class);
// {... ๋๋จธ์ง ๊ตฌํ ์ฝ๋ ...}
// service interface ์ mapper interface์ ๋ฉ์๋ ๋ช
์ ๋์ผํ๊ฒ ํ๋ ์ด์