分布式开发系统架构(二)

框架整合思路:

一、Mapper层:整合mybatis和spring

需要的jar包:

1、mybatis的jar包

2、Mysql数据库驱动

3、数据库连接池

4、Mybatis和spring的整合包。

5、Spring的jar包

配置文件:

1、mybatis的配置文件:SqlMapConfig.xml

2、Spring的配置文件:applicationContext-dao.xml

数据源

1、数据库连接池

2、配置SqlSessionFactory(mybatis和spring整合包中的)

3、配置mapper文件的扫描器。


二、Service层:

使用的jar包:spring的jar包。

配置文件:applicationContext-service.xml

配置一个包扫描器,扫描所有带@Service注解的类。

事务配置:

配置文件:applicationContext-trans.xml

1、配置一个事务管理器

2、配置tx

3、配置切面

三、表现层

使用springmvc,需要使用springmvc和spring的jar包。

配置文件:springmvc.xml

1、配置注解驱动

2、配置一个视图解析器。

3、包扫描器,@Controller注解

 Web.xml

1、配置springmvc的前端控制器

2、Spring容器初始化的listener。

部分配置文件:

分布式开发系统架构(二)_第1张图片

1/web.xml文件配置:



	yc-manager

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

	
	
		log4jConfigLocation
		classpath:properties/log4j.properties
	
	
		org.springframework.web.util.Log4jConfigListener
	

	
	
		CharacterEncodingFilter
		org.springframework.web.filter.CharacterEncodingFilter
		
			encoding
			utf-8
		
	
	
		CharacterEncodingFilter
		/*
	

	
	
		yc-manager
		org.springframework.web.servlet.DispatcherServlet
		
		
			contextConfigLocation
			classpath:spring/springmvc.xml
		
		1
	
	
		yc-manager
		/
	

	
	
		webAppRootKey
		manager.root
	

	
		index.html
		index.htm
		index.jsp
		default.html
		default.htm
		default.jsp
	

	
	
		403
		/WEB-INF/jsp/403.jsp
	
	
		404
		/WEB-INF/jsp/404.jsp
	
	
		500
		/WEB-INF/jsp/500.jsp
	
	
		java.lang.Throwable
		/WEB-INF/jsp/error.jsp
	

2/SqlMapConfig.xml文件配置




	
		
		
		
		
		
		
		
		
		
		
		
	

	
		
	

	
		
			
			
		
	

3/db.properties配置文件:

#**************************Oracle**********************************
jdbc.driver=oracle.jdbc.driver.OracleDriver
jdbc.url=jdbc:oracle:thin:@10.22.1.245:1521:orcl
jdbc.username=zsyc
jdbc.password=zsyc
filters=stat
#最大并发连接数 
maxActive=20
#初始化连接数量 
initialSize=1
#配置获取连接等待超时的时间 
maxWait=60000
#最小空闲连接数
minIdle=10
#配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 
timeBetweenEvictionRunsMillis=60000
#配置一个连接在池中最小生存的时间,单位是毫秒 
minEvictableIdleTimeMillis=300000
#用来检测连接是否有效的sql,要求是一个查询语句。
validationQuery=SELECT 'x'
testWhileIdle=true
testOnBorrow=false
testOnReturn=false
#是否缓存preparedStatement,也就是PSCache。PSCache对支持游标的数据库性能提升巨大,比如说oracle。在mysql下建议关闭。
poolPreparedStatements=false
#打开PSCache,并且指定每个连接上PSCache的大小 
maxOpenPreparedStatements=20

4/log4j.properties

#off/fatal/error/warn/info/debug/all
log4j.debug=false
log4j.rootLogger=info,stdout,log,errorlog

# Console
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 [%t] %-5p [%c] - %m%n

### Log ###
log4j.appender.log = org.apache.log4j.DailyRollingFileAppender
log4j.appender.log.File = ../logs/yc-manager-web.log
log4j.appender.log.Append = true
log4j.appender.log.Threshold = DEBUG
log4j.appender.log.DatePattern='.'yyyy-MM-dd
log4j.appender.log.layout = org.apache.log4j.PatternLayout
log4j.appender.log.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %p ] [ %C{1}.java :%L(%M)]  %m%n

### Error ###
log4j.appender.errorlog = org.apache.log4j.DailyRollingFileAppender
log4j.appender.errorlog.File = ../logs/yc-manager-web.error.log
log4j.appender.errorlog.Append = true
log4j.appender.errorlog.Threshold = ERROR
log4j.appender.errorlog.DatePattern='.'yyyy-MM-dd
log4j.appender.errorlog.layout = org.apache.log4j.PatternLayout
log4j.appender.errorlog.layout.ConversionPattern =%-d{yyyy-MM-dd HH:mm:ss} [ %p ] [ %C{1}.java :%L(%M)] %m%n

#Spring logging configuration
log4j.category.org.springframework = warn

5/applicationContext-dao.xml



	
	
	
	
	
	
		
		
		
		
				
				
				
		
				
		
		
		
		
		
		
		
		
	
	
	
	
	
		
		
		
		
	
	
	
		
		
	
	
	

6/applicationContext-service.xml




	
	

7/applicationContext-trans.xml




	
	
	
		
		
	
	
	
		
			
			
			
			
			
			
			
			
			
			
		
	
	
	
		
	

8/springmvc.xml



	
	
	
	
		
		
	
	
	
	
	
	
	
	
		
		
		
		
	





你可能感兴趣的:(框架设计)