搭建SSM项目的一些配置文件
1.pom.xml
导入各种依赖,比如Mybatis依赖,jdbc依赖,Mysql,pageHelper,几乎所有的依赖都可以上https://mvnrepository.com(maven仓库)中寻找
1 <project xmlns="http://maven.apache.org/POM/4.0.0" 2 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 3 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4 <modelVersion>4.0.0</modelVersion> 5 <groupId>com.oracle.mvc</groupId> 6 <artifactId>mvc322</artifactId> 7 <version>0.0.1-SNAPSHOT</version> 8 <packaging>war</packaging> 9 <dependencies> 10 <dependency> 11 <groupId>javax.servlet</groupId> 12 <artifactId>jsp-api</artifactId> 13 <version>2.0</version> 14 </dependency> 15 <dependency> 16 <groupId>javax.servlet</groupId> 17 <artifactId>jstl</artifactId> 18 <version>1.2</version> 19 </dependency> 20 <dependency> 21 <groupId>org.springframework</groupId> 22 <artifactId>spring-webmvc</artifactId> 23 <version>5.2.4.RELEASE</version> 24 </dependency> 25 <dependency> 26 <groupId>org.apache.poi</groupId> 27 <artifactId>poi</artifactId> 28 <version>4.1.0</version> 29 </dependency> 30 31 <dependency> 32 <groupId>org.apache.poi</groupId> 33 <artifactId>poi-ooxml-schemas</artifactId> 34 <version>4.1.0</version> 35 </dependency> 36 <dependency> 37 <groupId>org.apache.poi</groupId> 38 <artifactId>poi-ooxml</artifactId> 39 <version>4.1.0</version> 40 </dependency> 41 <dependency> 42 <groupId>com.fasterxml.jackson.core</groupId> 43 <artifactId>jackson-databind</artifactId> 44 <version>2.10.2</version> 45 </dependency> 46 <dependency> 47 <groupId>commons-fileupload</groupId> 48 <artifactId>commons-fileupload</artifactId> 49 <version>1.4</version> 50 </dependency> 51 52 <dependency> 53 <groupId>org.mybatis</groupId> 54 <artifactId>mybatis</artifactId> 55 <version>3.5.4</version> 56 </dependency> 57 <dependency> 58 <groupId>org.mybatis</groupId> 59 <artifactId>mybatis-spring</artifactId> 60 <version>2.0.1</version> 61 </dependency> 62 <dependency> 63 <groupId>org.springframework</groupId> 64 <artifactId>spring-jdbc</artifactId> 65 <version>5.2.4.RELEASE</version> 66 </dependency> 67 <dependency> 68 <groupId>junit</groupId> 69 <artifactId>junit</artifactId> 70 <version>4.12</version> 71 </dependency> 72 <dependency> 73 <groupId>mysql</groupId> 74 <artifactId>mysql-connector-java</artifactId> 75 <version>5.1.48</version> 76 </dependency> 77 <dependency> 78 <groupId>com.mchange</groupId> 79 <artifactId>c3p0</artifactId> 80 <version>0.9.5.5</version> 81 </dependency> 82 <dependency> 83 <groupId>log4j</groupId> 84 <artifactId>log4j</artifactId> 85 <version>1.2.14</version> 86 </dependency> 87 <dependency> 88 <groupId>org.mybatis.generator</groupId> 89 <artifactId>mybatis-generator-core</artifactId> 90 <version>1.3.7</version> 91 </dependency> 92 <!-- 分页 --> 93 <dependency> 94 <groupId>com.github.pagehelper</groupId> 95 <artifactId>pagehelper</artifactId> 96 <version>5.1.11</version> 97 </dependency> 98 99 </dependencies> 100 </project>
2.springMVC.xml
这个配置文件主要是配置视图解析器和配置Controller扫描包
1 <?xml version="1.0" encoding="UTF-8"?> 2 <beans xmlns="http://www.springframework.org/schema/beans" 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 4 xmlns:context="http://www.springframework.org/schema/context" 5 xmlns:mvc="http://www.springframework.org/schema/mvc" 6 xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd 7 http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd 8 http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.3.xsd"> 9 10 <!-- 扫描包,扫描所有的@Controller --> 11 <context:component-scan 12 base-package="com.oracle.handler"> 13 </context:component-scan> 14 <!-- 默认的SpringMVC 的注解驱动 --> 15 <mvc:annotation-driven enable-matrix-variables="true"></mvc:annotation-driven> 16 <!-- 矩阵变量默认为false,如果要使用需要配置为true --> 17 18 <!-- 视图解析器 --> 19 <bean id="jspViewResolver" 20 class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 21 <property name="viewClass" 22 value="org.springframework.web.servlet.view.JstlView" /> 23 <!-- 前缀 --> 24 <property name="prefix" value="/" /> 25 <!-- 后缀 --> 26 <property name="suffix" value=".jsp" /> 27 </bean> 28 29 <!-- 文件上传 --> 30 <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> 31 <property name="defaultEncoding" value="UTF-8"></property> 32 <property name="maxUploadSize" value="4096000"></property> 33 <property name="maxUploadSizePerFile" value="1024000"></property> 34 </bean> 35 36 37 38 <!-- 静态资源放行 --> 39 <mvc:resources location="/images/" mapping="/images/**"></mvc:resources> 40 <mvc:resources location="/js/" mapping="/js/**"></mvc:resources> 41 <mvc:resources location="/css/" mapping="/css/**"></mvc:resources> 42 43 44 <!-- 配置一个拦截器 --> 45 <mvc:interceptors> 46 <mvc:interceptor> 47 <mvc:mapping path="/**"/><!-- 拦截所有 --> 48 <mvc:exclude-mapping path="/book/**"/><!-- book目录下不被拦截 --> 49 <bean id="timerInterceptor" class="com.oracle.interceptor.HandlerIntercepter"> 50 </bean> 51 </mvc:interceptor> 52 </mvc:interceptors> 53 </beans>
3.springContext.xml
1 <?xml version="1.0" encoding="UTF-8"?> 2 <beans xmlns="http://www.springframework.org/schema/beans" 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 4 xmlns:context="http://www.springframework.org/schema/context" 5 xmlns:mybatis-spring="http://mybatis.org/schema/mybatis-spring" 6 xmlns:tx="http://www.springframework.org/schema/tx" 7 xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd 8 http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd 9 http://mybatis.org/schema/mybatis-spring http://mybatis.org/schema/mybatis-spring-1.2.xsd 10 http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.3.xsd"> 11 <!-- 扫描service --> 12 <context:component-scan 13 base-package="com.oracle.service"></context:component-scan> 14 15 <bean id="dataSource" 16 class="com.mchange.v2.c3p0.ComboPooledDataSource"> 17 <property name="user" value="xxx"></property> 18 <property name="password" value="xxx"></property> 19 <property name="driverClass" value="com.mysql.jdbc.Driver"></property> 20 <property name="jdbcUrl" value="jdbc:mysql://localhost:3306/xxx"></property> 21 </bean> 22 <!-- 配置mybatis的configuraion.xml配置文件 --> 23 <bean id="sqlSessionFactory" 24 class="org.mybatis.spring.SqlSessionFactoryBean"> 25 <property name="dataSource" ref="dataSource"></property> 26 <property name="mapperLocations" 27 value="classpath*:com/oracle/mapper/*.xml"></property> 28 <!-- <property name="typeAliasesPackage" value="com.oracle.vo"></property> --> 29 <property name="configLocation" value="classpath:Mybatis.xml"></property> 30 </bean> 31 32 <!-- 事物管理器 --> 33 <bean id="transactionManager" 34 class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> 35 <property name="dataSource" ref="dataSource"></property> 36 </bean> 37 <tx:annotation-driven /> 38 39 <mybatis-spring:scan base-package="com.oracle.dao" /> 40 41 </beans>
4.Mybatis.xml
1 <?xml version="1.0" encoding="UTF-8" ?> 2 <!DOCTYPE configuration 3 PUBLIC "-//mybatis.org//DTD Config 3.0//EN" 4 "http://mybatis.org/dtd/mybatis-3-config.dtd"> 5 <configuration> 6 <settings> 7 <setting name="logImpl" value="LOG4J"/> 8 </settings> 9 <!-- 实现分页 --> 10 <plugins> 11 <plugin interceptor="com.github.pagehelper.PageInterceptor"> 12 <!-- property属性可以不用配置,新版本能自动识别底层数据库 --> 13 <property name="helperDialect" value="mysql"/> 14 </plugin> 15 </plugins> 16 </configuration>
5.Configuration.xml
用于生成mapper.xml文件,整个项目只会使用到一次
1 <?xml version="1.0" encoding="UTF-8"?> 2 <!DOCTYPE generatorConfiguration 3 PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" 4 "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"> 5 6 <generatorConfiguration> 7 <context id="testTables" targetRuntime="MyBatis3"> 8 <commentGenerator> 9 <!-- 是否去除自动生成的注释 true:是 : false:否 --> 10 <property name="suppressAllComments" value="true" /> 11 </commentGenerator> 12 13 <!--数据库连接的信息:驱动类、连接地址、用户名、密码 --> 14 <jdbcConnection driverClass="com.mysql.jdbc.Driver" 15 connectionURL="jdbc:mysql://localhost:3306/cmp" userId="root" 16 password="root"> 17 </jdbcConnection> 18 19 <!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer,为 true时把JDBC DECIMAL 20 和 NUMERIC 类型解析为java.math.BigDecimal --> 21 <javaTypeResolver> 22 <property name="forceBigDecimals" value="false" /> 23 </javaTypeResolver> 24 25 <!-- targetProject:生成PO类的位置 --> 26 <javaModelGenerator 27 targetPackage="com.oracle.vo" targetProject=".srcmainjava"> 28 <!-- enableSubPackages:是否让schema作为包的后缀 --> 29 <property name="enableSubPackages" value="false" /> 30 <!-- 从数据库返回的值被清理前后的空格 --> 31 <property name="trimStrings" value="true" /> 32 </javaModelGenerator> 33 34 35 <!-- targetProject:mapper映射文件生成的位置 --> 36 <sqlMapGenerator 37 targetPackage="com.oracle.mapper" 38 targetProject=".srcmain esources"> 39 <!-- enableSubPackages:是否让schema作为包的后缀 --> 40 <property name="enableSubPackages" value="false" /> 41 </sqlMapGenerator> 42 43 <!-- targetPackage:mapper接口生成的位置 --> 44 <javaClientGenerator type="XMLMAPPER" 45 targetPackage="com.oracle.dao" targetProject=".srcmainjava"> 46 <!-- enableSubPackages:是否让schema作为包的后缀 --> 47 <property name="enableSubPackages" value="false" /> 48 </javaClientGenerator> 49 50 <!-- 指定数据库表 --> 51 <!-- <table schema="" tableName="biz_parts" domainObjectName="Parts"></table> --> 52 53 54 <table schema="" tableName="sys_xxx" domainObjectName="xxx"></table> 55 56 57 <!-- 有些表的字段需要指定java类型 <table schema="" tableName=""> <columnOverride column="" 58 javaType="" /> </table> --> 59 </context> 60 </generatorConfiguration>
6.log4j.properties(非必须)
1 2 ### 设置Logger输出级别和输出目的地 ### 3 4 log4j.rootLogger=DEBUG,stdout,logfile 5 6 7 8 ### 把日志信息输出到控制台 ### 9 10 log4j.appender.stdout=org.apache.log4j.ConsoleAppender 11 12 #log4j.appender.stdout.Target=System.err 13 14 log4j.appender.stdout.layout=org.apache.log4j.SimpleLayout 15 16 17 ### 把日志信息输出到文件:jbit.log ### 18 19 log4j.appender.logfile=org.apache.log4j.FileAppender 20 21 log4j.appender.logfile.File=jbit.log 22 23 log4j.appender.logfile.layout=org.apache.log4j.PatternLayout 24 25 log4j.appender.logfile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %F %p %m%n 26 27 28 29 ###显示SQL语句部分 30 31 log4j.logger.com.ibatis=DEBUG 32 33 log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=DEBUG 34 35 log4j.logger.com.ibatis.common.jdbc.ScriptRunner=DEBUG 36 37 log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=DEBUG 38 39 log4j.logger.java.sql.Connection=DEBUG 40 41 log4j.logger.java.sql.Statement=DEBUG 42 43 log4j.logger.java.sql.PreparedStatement=DEBUG
总结:
主要的配置有视图解析器,Controller扫描器,service扫描器,数据库的连接信息