일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- Linux
- Java
- spring3.0
- 미국드라마
- php
- WebService
- db
- 효민이
- Vista
- 판매
- 육아
- OS
- 책
- 독서
- 중고
- 이승철
- PSP
- Swing
- Java5
- Programing
- Programming
- WebLogic
- 부동산
- Spring
- Ant
- Eclipse
- Mac
- ThinkFree
- 요리
- 행복이
- Today
- Total
목록Spring (2)
Bitaholic
토비 스프링 책 스터디를 하다 트랜잭션 부분을 하는 데 도대체가 Auto Commit을 끄고 롤백을 시도해도 롤백이 되지 않았다 디비를 살펴보니 Commit 또는 Rollback 하기 전에 디비에 적용한 것들이 바로 디비에 적용이 되는 것이였다. 즉 Transaction 처리가 안된다는 건데 구글링 해보니 문제는 테이블의 Engine type이였다. 내가 만든 테이블은 MyISAM이였는데 트랜잭션은 InnoDB로 해야 한단다 (참고 : http://dev.mysql.com/doc/refman/5.0/en/connector-j-usagenotes-j2ee.html 의 20.3.5.2.4.2. Transactional JDBC Access) 테이블의 Engine 타입을 변경하는 것은 아래와 같이 하면 된다...
HQL 의 limit Hibernate의 HQL 문법은 sql의 limit 가 지원하지 않는다. limit를 써 쿼리 결과 갯수를 제한 하고 싶으면, Query 클래스의 setMaxResults(int max) 메소드를 이용하면 된다. 결과를 5개 이하로 제한하고 싶으면 아래와 같이 하면된다. Query query = session.createQuery("from BookTable order by book_id asc"); query.setMaxResults(5); 또한 특정 행부터 시작하고 싶으면 (14행 부터 5개) Query query = session.createQuery("from BookTable order by book_id asc"); query.setFirstResult(14); quer..