該配置是基於spring4.0的html
applicationContext.xml
Spring框架的核心配置文件java
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <!-- 將TestDaoImpl託管給Spring,建立一個名爲myBean的DAO實例 --> <bean id="myBean" class="dao.TestDaoImpl"/> <!-- 將TestDIServiceImpl類託管給Spring,由Spring建立對象,建立一個id名的對象 --> <bean id="testDIService" class="service.TestDIServiceImpl"> <!-- 調用TestDIServiceImpl --> <property name="testDao" ref="myBean"/> </bean> </beans>
aspectJ框架的xml配置文件 applicationContext .xmlmysql
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd"> <!-- 定義目標對象 --> <bean id="testDao" class="dynamic.jdk.TestDaoImpl"/> <!-- 定義切面 --> <bean id="myAspect" class="aspectj.xml.MyAspect"/> <!-- AOP配置 --> <aop:config> <!-- 配置切面 --> <aop:aspect ref="myAspect"> <!-- 配置切入點 --> <aop:pointcut expression="execution(* dynamic.jdk.*.*(..))" id="myPointCut"/> <aop:before method="before" pointcut-ref="myPointCut"/> <aop:after-returning method="afterReturning" pointcut-ref="myPointCut"/> <aop:around method="around" pointcut-ref="myPointCut"/> <aop:after-throwing method="except" pointcut-ref="myPointCut"/> <aop:after method="after" pointcut-ref="myPointCut"/> </aop:aspect> </aop:config> </beans>
springmvc-servlet.xml
控制層配置文件git
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <bean name="/login" class="controller.LoginController"/> <bean name="/register" class="controller.RegisterController"/> <!-- <context:component-scan base-package="com.example.controller"></context:component-scan> <mvc:annotation-driven> <mvc:message-converters> <bean class="org.springframework.http.converter.StringHttpMessageConverter"> <property name="supportedMediaTypes"> <list> <value>text/plain;charset=UTF-8</value> <value>text/html;charset=UTF-8</value> </list> </property> </bean> <!--經過jackson將Responsebody註解返回的對象自動序列化成json對象--> <bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"> <property name="supportedMediaTypes"> <list> <value>application/json;charset=UTF-8</value> </list> </property> </bean> </mvc:message-converters> </mvc:annotation-driven> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/jsp/" /> <property name="suffix" value=".jsp"></property> --> </beans>
轉發器DispatcherServlet中的web.xml
做爲底層支撐的Servlet版本至少要在3.1以上web
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" id="WebApp_ID" version="4.0"> <display-name>SpringMVC</display-name> <servlet> <servlet-name>springmvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>springmvc</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> </web-app>
UserMapper.xml
映射spring
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!-- namespace表示映射xml路徑 --> <mapper namespace="com.mybatis.mapper.UserMapper"> <!-- 根據uid查詢一個用戶信息 --> <select id="selectUserById" parameterType="Integer" resultType="com.mybatis.po.MyUser"> select * from user where uid = #{uid} </select> <select id="selectAllUser" resultType="com.mybatis.po.MyUser"> select * from user </select> <!-- 插入新用戶 --> <insert id="addUser" parameterType="com.mybatis.po.MyUser"> insert into user (uname,usex) values(#{uname},#{usex}) </insert> <!-- 修改一個用戶 --> <update id="updateUser" parameterType="com.mybatis.po.MyUser"> update user set uname = #{uname}, usex = #{usex} where uid = #{uid} </update> <!-- 刪除一個用戶 --> <delete id="deleteUser" parameterType="Integer"> delete from user where uid = #{uid} </delete> </mapper>
mybatis-config.xml
sql
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <environments default="development"> <environment id="development"> <transactionManager type="JDBC" /> <dataSource type="POOLED"> <property name="driver" value="com.mysql.jdbc.Driver" /> <property name="url" value="jdbc:mysql://localhost:3306/springtest?characterEncoding=utf8" /> <property name="username" value="root" /> <property name="password" value="root" /> </dataSource> </environment> </environments> <!-- 控制全局的mappers文件 --> <mappers> <!-- UserMapper路徑 --> <mapper resource="com/mybatis/mapper/UserMapper.xml" /> </mappers> </configuration>
generatorConfig.xml
數據庫
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"> <generatorConfiguration> <!-- 具體配置內容 --> <properties resource="datasource.properties" /> <!-- 由驅動包半自動化生成代碼 --> <classPathEntry location="E:/MyProjects/mavenrepo/mysql-connector-java-5.1.38.jar"/> <context id="MysqlContext" targetRuntime="MyBatis3Simple" defaultModelType="flat"> <property name="beginningDelimiter" value="`" /> <property name="endingDelimiter" value="`" /> <!-- 設置生成代碼爲utf-8 --> <property name="javaFileEncoding" value="UTF-8" /> <!-- 生成 JavaBean 對象繼承 Serializable 類 --> <plugin type="org.mybatis.generator.plugins.SerializablePlugin" /> <!-- 增長mybatis通用mapper 插件 --> <!-- <plugin type="tk.mybatis.mapper.generator.MapperPlugin"> <property name="mappers" value="com.mmall.util.MyMapper" /> </plugin> --> <!-- 去除全部註釋 --> <commentGenerator> <property name="suppressAllComments" value="true"/> </commentGenerator> <!-- jdbc鏈接數據庫 --> <jdbcConnection driverClass="${db.driverClassName}" connectionURL="${db.url}" userId="${db.username}" password="${db.password}"> </jdbcConnection> <!-- 生成模型(MyBatis實體類)的包名和位置(相對/絕對位置,推薦相對位置) --> <javaModelGenerator targetPackage="com.mmall.pojo" targetProject="./src/main/java"> <property name="enableSubPackage" value="false" /> <!-- 是否生成構造方法 --> <property name="constructorBased" value="true" /> <property name="trimStrings" value="true" /> <!-- 是否設置生成的Model對象不可改變,即不生成setter方法 --> <property name="immutable" value="false" /> </javaModelGenerator> <!-- 生成映射文件(MyBatis的SQL語句的xml文件)包名和位置 --> <sqlMapGenerator targetPackage="mappers" targetProject="./src/main/resources" > <!-- 生成DAO的包名和位置(配置mapper對應的Java映射類) --> <property name="enableSubPackage" value="false" /> </sqlMapGenerator> <javaClientGenerator type="XMLMAPPER" targetPackage="com.mmall.dao" targetProject="./src/main/java" /> <!-- 逆向生成表 --> <!-- 生成表1 --> <table tableName="mmall_user" domainObjectName="User" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"> </table> <table tableName="mmall_product" domainObjectName="Product" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"> <columnOverride column="detail" jdbcType="VARCHAR" /> <columnOverride column="detail" jdbcType="VARCHAR" /> </table> </context> </generatorConfiguration>
mybatis-generator的核心依賴
express
<!-- mybatis-generator begin --> <!-- 保證生成的mybatis文件正常運行 --> <mybatis.version>3.2.5</mybatis.version> <!-- tk.mybatis 自動生成dao,pojo,xml映射文件 --> <tk.mybatis.version>3.4.6</tk.mybatis.version> <jdbc.driver.version>5.1.38</jdbc.driver.version> <!-- 自動下載的依賴 --> <persistence.version>1.0</persistence.version> <!-- 序列化插件須要 --> <mybatis.generator.version>1.3.5</mybatis.generator.version> <mapper.plugin>tk.mybatis.mapper.generator.MapperPlugin</mapper.plugin> <mapper.Mapper>tk.mybatis.mapper.common.Mapper</mapper.Mapper> <!-- mybatis-generator end --> <!-- mybatis-generator begin --> <!-- Begin: mybatis依賴 --> <!-- Begin: 數據庫依賴包 --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>${mybatis.version}</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>${jdbc.driver.version}</version> <scope>runtime</scope> </dependency> <!-- End: 數據庫依賴包 --> <!-- End: mybatis依賴 --> <!-- 通用tk.mybatis依賴 --> <dependency> <groupId>tk.mybatis</groupId> <artifactId>mapper</artifactId> <version>${tk.mybatis.version}</version> </dependency> <!-- mybatis-generator end -->
//MyMapper通用接口
/*apache
*
*
*
*
*/
package com.mmall.util;
import tk.mybatis.mapper.common.Mapper;
import tk.mybatis.mapper.common.MySqlMapper;
/**
*
*/
public interface MyMapper<T> extends Mapper<T>, MySqlMapper<T> {
//TODO //FIXME 特別注意,該接口不能被掃描到,不然會出錯
}
mybatis-generator的maven手動命令所須要的插件
<!-- mybatis-generate插件,maven必須 -->
<plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>${mybatis.generator.version}</version> <configuration> <configurationFile>generatorConfig.xml</configurationFile> <verbose>true</verbose> <overwrite>false</overwrite> </configuration> <dependencies> <!-- mybatis-generator begin --> <!-- Begin: mybatis依賴 --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>${mybatis.version}</version> </dependency> <!-- End: mybatis依賴 --> <!-- 通用tk.mybatis依賴 --> <dependency> <groupId>tk.mybatis</groupId> <artifactId>mapper</artifactId> <version>${tk.mybatis.version}</version> </dependency> <!-- Begin: 數據庫依賴包 --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>${jdbc.driver.version}</version> <scope>runtime</scope> </dependency> <!-- End: 數據庫依賴包 --> <!-- mybatis-generator --> <dependency> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-core</artifactId> <version>${mybatis.generator.version}</version> </dependency> <!-- mybatis-generator end --> </dependencies> </plugin>
log4j.properties
# Global logging configuration 錯誤信息打印 log4j.rootLogger=ERROR, stdout # MyBatis logging configuration... 對應的包打印追蹤 log4j.logger.com.octupus = TRACE # Console output... 打印格式 log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n
db.properties
jdbc.jdbcUrl=jdbc:mysql://localhost:3306/springtest jdbc.driverClass=com.mysql.jdbc.Driver?useUnicode=true&characterEncoding=utf8 jdbc.user=root jdbc.password=root
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation="http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd"> <!-- 自動掃描 --> <context:component-scan base-package="com.ssmdemo.dao"/> <context:component-scan base-package="com.ssmdemo.service"/> <!-- 配置數據源 --> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/gitchat_ssm_demo_db"/> <!-- 改成你的地址便可 --> <property name="username" value="root"/> <property name="password" value="root"/> </bean> <!-- 配置mybatis的sqlSessionFactory --> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource"/> <!-- 自動掃描mappers.xml文件 --> <property name="mapperLocations" value="classpath:mappers/*.xml"></property> <!-- mybatis配置文件 --> <property name="configLocation" value="classpath:mybatis-config.xml"></property> </bean> <!-- DAO接口所在包名,Spring會自動查找其下的類 --> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage" value="com.ssmdemo.dao"/> <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property> </bean> <!-- (事務管理)transaction manager, use JtaTransactionManager for global tx --> <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource" ref="dataSource"/> </bean> <!-- 配置事務通知屬性 --> <tx:advice id="txAdvice" transaction-manager="transactionManager"> <!-- 定義事務傳播屬性 --> <tx:attributes> <tx:method name="insert*" propagation="REQUIRED"/> <tx:method name="update*" propagation="REQUIRED"/> <tx:method name="upd*" propagation="REQUIRED"/> <tx:method name="edit*" propagation="REQUIRED"/> <tx:method name="save*" propagation="REQUIRED"/> <tx:method name="add*" propagation="REQUIRED"/> <tx:method name="new*" propagation="REQUIRED"/> <tx:method name="set*" propagation="REQUIRED"/> <tx:method name="remove*" propagation="REQUIRED"/> <tx:method name="delete*" propagation="REQUIRED"/> <tx:method name="del*" propagation="REQUIRED"/> <tx:method name="change*" propagation="REQUIRED"/> <tx:method name="check*" propagation="REQUIRED"/> <tx:method name="get*" propagation="REQUIRED" read-only="true"/> <tx:method name="search*" propagation="REQUIRED" read-only="true"/> <tx:method name="find*" propagation="REQUIRED" read-only="true"/> <tx:method name="load*" propagation="REQUIRED" read-only="true"/> <tx:method name="*" propagation="REQUIRED" read-only="true"/> </tx:attributes> </tx:advice> <!-- 配置事務切面 --> <aop:config> <aop:pointcut id="serviceOperation" expression="(execution(* com.ssmdemo.service.*.*(..)))"/> <aop:advisor advice-ref="txAdvice" pointcut-ref="serviceOperation"/> </aop:config> </beans>
# Global logging configuration 錯誤信息打印 log4j.rootLogger=ERROR, stdout # MyBatis logging configuration... 對應的包打印追蹤 log4j.logger.com.ssmdemo = TRACE # Console output... 打印格式 log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<typeAliases> <package name="com.ssmdemo.entity"/> </typeAliases>
</configuration>
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <!-- 使用註解的包,包括子集 --> <context:component-scan base-package="com.ssmdemo.controller"/> <!-- 視圖解析器 --> <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/"/> <property name="suffix" value=".jsp"></property> </bean> </beans> <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"> <generatorConfiguration> <!-- <classPathEntry location="C:\path\mysqldrivername"/> --> <!-- 具體配置內容 --> <!-- <properties resource="application.properties" /> --> <context id="MysqlContext" targetRuntime="MyBatis3Simple" defaultModelType="flat"> <property name="beginningDelimiter" value="`" /> <property name="endingDelimiter" value="`" /> <!-- 設置生成代碼爲utf-8 --> <property name="javaFileEncoding" value="UTF-8" /> <!-- 生成 JavaBean 對象繼承 Serializable 類 --> <plugin type="org.mybatis.generator.plugins.SerializablePlugin" /> <!-- 增長mybatis通用mapper 插件 --> <plugin type="tk.mybatis.mapper.generator.MapperPlugin"> <property name="mappers" value="com.ssmdemo.utils.MyMapper" /> </plugin> <!-- 去除全部註釋 --> <!-- <commentGenerator> <property name="suppressAllComments" value="true" /> </commentGenerator> --> <!-- jdbc鏈接數據庫 --> <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/gitchat_ssm_demo_db?characterEncoding=utf8" userId="root" password="root"> </jdbcConnection> <!-- 生成模型(MyBatis實體類)的包名和位置(相對/絕對位置,推薦相對位置) --> <javaModelGenerator targetPackage="com.ssmdemo.entity" targetProject="csdn_ssmdemo"> <property name="trimStrings" value="true" /> </javaModelGenerator> <!-- 生成映射文件(MyBatis的SQL語句的xml文件)包名和位置 --> <sqlMapGenerator targetPackage="mapper" targetProject="csdn_ssmdemo" /> <!-- 生成DAO的包名和位置(配置mapper對應的Java映射類) --> <javaClientGenerator type="XMLMAPPER" targetPackage="com.ssmdemo.dao" targetProject="csdn_ssmdemo" /> <!-- 逆向生成表 --> <!-- 生成表1 --> <table tableName="tb_class_four" domainObjectName="Description" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"> </table> </context> </generatorConfiguration>
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" id="WebApp_ID" version="4.0"> <display-name>ssmdemo</display-name> <!--Start 歡迎頁--> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <!--End 歡迎頁--> <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:applicationContext.xml</param-value> </context-param> <!--Start spring監聽器 --> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <!--End Start spring監聽器 --> <!--Start 編碼過濾器 解決亂碼問題--> <filter> <filter-name>encodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> </filter> <filter-mapping> <filter-name>encodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <!--End 編碼過濾器 解決亂碼問題--> <!--Start spring mvc servlet--> <servlet> <servlet-name>springMVC</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring-mvc.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <!--End spring mvc servlet--> <!--Start servlet-mapping --> <servlet-mapping> <servlet-name>springMVC</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> <!--End servlet-mapping -->
</web-app>
<?xml version="1.0" encoding="UTF-8"?><configuration debug="true" scan="true" scanPeriod="1 seconds"> <contextName>logback</contextName> <!--定義參數,後面能夠經過${app.name}使用--> <property name="app.name" value="logback_test"/> <!--ConsoleAppender 用於在屏幕上輸出日誌--> <appender name="stdout" class="ch.qos.logback.core.ConsoleAppender"> <!--定義了一個過濾器,在LEVEL之下的日誌輸出不會被打印出來--> <!--這裏定義了DEBUG,也就是控制檯不會輸出比ERROR級別小的日誌--> <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>DEBUG</level> </filter> <!-- encoder 默認配置爲PatternLayoutEncoder --> <!--定義控制檯輸出格式--> <encoder> <pattern>%d [%thread] %-5level %logger{36} [%file : %line] - %msg%n</pattern> </encoder> </appender> <appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender"> <!--定義日誌輸出的路徑--> <!--這裏的scheduler.manager.server.home 沒有在上面的配置中設定,因此會使用java啓動時配置的值--> <!--好比經過 java -Dscheduler.manager.server.home=/path/to XXXX 配置該屬性--> <file>${scheduler.manager.server.home}/logs/${app.name}.log</file> <!--定義日誌滾動的策略--> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!--定義文件滾動時的文件名的格式--> <fileNamePattern>${scheduler.manager.server.home}/logs/${app.name}.%d{yyyy-MM-dd.HH}.log.gz </fileNamePattern> <!--60天的時間週期,日誌量最大20GB--> <maxHistory>60</maxHistory> <!-- 該屬性在 1.1.6版本後 纔開始支持--> <totalSizeCap>20GB</totalSizeCap> </rollingPolicy> <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> <!--每一個日誌文件最大100MB--> <maxFileSize>100MB</maxFileSize> </triggeringPolicy> <!--定義輸出格式--> <encoder> <pattern>%d [%thread] %-5level %logger{36} [%file : %line] - %msg%n</pattern> </encoder> </appender> <!--root是默認的logger 這裏設定輸出級別是debug--> <root level="trace"> <!--定義了兩個appender,日誌會經過往這兩個appender裏面寫--> <appender-ref ref="stdout"/> <appender-ref ref="file"/> </root> <!--對於類路徑以 com.example.logback 開頭的Logger,輸出級別設置爲warn,而且只輸出到控制檯--> <!--這個logger沒有指定appender,它會繼承root節點中定義的那些appender--> <logger name="com.example.logback" level="warn"/> <!--經過 LoggerFactory.getLogger("mytest") 能夠獲取到這個logger--> <!--因爲這個logger自動繼承了root的appender,root中已經有stdout的appender了,本身這邊又引入了stdout的appender--> <!--若是沒有設置 additivity="false" ,就會致使一條日誌在控制檯輸出兩次的狀況--> <!--additivity表示要不要使用rootLogger配置的appender進行輸出--> <logger name="mytest" level="info" additivity="false"> <appender-ref ref="stdout"/> </logger> <!--因爲設置了 additivity="false" ,因此輸出時不會使用rootLogger的appender--> <!--可是這個logger自己又沒有配置appender,因此使用這個logger輸出日誌的話就不會輸出到任何地方--> <logger name="mytest2" level="info" additivity="false"/></configuration>
<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <!-- ssm框架 --> <spring.version>4.2.4.RELEASE</spring.version> <java.version>1.8</java.version> <jdbc.driver.version>5.1.38</jdbc.driver.version> <aspectj.version>1.7.4</aspectj.version> <javax.servlet-api.version>3.1.0</javax.servlet-api.version> <jsp-api.version>2.2</jsp-api.version> <jstl.version>1.2</jstl.version> <mybatis.version>3.2.5</mybatis.version> <mybatis-spring.version>1.2.2</mybatis-spring.version> <maven.test.skip>true</maven.test.skip> <!-- tk.mybatis 自動生成dao,pojo,xml映射文件 --> <tk.mybatis.version>3.4.6</tk.mybatis.version> <persistence.version>1.0</persistence.version> <jdbc.driver.version>5.1.38</jdbc.driver.version> <mybatis.generator.version>1.3.5</mybatis.generator.version> <mapper.plugin>tk.mybatis.mapper.generator.MapperPlugin</mapper.plugin> <mapper.Mapper>tk.mybatis.mapper.common.Mapper</mapper.Mapper> </properties> <dependencies> <!-- SSM框架begin --> <!-- Begin: spring依賴 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context-support</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-tx</artifactId> <version>${spring.version}</version> </dependency> <!-- End: spring依賴 --> <!-- Begin: springmvc依賴 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>${spring.version}</version> </dependency> <!-- End: springmvc依賴 --> <!-- Begin: mybatis依賴 --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>${mybatis.version}</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>${mybatis-spring.version}</version> </dependency> <!-- End: mybatis依賴 --> <!-- Begin: 數據庫依賴包 --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>${jdbc.driver.version}</version> <scope>runtime</scope> </dependency> <!-- End: 數據庫依賴包 --> <!-- Begin: aspectj相關jar包 --> <dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjrt</artifactId> <version>${aspectj.version}</version> </dependency> <dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> <version>${aspectj.version}</version> </dependency> <!-- End: aspectj相關jar包 --> <!-- Begin: Servlet相關依賴包 --> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>${javax.servlet-api.version}</version> <scope>provided</scope> </dependency> <dependency> <groupId>javax.servlet.jsp</groupId> <artifactId>jsp-api</artifactId> <version>${jsp-api.version}</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>${jstl.version}</version> </dependency> <!-- End: Servlet相關依賴包 --> <!--文件上傳--> <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.1</version> </dependency> <!-- SSM框架 end --> <!-- Begin: mybatis-generator --> <dependency> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-core</artifactId> <version>${mybatis.generator.version}</version> </dependency> <!-- 通用tk.mybatis依賴 --> <dependency> <groupId>tk.mybatis</groupId> <artifactId>mapper</artifactId> <version>${tk.mybatis.version}</version> </dependency> <!-- End: mybatis-generator --> </dependencies>
## mybatis-generatror插件
<build> <finalName>mmall</finalName> <!--配置mybatis插件--> <plugins> <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>${mybatis.generator.version}</version> <configuration> <configurationFile>src/main/resources/mybatis-generator.xml</configurationFile> <verbose>true</verbose> <overwrite>true</overwrite> </configuration> <dependencies> <!-- mybatis-generator begin --> <!-- Begin: mybatis依賴 --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>${mybatis.version}</version> </dependency> <!-- End: mybatis依賴 --> <!-- 通用tk.mybatis依賴 --> <dependency> <groupId>tk.mybatis</groupId> <artifactId>mapper</artifactId> <version>${tk.mybatis.version}</version> </dependency> <!-- Begin: 數據庫依賴包 --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>${jdbc.driver.version}</version> <scope>runtime</scope> </dependency> <!-- End: 數據庫依賴包 --> <!-- mybatis-generator --> <dependency> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-core</artifactId> <version>${mybatis.generator.version}</version> </dependency> <!-- mybatis-generator end --> </dependencies> </plugin> <!-- geelynote maven的核心插件之-complier插件默認只支持編譯Java 1.4,所以須要加上支持高版本jre的配置,在pom.xml裏面加上 增長編譯插件 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <!--不加可能出錯--> <version>3.8.0</version> <configuration> <source>1.8</source> <target>1.8</target> <encoding>UTF-8</encoding> <!-- 很是重要,用於導入支付寶的本地依賴,不配置的話上線會報異常 --> <compilerArguments> <extdirs>${project.basedir}/src/main/webapp/WEB-INF/lib</extdirs> </compilerArguments> </configuration> </plugin> </plugins>