SSM框架集成及配置详解(Maven管理)
一、pom.xml(依赖管理)
- <?xml version="1.0" encoding="UTF-8"?>
- <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>cn.dragon</groupId>
<artifactId>crm</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>war</packaging>- <name>cn.dragon.crm</name>
<url>http://www.example.com</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>
<!-- spring版本号 -->
<spring.version>4.1.2.RELEASE</spring.version>
<!-- mybatis版本号 -->
<mybatis.version>3.2.1</mybatis.version>
<!-- log4j日志文件管理包版本 -->
<slf4j.version>1.7.2</slf4j.version>
<log4j.version>1.2.17</log4j.version>
<!-- jackson包版本 -->
<jackson.version>2.5.0</jackson.version>
</properties>- <dependencies>
<!--JUnit-->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>- <!--Spring核心-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</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-beans</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</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-expression</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-test</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.1.1</version>
</dependency>- <!--SpringMVC-->
<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>- <!--aop依赖包-->
<dependency>
<groupId>aopalliance</groupId>
<artifactId>aopalliance</artifactId>
<version>1.0</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.6.8</version>
</dependency>- <!--文件上传-->
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.1</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.2</version>
</dependency>
<!--jackson-->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>${jackson.version}</version>
</dependency>
<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-annotations</artifactId>
<version>${jackson.version}</version>
</dependency>- <!--数据库连接池-->
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
<version>1.2.2</version>
</dependency>
<dependency>
<groupId>commons-pool</groupId>
<artifactId>commons-pool</artifactId>
<version>1.5.3</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.2.0</version>
</dependency>- <!--log4j-->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>${log4j.version}</version>
</dependency>- <!--slf4j-->
<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>
<scope>test</scope>
</dependency>- <!--数据库连接驱动-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.46</version>
</dependency>- <!-- JSTL标签类 -->
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>- <!--servlet-->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
<scope>provided</scope>
</dependency>- <dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.2</version>
<scope>provided</scope>
</dependency>
<!--分页插件-->
<!--mybatis分页插件-->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.0.1</version>
</dependency>- </dependencies>
- <build>
<finalName>cn.dragon.crm</finalName>
<!--<pluginManagement><!– lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) –>-->
<plugins>
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<version>3.0.0</version>
</plugin>
<!-- see http://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_war_packaging -->
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>3.0.2</version>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.20.1</version>
</plugin>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>3.2.0</version>
</plugin>
<plugin>
<artifactId>maven-install-plugin</artifactId>
<version>2.5.2</version>
</plugin>
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.8.2</version>
</plugin>
<!--代码生成器-->
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.2</version>
<configuration>
<!--自定义代码生成器的路径-->
<!--<configurationFile>yourLocation/mybatis-generator-config.xml</configurationFile>-->
<verbose>true</verbose>
<overwrite>true</overwrite>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>8</source>
<target>8</target>
</configuration>
</plugin>
</plugins>
<!--</pluginManagement>-->
</build>- </project>
二、applicationContext.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:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"
- 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 http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd">
- <!--扫描的包-->
- <context:component-scan base-package="cn.dragon.crm.service"/>
- <!-- Jdbc配置文件 -->
- <context:property-placeholder location="classpath:db.properties"/>
- <!-- 数据源dataSource -->
- <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
- <property name="driverClassName" value="${jdbc.driverClassName}"/>
- <property name="url" value="${jdbc.url}"/>
- <property name="username" value="${jdbc.username}"/>
- <property name="password" value="${jdbc.password}"/>
- <!--maxActive: 最大连接数量 -->
- <property name="maxActive" value=""/>
- <!--minIdle: 最小空闲连接 -->
- <property name="minIdle" value=""/>
- <!--maxIdle: 最大空闲连接 -->
- <property name="maxIdle" value=""/>
- <!--initialSize: 初始化连接 -->
- <property name="initialSize" value=""/>
- <!--maxWait: 超时等待时间以毫秒为单位 1000等于60秒 -->
- <property name="maxWait" value=""/>
- <!-- 在空闲连接回收器线程运行期间休眠的时间值,以毫秒为单位. -->
- <property name="timeBetweenEvictionRunsMillis" value=""/>
- <!-- 在每次空闲连接回收器线程(如果有)运行时检查的连接数量 -->
- <property name="numTestsPerEvictionRun" value=""/>
- <!-- * * 连接在池中保持空闲而不被空闲连接回收器线程 -->
- <property name="minEvictableIdleTimeMillis" value=""/>
- <property name="validationQuery" value="SELECT NOW() FROM DUAL"/>
- </bean>
- <!--Mybatis核心对象-->
- <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
- <!-- 注入数据源 -->
- <property name="dataSource" ref="dataSource"/>
- <!-- 配置mybatis (cn.dragon.crm.mapper)映射器路径 -->
- <property name="mapperLocations" value="classpath*:cn/dragon/crm/mapper/*Mapper.xml"/>
- <!-- 配置mybatis 类型别名 -->
- <property name="typeAliasesPackage">
- <value>
- cn.dragon.crm.domain
- cn.dragon.crm.query
- </value>
- </property>
- </bean>
- <!--注入映射器-->
- <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
- <property name="basePackage" value="cn.dragon.crm.mapper"></property>
- </bean>
- <!--事务管理-->
- <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
- <property name="dataSource" ref="dataSource"/>
- </bean>
- <!--以注解的方式进行事务管理-->
- <tx:annotation-driven transaction-manager="transactionManager"/>
- </beans>
三、applicationContext-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: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.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd">
- <!-- 自动扫描该包,使SpringMVC认为包下用了@controller注解的类是控制器 -->
- <context:component-scan base-package="cn.dragon.crm.web.controller" />
- <!-- 启动SpringMVC的注解功能 -->
- <mvc:annotation-driven/>
- <!--静态资源放行-->
- <mvc:default-servlet-handler/>
- <!-- 定义跳转的文件的前后缀 ,视图解析器配置-->
- <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
- <property name="prefix" value="/WEB-INF/views/" />
- <property name="suffix" value=".jsp" />
- </bean>
- <!-- 配置文件上传解析器 -->
- <bean id="multipartResolver"
- class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
- <!-- 默认编码 -->
- <property name="defaultEncoding" value="utf-8" />
- <!-- 文件大小最大值 -->
- <property name="maxUploadSize" value="" />
- </bean>
- </beans>
四、web.xml
- <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>crm</display-name>
- <!-- Spring的配置文件 -->
- <context-param>
- <param-name>contextConfigLocation</param-name>
- <param-value>classpath:applicationContext.xml</param-value>
- </context-param>
- <!--Spring监听器 ApplicationContext 载入 -->
- <listener>
- <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
- </listener>
- <!-- Spring MVC 核心配置开始 -->
- <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:applicationContext-mvc.xml</param-value>
- </init-param>
- <load-on-startup></load-on-startup>
- </servlet>
- <servlet-mapping>
- <servlet-name>springmvc</servlet-name>
- <url-pattern>/</url-pattern>
- </servlet-mapping>
- <!-- 编码过滤器 -->
- <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-</param-value>
- </init-param>
- </filter>
- <filter-mapping>
- <filter-name>encodingFilter</filter-name>
- <url-pattern>/*</url-pattern>
- </filter-mapping>
- </web-app>
五、db.properties
- jdbc.driverClassName=com.mysql.jdbc.Driver
- jdbc.url=jdbc:mysql:///crm
- jdbc.username=root
- jdbc.password=admin
六、log4j.properties
- log4j.rootLogger=ERROR, stdout
- #log4j.rootLogger=NONE
- log4j.logger.cn.itsource=TRACE
- log4j.appender.stdout=org.apache.log4j.ConsoleAppender
- log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
七、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>
- <!--
- classPathEntry:可以配置多个,也不配置
- 数据库驱动:这里找到相应的驱动jar包就可以了(注:不同数据库的jar不一样)
- location:里面的是路径(也可以直接写绝对路径 -> 如:E:\mybatis\mysql-connector-java-5.1.-bin.jar)
- -->
- <classPathEntry location="D:\opensource\mysql-connector-java-5.1.26-bin.jar"/>
- <!--
- context:用于生成一组对象的环境(至少配置1个,可以配置多个)
- id:表达唯一的名称
- targetRuntime:用于指定生成的代码的运行环境(MyBatis3/MyBatis3Simple)
- MyBatis3:默认值
- MyBatis3Simple:不会生成与Example(案例)相关的方法
- -->
- <context id="DB2Tables" targetRuntime="MyBatis3Simple" >
- <!--
- 用于配置如果生成注释信息(最多可以配置一下)
- suppressAllComments:阻止生成注释 ,默认为false
- suppressDate:阻止生成的注释 时间戳,默认为false
- addRemarkComments:注释是否添加数据库表的备注信息,默认为false
- -->
- <commentGenerator>
- <property name="suppressDate" value="true"/>
- <property name="suppressAllComments" value="true"/>
- </commentGenerator>
- <!--
- 这个应该比较清楚,配置连接数据库的基本信息
- -->
- <jdbcConnection driverClass="com.mysql.jdbc.Driver"
- connectionURL="jdbc:mysql:///crm"
- userId="root" password="admin">
- </jdbcConnection>
- <!--
- 用于指定JDBC类型和Java类型如何转换,最多可以配置一个
- forceBigDecimals:控制是否强制将DECIMAL和NUMERIC类型的JDBC字段转换成Java类型的 BigDecimal
- 默认为false,一般不需要配置
- -->
- <javaTypeResolver>
- <property name="forceBigDecimals" value="false"/>
- </javaTypeResolver>
- <!--
- javaModelGenerator:用来控制生成的实体类
- targetPackage:生成Model类存放位置(包名)
- targetProject:指定目标项目路径(根目录)
- 对应的子属性:
- trimStrings:判断是否对数据库查询结果进行trim操作(默认false)
- -->
- <javaModelGenerator targetPackage="cn.dragon.crm.domain" targetProject="src/main/java">
- <property name="trimStrings" value="true"/>
- </javaModelGenerator>
- <!--
- sqlMapGenerator:生成映射文件存放位置(Mapper.xml文件)
- targetPackage:生成SQL映射文件(XML文件)在哪个包中
- targetProject:指定目标项目路径(根目录)
- -->
- <sqlMapGenerator targetPackage="cn.dragon.crm.mapper" targetProject="src/main/resources">
- </sqlMapGenerator>
- <!--
- javaClientGenerator:Java客户端生成器(生成Dao/Mapper的接口)
- 该 标签可选(最多配置一个),如果不配置,就不会生成Mapper接口
- type:选择客户端代码生成器
- MyBatis3
- ANNOTATEDMAPPER:基于注解的Mapper接口,不会有对应的XML映射文件
- MIXEDMAPPER:XML和注解混合形式
- XMLMAPPER:所有方法都在XML中(接口调用依赖XML)
- MyBatis3Simple
- ANNOTATEDMAPPER:基于注解的Mapper接口,不会有对应的XML映射文件
- XMLMAPPER:所有方法都在XML中(接口调用依赖XML)
- targetPackage:生成Mapper接口存放的包名
- targetProject:指定目标项目路径
- -->
- <javaClientGenerator type="XMLMAPPER" targetPackage="cn.dragon.crm.mapper" targetProject="src/main/java">
- <property name="enableSubPackages" value="true"/>
- </javaClientGenerator>
- <!--
- table:生成对应表及类名
- tableName:对应表名(注:%代表所有)
- domainObjectName:对应的类名
- generatedKey:主键自增的id字段(针对当前 数据库配置MySQL)
- -->
- <table tableName="t_department" domainObjectName="Department">
- <generatedKey column="id" sqlStatement="MySql" />
- </table>
- </context>
- </generatorConfiguration>
SSM框架集成及配置详解(Maven管理)的更多相关文章
- 《Java Spring框架》SpringXML配置详解
Spring框架作为Bean的管理容器,其最经典最基础的Bean配置方式就是纯XML配置,这样做使得结构清晰明了,适合大型项目使用.Spring的XML配置虽然很繁琐,而且存在简洁的注解方式,但读懂X ...
- Struts2框架学习(三)——配置详解
一.struts.xml配置 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts ...
- Maven使用笔记(四)pom.xml配置详解
pom.xml文件配置详解 --声明规范 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi=" ...
- maven常用插件配置详解
常用插件配置详解Java代码 <!-- 全局属性配置 --> <properties> <project.build.name>tools</proje ...
- 【转】Maven pom.xml 配置详解
原文链接:https://yq.aliyun.com/articles/38271 pom.xml文件配置详解 --声明规范 <project xmlns="http://maven. ...
- Maven项目pom.xml配置详解
maven项目pom.xml文件配置详解,需要时可以用作参考: <project xmlns="http://maven.apache.org/POM/4.0.0" xmln ...
- SpringMVC 框架系列之组件概述与配置详解
在上一篇文章 SpringMVC 框架系列之初识与入门实例 的实例中,我们已经知道,SpringMVC 框架是一个 web 层的框架,本篇文章就详细解释一下 SpringMVC 框架具体文件的配置以及 ...
- mybatis 代码生成器(IDEA, Maven)及配置详解(部分配置你应该不知道)
目录 1 创建代码生成器 1.1 创建Maven项目 1.2 配置 generator.xml 1.3 配置 pom.xml 1.4 使用及测试 2 XML 配置详解 2.1 优先 2.2 官网没有的 ...
- (网页)Java日志记录框架Logback配置详解(企业级应用解决方案)(转)
转自CSDN: 前言 Logback是现在比较流行的一个日志记录框架,它的配置比较简单学习成本相对较低,所以刚刚接触该框架的朋友不要畏惧,多花点耐心很快就能灵活应用了.本篇博文不会具体介绍Logbac ...
随机推荐
- cmake安装
下载之后 1.解压 root@zsh-linux:/opt#tar -zxvf cmake-2.8.4.tar.gz 2.然后 cd 到cmake-2.8.4目录下 安装 root@zsh-lin ...
- SSIS: 如何通过SSIS的Foreach Loop Container导入Excel的多个Sheet
通常都有这样一个习惯就是按月存放我们的一些数据,一个月份一个work sheet,他们具有相同的行列组合,假设有下面这样一个Excel,每页结构如下,共有四页,每页为一个季度 那么我们需要做的是: 1 ...
- windows安装composer
Composer 是 PHP 的一个依赖管理工具(不是一个包管理器).它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们. 在windows下安装的方法 方法一:使用安装程序 这是将 Com ...
- JS,ATM代码
rs =require("readline-sync"); let island = false; let name1 = "1"; let mima1 = & ...
- Python常用字符编码(转)
Python常用字符编码 字符编码的常用种类介绍 第一种:ASCII码 ASCII(American Standard Code for Information Interchange,美国信息交 ...
- Windows下javac不可用,java -version可以
https://blog.csdn.net/kobedir/article/details/79709287
- 使用netty HashedWheelTimer构建简单延迟队列
背景 最近项目中有个业务,需要对用户新增任务到期后进行业务处理.使用定时任务定时扫描过期时间,浪费资源,且不实时.只能使用延时队列处理. DelayQueue 第一想到的是java自带的延时队列del ...
- Debian 9 Stretch国内常用镜像源
随着Debian 9的普及,但由于伟大的墙的存在,那就有必要整理一下国内的镜像站点. 1.使用说明 一般情况下,修改/etc/apt/sources.list文件,将Debian的默认源地址改成新的 ...
- 2018-2019-2 20175126谢文航 实验二《Java面向对象程序设计》实验报告
一.实验报告封面 课程:Java程序设计 班级:1751 班 姓名:谢文航 学号:20175126 指导教师:娄嘉鹏 实验日期:2019年4月17日 实验时间:--- 实验序号:实验二 实验名称:Ja ...
- Windows防火墙开启ping,禁ping的配置方法
Windows 7,Win 2008 R2,2012 R2: Windows防火墙 --> 高级设置 --> 入站规则 --> 在列表里找到“文件和打印机共享(回显请求 - ICMP ...