SSM搭建需要的基础配置

ssm搭建学习:https://blog.youkuaiyun.com/zhshulin/article/details/37956105

1.pom文件

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>com.xxxx.spl.demo</groupId>
  <artifactId>platform-web-demo</artifactId>
  <version>0.0.1-RELEASE</version>
  <packaging>jar</packaging>

  <name>platform-web-demo</name>
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
	  <!-- 文件拷贝时的编码 -->  
      <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>  
      <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>  
      <!-- 编译时的编码 -->  
      <maven.compiler.encoding>UTF-8</maven.compiler.encoding> 
       
    <!-- <properties>用于定义全局变量,在POM中通过${property_name}的形式引用变量的值 -->
	  <spring.version>4.2.6.RELEASE</spring.version>
	  <cxf.version>3.1.6</cxf.version>
	  <mybatis.version>3.4.6</mybatis.version>
	  <!-- servlet-api -->
	  <servlet.version>3.1.0</servlet.version>
	  <!-- json转换器 -->
	  <jackson.version>2.7.4</jackson.version>
	  <!-- log4j日志文件管理包版本 -->
		<slf4j.version>1.8.0-beta2</slf4j.version>
		<log4j.version>1.2.17</log4j.version>
	  
  </properties>
  <dependencies>
  		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.11</version>
			<!-- 表示开发的时候引入,发布的时候不会加载此包 -->
			<scope>test</scope>
		</dependency>
  <!-- spring 核心包 -->
	  <dependency>
		    <groupId>org.springframework</groupId>
		    <artifactId>spring-context</artifactId>
		    <version>${spring.version}</version>
		</dependency>
		<dependency>
		    <groupId>org.springframework</groupId>
		    <artifactId>spring-context-support</artifactId>
		    <version>${spring.version}</version>
		</dependency>
	    <dependency>
	        <groupId>org.springframework</groupId>
	        <artifactId>spring-core</artifactId>
	        <version>${spring.version}</version>
	    </dependency>
	    <dependency>
	        <groupId>org.springframework</groupId>
	        <artifactId>spring-beans</artifactId>
	        <version>${spring.version}</version>
	    </dependency>
	    <dependency>
	        <groupId>org.springframework</groupId>
	        <artifactId>spring-web</artifactId>
	        <version>${spring.version}</version>
	    </dependency>
	    <dependency>
	        <groupId>org.springframework</groupId>
	        <artifactId>spring-webmvc</artifactId>
	        <version>${spring.version}</version>
	    </dependency>
	    <dependency>
	        <groupId>org.springframework</groupId>
	        <artifactId>spring-aop</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>
	    <dependency>
	        <groupId>org.springframework</groupId>
	        <artifactId>spring-orm</artifactId>
	        <version>${spring.version}</version>
	    </dependency>
	    <dependency>
	        <groupId>org.springframework</groupId>
	        <artifactId>spring-context-support</artifactId>
	        <version>${spring.version}</version>
	    </dependency>
	    <dependency>
	        <groupId>org.springframework</groupId>
	        <artifactId>spring-expression</artifactId>
	        <version>${spring.version}</version>
	    </dependency>
	    <dependency>
	        <groupId>org.springframework</groupId>
	        <artifactId>spring-aspects</artifactId>
	        <version>${spring.version}</version>
	    </dependency>
	    <dependency>
	        <groupId>org.springframework</groupId>
	        <artifactId>spring-oxm</artifactId>
	        <version>${spring.version}</version>
	    </dependency>
	    <dependency>
	        <groupId>org.springframework</groupId>
	        <artifactId>spring-test</artifactId>
	        <version>${spring.version}</version>
	    </dependency>
	    
	<!-- mybatis核心包 -->
		<dependency>
			<groupId>org.mybatis</groupId>
			<artifactId>mybatis</artifactId>
			<version>${mybatis.version}</version>
		</dependency>
		
		<dependency>
		    <groupId>org.mybatis</groupId>
		    <artifactId>mybatis-spring</artifactId>
		    <version>1.3.2</version>
		</dependency>
	<!--mybatis-generator插件工具生成bean、dao、mapper  -->
	<dependency>
	    <groupId>org.mybatis.generator</groupId>
	    <artifactId>mybatis-generator-core</artifactId>
	    <version>1.3.7</version>
	</dependency>	
	 <!-- 导入Mysql数据库链接jar包 -->
		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<version>5.1.47</version>
		</dependency>
	
	<!--druid数据库连接池  -->	
 	<dependency>
	    <groupId>com.alibaba</groupId>
	    <artifactId>druid</artifactId>
	    <version>1.1.10</version>
	</dependency>  

    <!-- servlet-api -->
	<dependency>
	    <groupId>javax.servlet</groupId>
	    <artifactId>javax.servlet-api</artifactId>
	    <version>${servlet.version}</version>
	</dependency>

 	<!-- Spring MVC 对象转换json 转换器 -->
  	<dependency>
	    <groupId>com.fasterxml.jackson.core</groupId>
	    <artifactId>jackson-core</artifactId>
	    <version>${jackson.version}</version>
    </dependency>
    <dependency>
	    <groupId>com.fasterxml.jackson.core</groupId>
	    <artifactId>jackson-databind</artifactId>
	    <version>${jackson.version}</version>
    </dependency>
	<!-- 日志文件管理包 -->
		<!-- log start -->
		<dependency>
			<groupId>log4j</groupId>
			<artifactId>log4j</artifactId>
			<version>${log4j.version}</version>
		</dependency>
		<!-- 格式化对象,方便输出日志 -->
		<dependency>
			<groupId>com.alibaba</groupId>
			<artifactId>fastjson</artifactId>
			<version>1.1.41</version>
		</dependency>
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-api</artifactId>
			<version>${slf4j.version}</version>
		</dependency>
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-log4j12</artifactId>
			<version>${slf4j.version}</version>
		</dependency>
		<!-- log end -->
	 
	</dependencies>
</project>

2.jdbc.properties

jdbc_driverClass=com.mysql.jdbc.Driver
jdbc_url=jdbc:mysql://127.0.0.1:3306/test?useSSL=false
jdbc_username=root
jdbc_password=root

3.log4j.properties

#\u5B9A\u4E49LOG\u8F93\u51FA\u7EA7\u522B
log4j.rootLogger=INFO,Console,File
#\u5B9A\u4E49\u65E5\u5FD7\u8F93\u51FA\u76EE\u7684\u5730\u4E3A\u63A7\u5236\u53F0
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.Target=System.out
#\u53EF\u4EE5\u7075\u6D3B\u5730\u6307\u5B9A\u65E5\u5FD7\u8F93\u51FA\u683C\u5F0F\uFF0C\u4E0B\u9762\u4E00\u884C\u662F\u6307\u5B9A\u5177\u4F53\u7684\u683C\u5F0F
log4j.appender.Console.layout = org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=[%c] - %m%n
 
#\u6587\u4EF6\u5927\u5C0F\u5230\u8FBE\u6307\u5B9A\u5C3A\u5BF8\u7684\u65F6\u5019\u4EA7\u751F\u4E00\u4E2A\u65B0\u7684\u6587\u4EF6
log4j.appender.File = org.apache.log4j.RollingFileAppender
#\u6307\u5B9A\u8F93\u51FA\u76EE\u5F55
log4j.appender.File.File = logs/ssm.log
#\u5B9A\u4E49\u6587\u4EF6\u6700\u5927\u5927\u5C0F
log4j.appender.File.MaxFileSize = 10MB
# \u8F93\u51FA\u6240\u4EE5\u65E5\u5FD7\uFF0C\u5982\u679C\u6362\u6210DEBUG\u8868\u793A\u8F93\u51FADEBUG\u4EE5\u4E0A\u7EA7\u522B\u65E5\u5FD7
log4j.appender.File.Threshold = ALL
log4j.appender.File.layout = org.apache.log4j.PatternLayout
log4j.appender.File.layout.ConversionPattern =[%p] [%d{yyyy-MM-dd HH\:mm\:ss}][%c]%m%n

4.spring-mybatis.xml

<?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:p="http://www.springframework.org/schema/p"
	xmlns:context="http://www.springframework.org/schema/context"
	xmlns:mvc="http://www.springframework.org/schema/mvc"
	xsi:schemaLocation="http://www.springframework.org/schema/beans  
                        http://www.springframework.org/schema/beans/spring-beans-4.2.xsd  
                        http://www.springframework.org/schema/context  
                        http://www.springframework.org/schema/context/spring-context-4.2.xsd  
                        http://www.springframework.org/schema/mvc  
                        http://www.springframework.org/schema/mvc/spring-mvc-4.2.xsd">
	<!-- 自动扫描 -->
	<context:component-scan base-package="com.xxxx.spl.demo" />
	<!-- 引入配置文件 -->
	<bean id="propertyConfigurer"
		class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
		<property name="location" value="classpath:jdbc.properties" />
	</bean>
     <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close">   
	    <property name="driverClassName" value="${jdbc_driverClass}" />
	    <property name="url" value="${jdbc_url}" />  
	    <property name="username" value="${jdbc_username}" />  
	    <property name="password" value="${jdbc_password}" />  
	    <!-- 初始化连接大小 -->
	    <property name="initialSize" value="10" />
	    <!-- 连接池最小空闲 -->  
	    <property name="minIdle" value="10" />  
	    <!-- 连接池最大数量 --> 
	    <property name="maxActive" value="20" />  
	    <!-- 获取连接最大等待时间 -->
	    <property name="maxWait" value="60000" />  
	    <property name="timeBetweenEvictionRunsMillis" value="60000" /><!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->   
	    <property name="minEvictableIdleTimeMillis" value="300000" /><!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->  
	    <property name="validationQuery" value="select 1" />  
	    <property name="testWhileIdle" value="true" />  
	    <property name="testOnBorrow" value="false" />  
	    <property name="testOnReturn" value="false" />  
	    <property name="poolPreparedStatements" value="true" /><!-- 打开PSCache,并且指定每个连接上PSCache的大小 -->    
	    <property name="maxPoolPreparedStatementPerConnectionSize" value="20" />  
	</bean> 
	<!-- spring和MyBatis完美整合,不需要mybatis的配置映射文件 -->
	<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
		<property name="dataSource" ref="dataSource" />
		<!-- 自动扫描mapping.xml文件 -->
		<property name="mapperLocations" value="classpath:com/xxxx/spl/demo/mapper/*.xml"></property>
	</bean>
 
	<!-- DAO接口所在包名,Spring会自动查找其下的类 -->
	<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
		<property name="basePackage" value="com.xxxx.spl.demo.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>
 
</beans>

5.spring-mvc.xml

<?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:p="http://www.springframework.org/schema/p"
	xmlns:context="http://www.springframework.org/schema/context"
	xmlns:mvc="http://www.springframework.org/schema/mvc"
	xsi:schemaLocation="http://www.springframework.org/schema/beans  
                        http://www.springframework.org/schema/beans/spring-beans-4.2.xsd  
                        http://www.springframework.org/schema/context  
                        http://www.springframework.org/schema/context/spring-context-4.2.xsd  
                        http://www.springframework.org/schema/mvc  
                        http://www.springframework.org/schema/mvc/spring-mvc-4.2.xsd">
	<!-- 自动扫描该包,使SpringMVC认为包下用了@controller注解的类是控制器 -->
	<context:component-scan base-package="com.ruijie.spl.demo.controller" />
	

    <!-- 启动SpringMVC的注解功能,完成请求和注解POJO的映射 -->

	
 	<!--启动SpringMVC的注解功能 不开启,js请求无法接收404-->
 	<mvc:annotation-driven>
        <!--手动设置SpringMVC的json转换器 -->
		<mvc:message-converters register-defaults="true">
			<bean class="org.springframework.http.converter.StringHttpMessageConverter">
		    	<constructor-arg value="utf-8" />
			</bean>
			<!-- 将Jackson2HttpMessageConverter的默认格式化输出设为true -->
 			<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
                <property name="prettyPrint" value="true"/>
                <property name="objectMapper">  
                    <bean class="com.fasterxml.jackson.databind.ObjectMapper">  
                        <property name="dateFormat">  
                            <bean class="java.text.SimpleDateFormat">  
                                <constructor-arg type="java.lang.String" value="yyyy-MM-dd HH:mm:ss" />  
                            </bean>  
                        </property>  
                    </bean>  
                </property>  
            </bean>	 		
  		</mvc:message-converters>
	</mvc:annotation-driven> 
	<!--接收静态资源html.js等-->
	<mvc:default-servlet-handler/> 
</beans>

6.web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns="http://java.sun.com/xml/ns/javaee"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
	version="3.0">
	<display-name>platform-web-demo</display-name>
	<!-- Spring和mybatis的配置文件 -->
	<context-param>
		<param-name>contextConfigLocation</param-name>
		<param-value>classpath:spring-mybatis.xml</param-value>
	</context-param>
	<!-- 编码过滤器 -->
	<filter>
		<filter-name>encodingFilter</filter-name>
		<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
		<async-supported>true</async-supported>
		<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>
	<!-- Spring监听器 -->
	<listener>
		<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
	</listener>
	<!-- 防止Spring内存溢出监听器 -->
	<listener>
		<listener-class>org.springframework.web.util.IntrospectorCleanupListener</listener-class>
	</listener>
 
	<!-- 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>
		<async-supported>true</async-supported>
	</servlet>
	<servlet-mapping>
		<servlet-name>SpringMVC</servlet-name>
		<!-- 此处可以可以配置成*.do,对应struts的后缀习惯 -->
		<url-pattern>/</url-pattern>
	</servlet-mapping>
	<welcome-file-list>
		<welcome-file>/index.jsp</welcome-file>
	</welcome-file-list>
 
</web-app>

7.generatorConfig.xml

学习:https://blog.youkuaiyun.com/qq_33802316/article/details/78002990

mybits generator 插件,ecplise中添加插件 help>Eclipse MarketPlace  ,search generator下载

<?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="jdbc.properties"/> 
 	<!-- 在MBG工作的时候,需要额外加载的依赖包,比如连接数据库的jar包 ,location属性指明加载jar/zip包的全路径 --> 
  	<classPathEntry location="E:\guo\IDE\Maven_repository\mysql\mysql-connector-java\5.1.47\mysql-connector-java-5.1.47.jar" /> 
 
	<context id="mysql" defaultModelType="hierarchical" targetRuntime="MyBatis3Simple" >
		
	    <!-- 自动识别数据库关键字,默认false,如果设置为true,根据SqlReservedWords中定义的关键字列表;
	        一般保留默认值,遇到数据库关键字(Java关键字),使用columnOverride覆盖-->
	    <property name="autoDelimitKeywords" value="false"/>
	    <!-- 生成的Java文件的编码 -->
	    <property name="javaFileEncoding" value="UTF-8"/>
	    <!-- 格式化java代码 -->
	    <property name="javaFormatter" value="org.mybatis.generator.api.dom.DefaultJavaFormatter"/>
	    <!-- 格式化XML代码 -->
	    <property name="xmlFormatter" value="org.mybatis.generator.api.dom.DefaultXmlFormatter"/>
	
	    <!-- beginningDelimiter和endingDelimiter:指明数据库的用于标记数据库对象名的符号,比如ORACLE就是双引号,MYSQL默认是`反引号; -->
	    <property name="beginningDelimiter" value="`"/>
	    <property name="endingDelimiter" value="`"/>
		
		<!-- 注释生成器-->  
	    <commentGenerator >  
	        <property name="suppressAllComments" value="true"/>	<!-- 取消注释 -->  
	        <property name="suppressDate" value="true" /> 		<!-- 取消注释时间戳-->  
	    </commentGenerator> 
	    
	    <!-- jdbcConnection是必须要有的,使用这个配置链接数据库 @TODO:是否可以扩展   -->
	    <jdbcConnection driverClass="${jdbc_driverClass}" 
	    				connectionURL="${jdbc_url}" 
	    				userId="${jdbc_username}" 
	    				password="${jdbc_password}">
	        <!-- 这里面可以设置property属性,每一个property属性都设置到配置的Driver上 -->
	    </jdbcConnection>
	
	
	    <!-- java类型处理器 
	        用于处理DB中的类型到Java中的类型,默认使用JavaTypeResolverDefaultImpl;
	        注意一点,默认会先尝试使用Integer,Long,Short等来对应DECIMAL和 NUMERIC数据类型; 
	    -->
	    <javaTypeResolver type="org.mybatis.generator.internal.types.JavaTypeResolverDefaultImpl">
	        <!-- 
	            true:使用BigDecimal对应DECIMAL和 NUMERIC数据类型
	            false:默认,
	                scale>0;length>18:使用BigDecimal;
	                scale=0;length[10,18]:使用Long;
	                scale=0;length[5,9]:使用Integer;
	                scale=0;length<5:使用Short;
	         -->
	        <property name="forceBigDecimals" value="false"/>
	    </javaTypeResolver>
	 
	    <javaModelGenerator targetPackage="com.ruijie.spl.demo.bean" targetProject="platform-web-demo/src/main/java">
	        <!--  for MyBatis3/MyBatis3Simple
	            自动为每一个生成的类创建一个构造方法,构造方法包含了所有的field;而不是使用setter;
	         -->
	        <property name="constructorBased" value="false"/>
	        <!-- for MyBatis3 / MyBatis3Simple
	            	是否创建一个不可变的类,如果为true,
	            	那么MBG会创建一个没有setter方法的类,取而代之的是类似constructorBased的类-->
	        <property name="immutable" value="false"/>
	        <!-- 设置是否在getter方法中,对String类型字段调用trim()方法 -->
	        <property name="trimStrings" value="true"/>
	    </javaModelGenerator>
	
	
	    <!-- XML文件生成器,生成SQL map
	        注意,在Mybatis3之后,我们可以使用mapper.xml文件+Mapper接口(或者不用mapper接口),
	            或者只使用Mapper接口+Annotation,所以,如果 javaClientGenerator配置中配置了需要生成XML的话,这个元素就必须配置
	     -->
	    <sqlMapGenerator targetPackage="com.ruijie.spl.demo.mapper" targetProject="platform-web-demo/src/main/java">
	        <!-- 在targetPackage的基础上,根据数据库的schema再生成一层package,最终生成的类放在这个package下,默认为false -->
	        <property name="enableSubPackages" value="false"/>
	    </sqlMapGenerator>
	
	
	    <!-- 对于mybatis来说,即生成Mapper(Dao)接口,注意,如果没有配置该元素,那么默认不会生成Mapper接口 
	        targetPackage/targetProject:同javaModelGenerator
	        type:选择怎么生成mapper接口(在MyBatis3/MyBatis3Simple下):
	            1,ANNOTATEDMAPPER:会生成使用Mapper接口+Annotation的方式创建(SQL生成在annotation中),不会生成对应的XML;
	            2,MIXEDMAPPER:使用混合配置,会生成Mapper接口,并适当添加合适的Annotation,但是XML会生成在XML中;
	            3,XMLMAPPER:会生成Mapper接口,接口完全依赖XML;
	        注意,如果context是MyBatis3Simple:只支持ANNOTATEDMAPPER和XMLMAPPER
	    -->
	    <javaClientGenerator targetPackage="com.ruijie.spl.demo.dao" type="XMLMAPPER" targetProject="platform-web-demo/src/main/java">
	        <!-- 在targetPackage的基础上,根据数据库的schema再生成一层package,最终生成的类放在这个package下,默认为false -->
	        <property name="enableSubPackages" value="false"/>
	    </javaClientGenerator>
	
	    <table tableName="user" domainObjectName="User"> 
	        <!-- 参考 javaModelGenerator 的 constructorBased属性-->
	        <property name="constructorBased" value="false"/>
	
	        <!-- 默认为false,如果设置为true,在生成的SQL中,table名字不会加上catalog或schema; -->
	        <property name="ignoreQualifiersAtRuntime" value="false"/>
	
	        <!-- 参考 javaModelGenerator 的 immutable 属性 -->
	        <property name="immutable" value="false"/>
	
	        <!-- 指定是否只生成domain类,如果设置为true,只生成domain类,如果还配置了sqlMapGenerator,那么在mapper XML文件中,只生成resultMap元素 -->
	        <property name="modelOnly" value="false"/>
	
	        <!-- 注意,该属性只针对MyBatis3Simple有用;
	            如果选择的runtime是MyBatis3Simple,那么会生成一个SelectAll方法,如果指定了selectAllOrderByClause,那么会在该SQL中添加指定的这个order条件;
	         -->
	        <property name="selectAllOrderByClause" value="age desc,username asc"/>
	
	        <!-- 如果设置为true,生成的model类会直接使用column本身的名字,而不会再使用驼峰命名方法,比如BORN_DATE,生成的属性名字就是BORN_DATE,而不会是bornDate -->
	        <property name="useActualColumnNames" value="false"/>
	
	
	        <!-- 
	            该元素会在根据表中列名计算对象属性名之前先重命名列名,非常适合用于表中的列都有公用的前缀字符串的时候,
	            比如列名为:CUST_ID,CUST_NAME,CUST_EMAIL,CUST_ADDRESS等;
	            那么就可以设置searchString为"^CUST_",并使用空白替换,那么生成的Customer对象中的属性名称就不是
	            custId,custName等,而是先被替换为ID,NAME,EMAIL,然后变成属性:id,name,email;
	
	            注意,MBG是使用java.util.regex.Matcher.replaceAll来替换searchString和replaceString的,
	            如果使用了columnOverride元素,该属性无效;
	
	        <columnRenamingRule searchString="" replaceString=""/>
	         -->
	 
	         <!-- 用来修改表中某个列的属性,MBG会使用修改后的列来生成domain的属性;
	              column:要重新设置的列名;
	                          注意,一个table元素中可以有多个columnOverride元素哈~
	          -->
	         <columnOverride column="user_name">
	             <!-- 使用property属性来指定列要生成的属性名称 -->
	             <property name="property" value="userName"/>
	
	             <!-- javaType用于指定生成的domain的属性类型,使用类型的全限定名
	             <property name="javaType" value=""/>
	              -->
	
	             <!-- jdbcType用于指定该列的JDBC类型 
	             <property name="jdbcType" value=""/>
	              --> 
	              
	             <!-- typeHandler 用于指定该列使用到的TypeHandler,如果要指定,配置类型处理器的全限定名
	                        注意,mybatis中,不会生成到mybatis-config.xml中的typeHandler
	                        只会生成类似:where id = #{id,jdbcType=BIGINT,typeHandler=com._520it.mybatis.MyTypeHandler}的参数描述
	             <property name="jdbcType" value=""/>
	             -->
	
	             <!-- 参考table元素的delimitAllColumns配置,默认为false
	             <property name="delimitedColumnName" value=""/>
	              -->
	         </columnOverride>
	    </table>
	</context>
</generatorConfiguration>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值