요즘 하이버네이트3 프로그래밍(최범균 저)를 보고 있는데, 뭔소린지 잘 이해가 안가서 쉬어갈 겸-_-; 넷빈즈에서 스프링이랑 하이버네이트 연동하는 거 정리해서 올립니다-_-;
환경 : GlassFishV3 + SpringFramework 2.5 + Hibernate 3.2.5 + MySQL5.0 + Netbeans6.5
접근성을 높이기 위해(?) 소녀시대를 예제로 작성해봅시다. 멤버이름을 입력하면 멤버의 나이를 알려주는 웹애플리케이션을 만들어봅시다-_-;
Database
[code]CREATE TABLE `sosi` (
`idx` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(45) NOT NULL,
`age` int(10) unsigned NOT NULL,
PRIMARY KEY (`idx`)
) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;
INSERT INTO `sosi` (`idx`,`name`,`age`) VALUES
(1,'윤아',20),
(2,'수영',20),
(3,'효연',21),
(4,'유리',21),
(5,'태연',21),
(6,'제시카',21),
(7,'티파니',21),
(8,'써니',21),
(9,'서현',19);
[/code]
New Project -> Java Web -> Web Application -> Project Name : SosiAge -> Glass Fish V3으로 하구요 -> Spring Web MVC 2.5랑 Hibernate 3.2.5체크합니다.
Hibernate에서 DB를 설정해야하는데, New Database Connection해서 Name을 MySQL로 맞추고, 설정에 맞게 입력한 뒤, 추가한 것으로 선택한 뒤 Finish를 누른 뒤 완료합니다.
한글문제로 인한 web.xml파일에 아래 코드를 추가합니다.
web.xml
[code]<filter>
<filter-name>Request Encoding</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>Request Encoding</filter-name>
<servlet-name>dispatcher</servlet-name>
</filter-mapping>[/code]
hibernate를 사용하기 위한 필수작업인 session bean을 생성해야합니다.
applicationContext.xml
[code]<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="configLocation" value="classpath:hibernate.cfg.xml" />
</bean>[/code]
설정을 여기에 다 적고, datasource를 session에 di를 해도 상관없고, hibernate.cfg.xml파일에 설정해도 다 되더군요. 우선 기본적으로 hibernate.cfg.xml파일을 직접 만들어주니 configLocation설정해서 해봅시다.
하이버네이트 설정파일에서 SQL문을 직접볼 수 있는 옵션을 추가합시다.
Source Packages -> default package -> hibernate.cfg.xml파일을 열어봅니다.
design모드에서 Configuration Properties에서 add한 뒤, hibernate.show_sql값 true로 추가합니다. 쿼리를 직접보도록...-_-;
이제 뭐 셋팅이 끝났네요. 셋팅 끝나면 뭐 그냥 쓰기만 하면 됩니다-_-;
다음 장에서......
환경 : GlassFishV3 + SpringFramework 2.5 + Hibernate 3.2.5 + MySQL5.0 + Netbeans6.5
접근성을 높이기 위해(?) 소녀시대를 예제로 작성해봅시다. 멤버이름을 입력하면 멤버의 나이를 알려주는 웹애플리케이션을 만들어봅시다-_-;
Database
[code]CREATE TABLE `sosi` (
`idx` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(45) NOT NULL,
`age` int(10) unsigned NOT NULL,
PRIMARY KEY (`idx`)
) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;
INSERT INTO `sosi` (`idx`,`name`,`age`) VALUES
(1,'윤아',20),
(2,'수영',20),
(3,'효연',21),
(4,'유리',21),
(5,'태연',21),
(6,'제시카',21),
(7,'티파니',21),
(8,'써니',21),
(9,'서현',19);
[/code]
New Project -> Java Web -> Web Application -> Project Name : SosiAge -> Glass Fish V3으로 하구요 -> Spring Web MVC 2.5랑 Hibernate 3.2.5체크합니다.
Hibernate에서 DB를 설정해야하는데, New Database Connection해서 Name을 MySQL로 맞추고, 설정에 맞게 입력한 뒤, 추가한 것으로 선택한 뒤 Finish를 누른 뒤 완료합니다.
한글문제로 인한 web.xml파일에 아래 코드를 추가합니다.
web.xml
[code]<filter>
<filter-name>Request Encoding</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>Request Encoding</filter-name>
<servlet-name>dispatcher</servlet-name>
</filter-mapping>[/code]
hibernate를 사용하기 위한 필수작업인 session bean을 생성해야합니다.
applicationContext.xml
[code]<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="configLocation" value="classpath:hibernate.cfg.xml" />
</bean>[/code]
설정을 여기에 다 적고, datasource를 session에 di를 해도 상관없고, hibernate.cfg.xml파일에 설정해도 다 되더군요. 우선 기본적으로 hibernate.cfg.xml파일을 직접 만들어주니 configLocation설정해서 해봅시다.
하이버네이트 설정파일에서 SQL문을 직접볼 수 있는 옵션을 추가합시다.
Source Packages -> default package -> hibernate.cfg.xml파일을 열어봅니다.
design모드에서 Configuration Properties에서 add한 뒤, hibernate.show_sql값 true로 추가합니다. 쿼리를 직접보도록...-_-;
이제 뭐 셋팅이 끝났네요. 셋팅 끝나면 뭐 그냥 쓰기만 하면 됩니다-_-;
다음 장에서......