上一篇咱們介紹《構建dubbo分佈式平臺-maven構建ant-parent項目》,框架使用maven進行構建,根據咱們的規劃,要將子項目所有構建出來,今天重點講解的是ant-config配置文件項目的構建過程。css
導語: 將ant-config項目獨立出來的目的是將全部的配置文件進行統一項目管理,其中包括:spring相關文件配置、mybatis相關文件配置、數據源相關文件配置、基礎環境文件配置(短信、消息、oss存儲、第三方登錄、郵件等)、redis或者ehcache緩存相關配置、log4j日誌文件相關配置、統一error異常配置、spring-shiro權限的相關配置、spring和redis緩存集成相關配置等。html
1. 建立ant-config子項目,繼承ant-parent項目,eclipse的建立過程我這邊省略了。pom.xml文件配置以下:java
<span style="font-size: 16px;"><?xml version="1.0"?> <project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>com.sml.sz</groupId> <artifactId>ant-project</artifactId> <version>1.0.0</version> </parent> <artifactId>ant-config</artifactId> <name>ant-config</name> <url>http://maven.apache.org</url> <packaging>jar</packaging> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> <build> <!-- maven 打包後的包名 --> <finalName>ant-config</finalName> <resources> <!-- 指定 src/main/resources下全部文件及文件夾爲資源文件 --> <resource> <directory>src/main/resources</directory> <targetPath>${project.build.directory}/classes</targetPath> <includes> <include>**/*</include> </includes> <filtering>true</filtering> </resource> <!-- 根據env部署環境值,把對應環境的配置文件拷貝到classes目錄 --> <resource> <directory>deployEnv/${env}</directory> <targetPath>${project.build.directory}/classes</targetPath> <filtering>true</filtering> </resource> </resources> </build> </project> </span>
2. 建立log4j.properties文件,配置以下:mysql
<span style="font-size: 16px;"># Output pattern : date [thread] priority category - message FATAL 0 ERROR 3 WARN 4 INFO 6 DEBUG 7 log4j.rootLogger=WARN, Console, RollingFile #Console log4j.appender.Console=org.apache.log4j.ConsoleAppender log4j.appender.Console.layout=org.apache.log4j.PatternLayout log4j.appender.Console.layout.ConversionPattern=%d %-5p [%c{5}] - %m%n #RollingFile log4j.appender.RollingFile=org.apache.log4j.DailyRollingFileAppender log4j.appender.RollingFile.File=/logs/ant/ant.log log4j.appender.RollingFile.layout=org.apache.log4j.PatternLayout log4j.appender.RollingFile.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n #log4j.logger.java.sql=DEBUG #Project defalult level log4j.logger.com.sml.sz=DEBUG log4j.logger.com.sml.sz.common.security.shiro=WARN log4j.logger.com.sml.sz.JedisUtils=WARN</span>
3. 建立ant.properties文件,內容以下:web
<span style="font-size: 16px;">#--------------Database sttings-------------- #mysql database setting jdbc.type=mysql jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://127.0.0.1:3306/ant-dubbo?useUnicode=true&characterEncoding=utf-8 jdbc.username=root jdbc.password=root #pool settings jdbc.pool.init=10 jdbc.pool.minIdle=30 jdbc.pool.maxActive=60 #--------------redis settings-------------- redis.keyPrefix=ant redis.host=127.0.0.1 redis.port=6379 #-------------- System settings -------------- #\u4ea7\u54c1\u4fe1\u606f\u8bbe\u7f6e logoName=ant productName=ant \u5206\u5E03\u5F0F\u4F01\u4E1A\u67B6\u6784 copyrightYear=2017 version=V1.0.0 #\u662f\u5426\u5141\u8bb8\u591a\u8d26\u53f7\u540c\u65f6\u767b\u5f55 user.multiAccountLogin=true #\u5206\u9875\u914d\u7f6e page.pageSize=10 #-------------- Framework settings -------------- #\u4f1a\u8bdd\u8d85\u65f6\uff0c \u5355\u4f4d\uff1a\u6beb\u79d2\uff0c 20m=1200000ms, 30m=1800000ms, 60m=3600000ms session.sessionTimeout=1800000 #\u4f1a\u8bdd\u6e05\u7406\u95f4\u9694\u65f6\u95f4\uff0c \u5355\u4f4d\uff1a\u6beb\u79d2\uff0c2m=120000ms\u3002 session.sessionTimeoutClean=120000 #\u89c6\u56fe\u6587\u4ef6\u5b58\u653e\u8def\u5f84 web.view.prefix=/WEB-INF/views/ web.view.suffix=.jsp web.maxUploadSize=10485760 #\u9759\u6001\u6587\u4ef6\u540e\u7f00 web.staticFile=.css,.js,.png,.jpg,.gif,.jpeg,.bmp,.ico,.swf,.psd,.htc,.htm,.html,.crx,.xpi,.exe,.ipa,.apk #--------------Email SMTP -------------- mail.host=smtp.163.com mail.port=25 mail.username=test@163.com mail.password=test mail.smtp.auth=true mail.smtp.timeout=30000 mail.default.from=test@163.com #-------------- JMS -------------- mq.brokerURL=failover\:(tcp\://127.0.0.1\:61616)?randomize\=false&initialReconnectDelay\=1000&maxReconnectDelay\=30000 mq.userName=ant mq.password=ant mq.pool.maxConnections=20 #queueName queueName.task=task_queue_1 </span>
歡迎你們跟我一塊兒學習《構建dubbo分佈式平臺》,但願你們持續關注後面的文章!redis