spring mvc 액 션 에 트 랜 잭 션 추가
사실 로 딩 순서 가 문제 예요.
우선 spring MVC 를 사용 한 항목 은 action bean 을 설정 할 필요 가 없습니다. spring mvc 프로필 을 통 해 스 캔 주 해 를 불 러 옵 니 다.
spring 트 랜 잭 션 프로필 과 컨 텍스트 는 모두 org. spring from work. web. context. context. context Loader Listener 를 통 해 불 러 옵 니 다.
spring MVC 의 action 은 org. spring from work. web. servlet. dispatcherServlet 을 통 해 불 러 옵 니 다.
이렇게 해서 우선 순위 문제 가 생 겼 어 요. 웹 은 ContextLoader Listener 를 먼저 시작 한 후 Dispatcher Servlet 을 시작 합 니 다.
ContextLoader Listener 를 불 러 올 때 action 은 용기 에 없 기 때문에 현재 AOP 를 사용 하여 트 랜 잭 션 을 추가 하거나 주 해 를 스 캔 하 는 것 은 소 용이 없습니다.
그러면 해결 방법 은 Dispatcher Servlet 에서 spring - MVC 프로필 을 불 러 온 다음 에 AOP 트 랜 잭 션 스 캔 과 주석 트 랜 잭 션 스 캔 을 한 번 더 하면 됩 니 다.
<tx:annotation-driven transaction-manager="transactionManager"/>
<aop:config>
<aop:advisor advice-ref="transactionAdvice" pointcut="execution(* com.yang.web.*.action.*.*(..))"/>
</aop:config>
왜 Action 에 사 무 를 넣 어야 하 는 지 에 대해 서.
spring in action 이라는 책 에서 도 말 했 듯 이 service dao action 은 전형 적 인 조합 이지 만 필요 한 것 은 아니다. 간단 한 첨삭 검사 시스템 에 대해 그렇게 다 층 으로 나 눌 필요 가 없다.예 를 들 어 간단 한 저장 기능 은 new 의 실체 맵 매개 변수 에 대해 spring jdbc Template 를 사용 하여 한 줄 의 코드 를 저장 하 는 것 이 아니 라 이렇게 간단 한 기능 이 필요 합 니 다. 네 가지 종 류 를 더 지어 야 한다. spring 컨 텍스트 에 설정 해 야 합 니 다. 안 피곤 해요? 간단 한 시스템 에 있어 서 이것 은 바로 자신 을 위해 불편 함 을 찾 는 것 이다. 분명히 민 가 를 지 었 는데 굳이 고 층 건물 터 를 닦 으 려 고 했 어 요.
또 다른 블 로그 도 그 랬 어 요.
http://elf8848.iteye.com/blog/875830
5. 부자 문맥 (WebapplicationContext) 방법 2 급진 형
방안 2. 급진 형:
자바 세계 의 '인터페이스 프로 그래 밍' 사상 은 정확 하지만 주요 업 무 를 추가 하고 수정 하 는 시스템 에서 Dao 층 인터페이스, Dao 층 실현 류, Service 층 인터페이스, Service 층 실현 류, Action 부류, Action.여기에 O (vopobo) 와 jsp 페이지 가 많다.작은 기능 7, 8 종 류 를 쓰 면 쓴다.개발 자 는 내 가 개인 적 인 일 을 맡 고 PHP, ASP 와 밥그릇 을 빼 앗 고 싶 지만 나 는 자바 프로그래머 라 고 말 했다.가장 좋 은 결 과 는 큰 프로젝트 를 잘 할 수 있 고 작은 프로젝트 를 빨리 할 수 있다 는 것 이다.그래서 '급진 형' 방안 이 나 타 났 다. - 인터페이스 가 없고 서비스 층 이 없 으 며 O (vopobo) 가 많 지 않다.그것 은 서비스 층 의 업무 가 어느 층 에 통제 되 지 않 습 니까?올 라 갈 수 밖 에 없 는 액 션 층.
본 고 는 이것 이 정확 한 사상 인지 아 닌 지 를 말 하고 싶 지 않다. 내 가 말 하고 싶 은 것 은 Spring 이 네가 이렇게 하 는 것 을 제한 하지 않 는 다 는 것 이다.
자바 – 큰 프로젝트 를 잘 할 수 있 습 니 다 - 전통 적 인 방식 으로 하고 규칙 적 으로 하 며 확장 이 잘 되 고 유지 가 잘 됩 니 다.
자바 – 작은 프로젝트 는 빨리 할 수 있 습 니 다 – 급진 적 인 방식 으로 하면 일주일 동안 하나의 버 전 을 낼 수 있 습 니 다. 먼저 온라인 으로 시장 (사용자) 의 피드백 을 받 은 다음 에 개선 하고 피드백 할 수 있 습 니 다. 시간 은 바로 생명 (원가) 입 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.