maven工程解决jar包冲突解决
第一种解决方案
- 第一声明优先原则
- 哪个jar包在坐标靠上的位置,这个jar包就是先声明的,先声明的jar包坐标下的依赖包,可以优先进入项目中
第二种解决方案
- 路径近者优先原则
- 直接依赖路径比传递依赖路径近,最终项目中进入的jar包会是路径近的直接依赖包
- 直接依赖:项目中直接导入的jar包,就是项目的直接依赖包
- 传递依赖:项目中没有直接导入的jar包,可以通过项目直接依赖jar包传递到项目中
第三种解决方案
- 直接排除法
- 我们要排除某个jar包下依赖包的时候,在配置
exclution
标签的时候,内部可以不写版本号,因为此时依赖包使用的版本和默认jar包一样
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>4.2.4 RELEASE</version>
<exclusions>
<exclution>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
</exclution>
</exclusions>
</dependency>
maven传统web工程做一个数据查询操作
- 就是一个ssm的查询数据库操作,具体代码省略,重点配置如下
- 使用一个新的数据源:
Druid
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql:///maven"/>
<property name="username" value="root"/>
<property name="password" value="root"/>
</bean>
- 配置生产SqlSession对象的工厂
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"/>
<property name=