0
点赞
收藏
分享

微信扫一扫

Maven项目整合javaweb应用时mangoDB替换Mysql过程配置遇到的小问题

young_d807 2022-01-16 阅读 92

问题

在学习在线商城的JavaWeb应用时,数据库技术原本采用的MySql,应用较新技术mangoDB替换时,在配置过程中一直报错缺包。我以为是spring或Java版本对应的问题,怎么改都不对,浪费了大半天时间。

下面是我在pom.xml里主要添加的三个配置文件
在这里插入图片描述

<!-- mongodb -->
	    <dependency>
	    	<groupId>org.springframework</groupId>
	    	<artifactId>spring-core</artifactId>
	    	<version>4.3.7.RELEASE</version>
	    </dependency>
		<dependency>
			<groupId>org.springframework.data</groupId>
			<artifactId>spring-data-mongodb</artifactId>
			<version>1.8.2.RELEASE</version>
		</dependency>
		<dependency>
			<groupId>org.mongodb</groupId>
			<artifactId>mongo-java-driver</artifactId>
			<version>3.1.0</version>
		</dependency>

解决方案

最后发现在pom.xml的properties里添加相关依赖配置是有顺序要求的,即spring-context相关配置需要在mango的相关配置前面。所以就将mango的相关配置放在了最后,即解决了问题。

一直百度都没有看到相关回答,故写下来分享一下(也可能是我检索能力蒟蒻)

下面附整个pom.xml文件的内容

<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/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>cn.edu.xxx</groupId>
  <artifactId>EasyMall19-Maven</artifactId>
  <packaging>war</packaging>
  <version>0.0.1-SNAPSHOT</version>
  <name>EasyMall19-Maven Maven Webapp</name>
  <url>http://maven.apache.org</url>
  
  <properties>
		<java.version>1.8</java.version>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
	</properties>
	
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    <!-- spring框架的基础依赖spring-context -->
		<dependency>
		    <groupId>org.springframework</groupId>
		    <artifactId>spring-jdbc</artifactId>
		    <version>4.3.7.RELEASE</version>
		</dependency>
	
	<!-- MYBATIS MYBATIS-SPRING -->
	  	<dependency>
	  		<groupId>org.mybatis</groupId>
	  		<artifactId>mybatis</artifactId>
	  		<version>3.4.5</version>
	  	</dependency>
	  	
	  	<dependency>
	  		<groupId>org.mybatis</groupId>
	  		<artifactId>mybatis-spring</artifactId>
	  		<version>1.3.1</version>
	  	</dependency>
  	
  	<!-- mysql -->
	  	<dependency>
	  		<groupId>mysql</groupId>
	  		<artifactId>mysql-connector-java</artifactId>
	  		<version>5.0.8</version>
	  	</dependency>
  	
    <!-- datasource pool c3p0-->
	  	<dependency>
	  		<groupId>com.mchange</groupId>
	  		<artifactId>c3p0</artifactId>
	  		<version>0.9.5.2</version>
	  	</dependency>
  	
  	<!-- datasource pool druid-->
	  	<dependency>
	  		<groupId>com.alibaba</groupId>
	  		<artifactId>druid</artifactId>
	  		<version>1.0.14</version>
	  	</dependency>
  	
	<!-- 事务处理 -->       	
		<dependency>
		    <groupId>org.springframework</groupId>
		    <artifactId>spring-tx</artifactId>
		    <version>4.3.7.RELEASE</version>
		</dependency>
		 
	<!-- SPRING MVC 相关依赖 -->
	    <dependency>
	    	<groupId>org.springframework</groupId>
	    	<artifactId>spring-web</artifactId>
	    	<version>4.3.7.RELEASE</version>
	    </dependency>
	    <dependency>
	    	<groupId>org.springframework</groupId>
	    	<artifactId>spring-webmvc</artifactId>
	    	<version>4.3.7.RELEASE</version>
	    </dependency>
	    
	    <!-- spring messageconvert jackson  -->
	    <dependency>
	    	<groupId>com.fasterxml.jackson.core</groupId>
	    	<artifactId>jackson-core</artifactId>
	    	<version>2.8.8</version>
	    </dependency>
	    <dependency>
	    	<groupId>com.fasterxml.jackson.core</groupId>
	    	<artifactId>jackson-databind</artifactId>
	    	<version>2.8.8</version>
	    </dependency>  
  
	<!-- 添加javax.servlet-api -->  
		<dependency>
		    <groupId>javax.servlet</groupId>
		    <artifactId>javax.servlet-api</artifactId>
		    <version>3.0.1</version>
		    <scope>provided</scope>
		</dependency>
	  
	<!-- jstl表达式依赖 -->   
		<dependency>
		    <groupId>javax.servlet.jsp.jstl</groupId>
		    <artifactId>jstl</artifactId>
		    <version>1.2</version>
		</dependency>
		<dependency>
		    <groupId>org.apache.taglibs</groupId>
		    <artifactId>taglibs-standard-impl</artifactId>
		    <version>1.2.5</version>
		</dependency>
		<dependency>
		    <groupId>org.apache.taglibs</groupId>
		    <artifactId>taglibs-standard-spec</artifactId>
		    <version>1.2.5</version>
		</dependency>
		
	<!-- 文件上传 -->
		<dependency>
		    <groupId>commons-fileupload</groupId>
		    <artifactId>commons-fileupload</artifactId>
		    <version>1.3.1</version>
		</dependency>
		<dependency>  
		    <groupId>org.hibernate</groupId>  
		    <artifactId>hibernate-validator</artifactId>  
		    <version>5.2.4.Final</version>  
		</dependency> 
	 <!-- mongodb -->
	    <dependency>
	    	<groupId>org.springframework</groupId>
	    	<artifactId>spring-core</artifactId>
	    	<version>4.3.7.RELEASE</version>
	    </dependency>
		<dependency>
			<groupId>org.springframework.data</groupId>
			<artifactId>spring-data-mongodb</artifactId>
			<version>1.8.2.RELEASE</version>
		</dependency>
		<dependency>
			<groupId>org.mongodb</groupId>
			<artifactId>mongo-java-driver</artifactId>
			<version>3.1.0</version>
		</dependency>
  </dependencies>
  <build>
    <finalName>EasyMall19-Maven</finalName>
    <plugins>
    <!-- 添加编译插件 -->
    	<plugin>
			<groupId>org.apache.maven.plugins</groupId>
			<artifactId>maven-compiler-plugin</artifactId>
			<configuration>
				<source>1.8</source>
				<target>1.8</target>
				<encoding>UTF-8</encoding>
			</configuration>
		</plugin>
    <!-- 添加source生成插件 -->
    	<plugin>
			<groupId>org.apache.maven.plugins</groupId>
			<artifactId>maven-source-plugin</artifactId>
			<configuration>
				<attach>true</attach>
			</configuration>
			<executions>
				<execution>
					<phase>compile</phase>
					<goals>
						<goal>jar</goal>
					</goals>
				</execution>
			</executions>
		</plugin>
    <!-- tomcat插件 -->
		<plugin>
			<groupId>org.apache.tomcat.maven</groupId>
			<artifactId>tomcat7-maven-plugin</artifactId>
			<version>2.2</version>
			<!-- tomcat启动的配置 -->
			<configuration>
				<!-- 端口号访问路径默认88端口 -->
				<port>8803</port>
				<!-- 应用程序的访问路径 -->
				<path>/</path>
				<!-- 接收数据编解码格式utf-8 -->
				<uriEncoding>utf-8</uriEncoding>
				<useBodyEncodingForURI>utf-8</useBodyEncodingForURI>
			</configuration>
		</plugin>
	</plugins>
  </build>
</project>

举报

相关推荐

0 条评论