둘러보기 생략.
 

코드젠으로 생성한 템플레이트 구동시 insert 와 update가 되지 않네요.

sql로그로 보면 파라메터가 제대로 맵핑된 쿼리가 나가고 있는데요.

insert나 update가 되질 않습니다.

기존 카테고리템플릿은 잘되거든요.

코드젠으로 생성한 템플릿은 뭐가 달라서 인서트,업데이트 쿼리가 동작을 안하는지요.

에러메시지도 전혀 나질 않는것으로 보아 커밋이 안되는거 같기도 하고요.

혹시 커밋관련 옵션을 따로 수정을 해줘야하는지요.

트랜잭션 설정을 확인하여 주십시오.

SQL 로그를 통해 SQL 쿼리가 제대로 수행되고 있고,
기존 Category 서비스에 대한 insert, update는 잘된다면 Category 서비스의 메소드에 대해서 Transaction 설정이 되어있어서 DB Connection에 대한 Commit이 제대로 수행되었기 때문입니다.

확인해보시면, DataSource 서비스 설정(context-datasource.xml)에서 defaultAutoCommit이 false로
되어있을 것입니다. 그렇기 때문에 CodeGen.으로 생성한 신규 서비스에 대해서 insert나 update 쿼리 수행 시
기본적으로는 commit이 안됩니다.

현재 Transaction 설정을 적용시켜서 SQL 쿼리 수행 시 commit을 시키고 있습니다.

1. 사용하신 템플릿 프로젝트가 JDK1.4 용이라면,
anyframe-template-services\src\main\resources\spring\query\context-transaction.xml 혹은
anyframe-template-services\src\main\resources\spring\hibernate\context-transaction.xml 파일을 열고
아래의 transaction aop expression을 확인해주십시오.

<aop:config>
<aop:pointcut id="requiredTx" expression="execution(* com.sds.emp..*ServiceImpl.*(..))"/>
<aop:advisor advice-ref="txAdvice" order="2" pointcut-ref="requiredTx" />
</aop:config>

말씀하신 Category 서비스는 com.sds.emp 패키지를 가지고 서비스 구현 클래스명이 CategoryServiceImpl로 되어
있기 때문에 transaction 설정이 적용된 것입니다.
CodeGen.으로 생성한 신규 서비스의 경우 위 expression 조건이 맞지가 않기 때문에 trasaction 설정이
적용되지 않았을 것으로 예상됩니다.

2. 사용하신 템플릿 프로젝트가 JDK1.5 용이라면,
@Transactional Annotation을 통해 Transaction 설정을 하고 있으므로 CodeGen.으로 생성한 신규 서비스에 대해서
설정을 추가해주시면 됩니다.
설정방법에 대한 자세한 내용은 Anyframe Core Transaction 설정 방법을 참고하시면 됩니다.