spring + struts + hibenate 프로젝트 설정

9056 단어 자바java-web
applicationContext.xml



	
	
	
	
	

	
	
		
		
		
		
			
				
				
				
				
				
				
				
				
				
				
				
				
				
				
				
				
				
				
				
				
			
		
	


	
	
		
	
	



hibernate.cfg.xml

hibernate-configuration PUBLIC
        "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
        "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">





	
	 
		org.hibernate.dialect.MySQL5InnoDBDialect
	
	

	
	true
	

	
	
	
	
	
	
	
	





jdbc.properties
    jdbcUrl = jdbc:mysql:///itcastoa0720
    driverClass         = com.mysql.jdbc.Driver
    user = root
    password         = root
    
log4j.properties
### direct log messages to stdout ###
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
### direct messages to file hibernate.log ###
#log4j.appender.file=org.apache.log4j.FileAppender
#log4j.appender.file.File=hibernate.log
#log4j.appender.file.layout=org.apache.log4j.PatternLayout
#log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
### set log levels - for more verbose logging change 'info' to 'debug' ###
log4j.rootLogger=warn, stdout
#log4j.logger.org.hibernate=info
#log4j.logger.org.hibernate=debug
log4j.logger.cn.itcast.oa=debug
struts.xml

struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">


	
    
    
    
    
    
	
    
    	
    		
    		
    		
    		
    		
    			
    			
    		
    	
		
		
			/WEB-INF/jsp/userAction/loginUI.jsp
			/noPrivilegeError.jsp
		

    	
		
		
		
			/test.jsp
		

		
		
		
			/WEB-INF/jsp/roleAction/list.jsp
			/WEB-INF/jsp/roleAction/saveUI.jsp
			/WEB-INF/jsp/roleAction/setPrivilegeUI.jsp
			role_list
		


		
		
		
			/WEB-INF/jsp/departmentAction/list.jsp
			/WEB-INF/jsp/departmentAction/saveUI.jsp
			department_list?parentId=${parentId}
		
		
		
		
		
			/WEB-INF/jsp/userAction/list.jsp
			/WEB-INF/jsp/userAction/saveUI.jsp
			user_list
			
			/WEB-INF/jsp/userAction/logout.jsp
			/index.jsp
		


		
		
			/WEB-INF/jsp/homeAction/{1}.jsp
		

		
		
		
		
			/WEB-INF/jsp/forumManageAction/list.jsp
			/WEB-INF/jsp/forumManageAction/saveUI.jsp
			forumManage_list
		

	
		
		
			/WEB-INF/jsp/forumAction/list.jsp
			/WEB-INF/jsp/forumAction/show.jsp
		
		
		
			/WEB-INF/jsp/topicAction/show.jsp
			/WEB-INF/jsp/topicAction/addUI.jsp
			topic_show?id=${id}
		
		
		
			/WEB-INF/jsp/replyAction/addUI.jsp
			topic_show?id=${topicId}
		


    

    


web.xml




	
	
		
		org.springframework.web.context.ContextLoaderListener
	
	
		contextConfigLocation
		classpath:applicationContext*.xml
	

	
	
		cn.itcast.oa.util.InitListener
	


	
	
		
		OpenSessionInViewFilter
		org.springframework.orm.hibernate3.support.OpenSessionInViewFilter
	
	
		OpenSessionInViewFilter
		*.action
	


	
	
		struts2
		
		org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
	
	
		struts2
		/*
	



	
		index.jsp
	

    Spring 은 가장 골 치 아 픈 문제 중 하나 인 Hibernate 의 Session 의 닫 기와 열 림 문 제 를 해결 해 준다.Hibernate 는 관련 대상, 속성 에 대한 로드 지연 을 허용 하지만 로드 지연 작업 이 같은 Hibernate Session 범위 내 에서 이 루어 질 수 있 도록 해 야 합 니 다.Service 층 이 로 딩 지연 기능 을 사용 한 영역 대상 을 웹 층 에 되 돌려 주면 로 딩 지연 이 필요 한 데이터 에 웹 층 이 접근 할 때 로 딩 영역 대상 의 Hibernate Session 이 종료 되 어 로 딩 지연 데이터 에 대한 접근 이 이상 합 니 다.Spring 이 제공 하 는 OpenSession InView Filter 필 터 는 이 문 제 를 잘 해결 해 주 었 습 니 다.OpenSessionInViewFilter 의 주요 기능 은 모든 요청 과정 을 Hibernate Session 에 연결 시 키 는 것 입 니 다. 최초의 업무 가 완료 되 었 더 라 도 웹 층 에서 로드 지연 작업 을 할 수 있 습 니 다.OpenSsionInViewFilter 필 터 는 Hibernate Session 을 요청 스 레 드 에 연결 합 니 다. Spring 의 사무 관리자 에 의 해 자동 으로 탐 지 됩 니 다.따라서 OpenSessionInViewFilter 는 서비스 층 에서 HibernateTransactionManager 나 JtaTransactionManager 를 사용 하여 사무 관 리 를 하 는 환경 에 적용 되 며, 사무 가 아 닌 읽 기 전용 데이터 작업 에 도 사용 할 수 있 습 니 다.

좋은 웹페이지 즐겨찾기