MAVEN+SPRING+MYBATIS整合常見問題
- 最近在研究J2EE開發,中間碰到不少問題,於是寫下此文,用於記錄這個過程,併為其他與我一樣在路上的朋友提供參考,隨著時間的推移,此文將不斷補充完善
- 通過Server檢視啟動TOMCAT提示錯誤:java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
嚴重: Error configuring application listener of class org.springframework.web.context.ContextLoaderListener
java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1358)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1204)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3770)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4334)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start(StandardService.java:516)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:566)造成問題的原因至今不明確,我是用STS進行開發,原想將專案拆成多個MAVEN專案,總有點問題後暫時放棄又合起來了,之後就一直這樣,什麼CLEAN啊之類的操作都試過,一直沒有解決。
從這錯誤的現象來看是因為找不到org.springframework.web.context.ContextLoaderListener這個類,這個類在WEB.XML配置引用。
碰到這個問題我首先想是不是因為中間折騰過幾次專案,造成了編譯的問題,於是執行MAVEN CLEAN,然後MAVEN INSTALL,再把SERVER刪除重新來,但是問題依舊。於是我又新建一個全新專案釋出到TOMCAT,一切正常,操作時發現有一個特點,如下圖:
圖1
圖中myproject是我出問題的專案,mytest1是我新建的測試專案,新建的專案在添加發布時多一個spring-web的JAR包依賴,於是我開啟兩個項止的.classpath,發現出問題的專案少了一句話
正常的專案如下
<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
<attributes>
<attribute name="maven.pomderived" value="true"/>
<attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/>
</attributes>
</classpathentry>問題專案如下
<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
<attributes>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>於是把<attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/>給加上,進入開STS重新整理,然後再進入到圖1介面,這下myproject也有了spring-web引用了。
按正常的釋出流程釋出,一切正常。
- Caused by: java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [spring-mybatis.xml]: Invocation of init method failed; nested exception is java.sql.SQLException: oracle.jdbc.driver.OracleDriver
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1486)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:524)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:461)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:295)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:223)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:292)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:323)
... 53 more
Caused by: java.sql.SQLException: oracle.jdbc.driver.OracleDriver
at com.alibaba.druid.util.JdbcUtils.createDriver(JdbcUtils.java:500)
at com.alibaba.druid.pool.DruidDataSource.init(DruidDataSource.java:382)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1612)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1553)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1483)
... 60 more
Caused by: java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1702)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1547)
at com.alibaba.druid.util.JdbcUtils.createDriver(JdbcUtils.java:494)
... 68 more筆者在做一個MAVEN+SPRING+MYBATIS+ORACLE整合時碰到這個問題,單元測試SERVICE一切正常,但是釋出到TOMCAT7時出現這個錯誤。
從這個錯誤的現象來看是ORACLE驅動的OJDBC沒有一起釋出,我原來在POM.XML檔案是這麼寫的
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>11</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/ojdbc6.jar</systemPath>
</dependency>其實這個問題非常明顯,原因就是通過這樣SYSTEMPATH方式引用造成的,其實MAVEN可以引用本地JAR包,但需要自己去單獨釋出,為了省事,你也可以將JAR包匯入到本地庫中,方法是在MAVEN的BIN目錄下用命令列執行如下語句
mvn install:install-file -Dfile=E:\J2EE\jar\ojdbc6.jar -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=11 -Dpackaging=jar
具體的引數內容根據自己的情況修改,執行完之後再將POM.xml中的配置改成如下內容
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>11</version>
</dependency>至此問題解決。
- Invalid classpath publish/export dependency org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7. The associated classpath container cannot be included in the published/exported module.portal-webP/portal-webClasspath Dependency Validator Message
這個問題的出現是因今天在建立MAVEN多模組專案,中間用過一次MAVEN -->Update projects ...的操作,然後就出現。
出現這個錯誤後如果仍然釋出,啟動TOMCAT也將如下錯誤
java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
仔細一看跟本文的第一個問題的症狀非常相似,參照第一個問題的方式未能解決。隨後我拿著一個正常的MAVEN專案開啟專案屬性介面,發現出問題的專案有一處配置不對,通過修改改成正常專案一樣問題解決,具體的修改步驟如下:
在專案中點右鍵,再選擇Properties
選擇如上圖的選項,再點選ADD按鈕
選擇Java Build Path Entries
選擇唯一的MAVEN選項,完成
完成後的結果如上圖,其中我這有一個portal-core的MAVEN MODULE依賴,這個你不會有的,依照上面的步驟處理完畢問題解決。
-
Javascript檢測錯誤
當專案引入JQuery-x.x.x.min.js後Markers視窗總是提示一語法錯誤之類的東西,雖然不影響整個開發,但是看久了也煩。對於這種東西你是沒辦法修正的,要處理只能把Javascript的檢測功能給關掉,關閉方法如下:
專案上右鍵 - Properties - Builders -JavaScript Validator去掉勾即可解決
- Removing obsolete files from server...
Could not clean server of obsolete files: null
java.lang.NullPointerException
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
[INFO] Scanning for projects...
[ERROR] The build could not read 2 projects -> [Help 1]
[ERROR]
[ERROR] The project net.ntrue:portal-web:2.0.0 (E:\ntrue\platform\portal\portal-web\pom.xml) has 1 error
[ERROR] Non-parseable POM C:\Users\Administrator\.m2\repository\net\ntrue\portal\2.0.0\portal-2.0.0.pom: Expected root element 'project' but found 'html' (position: START_TAG seen \n<html>... @2:7) @ C:\Users\Administrator\.m2\repository\net\ntrue\portal\2.0.0\portal-2.0.0.pom, line 2, column 7 -> [Help 2]
[ERROR]
[ERROR] The project net.ntrue:portal-core:2.0.0 (E:\ntrue\platform\portal\portal-core\pom.xml) has 1 error
[ERROR] Non-parseable POM C:\Users\Administrator\.m2\repository\net\ntrue\portal\2.0.0\portal-2.0.0.pom: Expected root element 'project' but found 'html' (position: START_TAG seen \n<html>... @2:7) @ C:\Users\Administrator\.m2\repository\net\ntrue\portal\2.0.0\portal-2.0.0.pom, line 2, column 7 -> [Help 2]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/ProjectBuildingException
[ERROR] [Help 2] http://cwiki.apache.org/confluence/display/MAVEN/ModelParseException這是在編寫完程式碼準備啟動TOMCAT除錯時出現的錯誤,具體原因可能是因為我手工修改過TOMCAT下的配置檔案,找了好久但沒有明確到底是哪個項修改造成的,後通過刪除TOMCAT目錄,然後重新新增SERVER解決問題。
- 執行maven test時提示Failed tests: myproject.TestXXXController.testList(): org/junit/Assert
開啟專案TARGET目錄下的XML報告發現錯誤原因如下
java.lang.NoClassDefFoundError: org/junit/Assert
at net.ntrue.framework.test.JControllerBase.executeAction(JControllerBase.java:97)
at net.ntrue.portal.controller.TestBrandController.testList(TestBrandController.java:13)
Caused by: java.lang.ClassNotFoundException: org.junit.Assert
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 20 more要說清這個問題得從MAVEN多專案的結構開始,我的專案結果是這樣的
|-Framework 公共類庫,獨立的maven 專案,有兩個用於測試用的抽象基類
|-portal
|-portal-parent 一個MAVEN的PARENT專案,本身沒有程式邏輯,只負責公共的POM依賴定義,junit的依賴宣告也在這裡
|-portal-web 純WEB的JSP頁面
|-portal-core WEB類除JSP之外的都在這裡,內部幾乎所有的類都有單元測試,包括SERVICE和CONTROLLER
在portal-core執行maven test時幾乎所有的測試用例均錯誤,後猜測可能的原因是因為加入了framework的引用,而framework裡將junit宣告為test
後將junit的宣告由portal-parent中移到portal-core專案的POM.XML中問題解決,具體原因暫沒了解透
修改後的portal-core專案POM.XML內容如下
<dependencies>
<dependency>
<groupId>net.ntrue</groupId>
<artifactId>framework</artifactId>
<version>1.0.0</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
</dependencies>
- Spring MVC JSON請求異常
異常的內容有兩段,當使用了@RequestBody時提示如下錯誤
org.springframework.web.HttpMediaTypeNotSupportedException: Content type 'application/json;charset=UTF-8' not supported
at org.springframework.web.bind.annotation.support.HandlerMethodInvoker.readWithMessageConverters(HandlerMethodInvoker.java:645)
at org.springframework.web.bind.annotation.support.HandlerMethodInvoker.resolveRequestBody(HandlerMethodInvoker.java:605)
at org.springframework.web.bind.annotation.support.HandlerMethodInvoker.resolveHandlerArguments(HandlerMethodInvoker.java:354)
at org.springframework.web.bind.annotation.support.HandlerMethodInvoker.invokeHandlerMethod(HandlerMethodInvoker.java:171)
at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.invokeHandlerMethod(AnnotationMethodHandlerAdapter.java:439)
at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.handle(AnnotationMethodHandlerAdapter.java:427)
at net.ntrue.framework.test.JControllerBase.excuteAction(JControllerBase.java:74)
at net.ntrue.portal.webservice.TestService.TestJsonWrite(TestService.java:63)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
使用@ResponseBody時反饋以下錯誤
org.springframework.web.HttpMediaTypeNotAcceptableException: Could not find acceptable representation
at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter$ServletHandlerMethodInvoker.writeWithMessageConverters(AnnotationMethodHandlerAdapter.java:1054)
at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter$ServletHandlerMethodInvoker.handleResponseBody(AnnotationMethodHandlerAdapter.java:994)
at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter$ServletHandlerMethodInvoker.getModelAndView(AnnotationMethodHandlerAdapter.java:943)
at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.invokeHandlerMethod(AnnotationMethodHandlerAdapter.java:440)
at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.handle(AnnotationMethodHandlerAdapter.java:427)
at net.ntrue.framework.test.JControllerBase.excuteAction(JControllerBase.java:74)
at net.ntrue.portal.webservice.TestService.TestJsonWrite(TestService.java:63)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)從這兩段錯誤可以很明顯看出是不知道該用哪個CONVERT類去處理請求和響應的資料,之前認真研究過SPRING MVC,其實SPRING MVC處理這種JSON格式的傳參和返回是非常簡單的,按照書上和網上的方法嘗試幾次仍未解決,偶然發現是因為SPRING MVC的配置檔案上對於org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter這個BEAN的描述重複了,其中一個未新增MappingJacksonHttpMessageConverter的引用
錯誤時的XML配置如下
<bean id="mappingJacksonHttpMessageConverter"
class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<value>application/json; charset=UTF-8</value>
<value>text/html;charset=UTF-8</value>
</list>
</property>
</bean>
<bean id="AnnotationMethodHandlerAdapter"
class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
</bean><!-- 啟動Spring MVC的註解功能,完成請求和註解POJO的對映 -->
<bean
class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
<property name="messageConverters">
<list>
<ref bean="mappingJacksonHttpMessageConverter" /><!-- json轉換器 -->
</list>
</property>
</bean>去掉中間的
<bean id="AnnotationMethodHandlerAdapter"
class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
</bean>之後一切正常
相關推薦
MAVEN+SPRING+MYBATIS整合常見問題
最近在研究J2EE開發,中間碰到不少問題,於是寫下此文,用於記錄這個過程,併為其他與我一樣在路上的朋友提供參考,隨著時間的推移,此文將不斷補充完善通過Server檢視啟動TOMCAT提示錯誤:java.lang.ClassNotFoundException: o
使用IDEA基於Maven搭建多模塊聚合工程(springmvc+spring+mybatis整合)
utf-8 組件 json處理 con mon 博客 quick 作者 處理工具 文章有不當之處,歡迎指正,如果喜歡微信閱讀,你也可以關註我的微信公眾號:好好學java,獲取優質學習資源。 終於有時間搞java了,今天使用IDEA基於maven搭建了多模塊聚合工程,經過了
使用IDEA基於Maven搭建多模組聚合工程(springmvc+spring+mybatis整合)
文章有不當之處,歡迎指正,如果喜歡微信閱讀,你也可以關注我的微信公眾號:好好學java,獲取優質學習資源。 終於有時間搞java了,今天使用IDEA基於maven搭建了多模組聚合工程,經過了多番嘗試,終於成功啦! 注意:這裡是在原作者的基礎上改進的版
SpringMVC Spring MyBatis整合配置文件
isp xmlns manage where spl return 創建 lec common 1、spring管理SqlSessionFactory、mapper 1)在classpath下創建mybatis/sqlMapConfig.xml <?xml vers
.Spring+Mybatis整合
ont 4.3 cati 實例 users frame 數據庫 text manager 一:聲明了四個配置文件 1.spring-Mybatis的配置文件 <?xml version="1.0" encoding="UTF-8"?><beans
解決spring mybatis 整合後mapper接口註入失敗
child nec ddc creates err list xml文件 tran popu spring整合mybatis,在dao層我們只寫一個接口,配置相應的*mapper.xml文件, 報如下錯誤: 1 org.springframework.beans.fac
mybatis學習(十一)——springmvc++spring+mybatis整合
transacti servlet 自動註入 為我 reac content attribute 定義 property 做任何一個項目都以一個需求,這裏先定義一下需求:利用三大框架查詢酒店列表。 一、搭建開發環境 1、創建一個web項目 我這裏用的是 jdk1.8+to
spring-mybatis整合的dao單元測試
app iba 不一致 映射 xxx perm destroy 3.1 那種 在做spring-mybatis整合項目時對Dao所對應的 XXX.xml進行單元測試。整合時是spring和mybatis的整合,所以mybatis.xml文件就沒有了, 對應的配置
spring-mybatis整合項目 異常處理
pat 失敗 encoding endpoint per ans 分隔 ctp 技術分享 java.lang.reflect.InvocationTargetException at java.base/jdk.internal.reflect.NativeMet
spring-mybatis整合異常
AR 原因 警告 jar source mave idea bug AC Failed to read artifact descriptor for XXXXXX:jar:XXXX.RELEAS 原因是maven的本地倉庫沒有設置好。在別處拷貝過來的項目會有自己的倉庫位置
spring+mybatis整合(二)
一、applicationContext.xml配置 <!-- 設定掃描類 --><context:component-scan base-package="com.xxx.xxx"></context:component-scan> <bean id="data
SpringMVC+Spring+Mybatis整合應用(2)
1. 包裝型別pojo物件中pojo屬性引數繫結 1. 對於屬性都是簡單型別的pojo類 如果需要將請求中的引數繫結到該pojo物件形參中,只需要保證請求中攜帶的key/value格式的引數中的key值與pojo類中的
SpringMVC+Spring+Mybatis整合應用(3)
1. 實現圖片上傳 需求:在使用者註冊頁面實現上傳圖片作為使用者頭像 1. springmvc中對多部件型別請求資料解析:在頁面form中提交enctype="multipart/form-data"的資料時,需要springmvc對multipart型別的資料進行
2.SpringMVC+Spring+Mybatis整合(2) 配置web.xml,spring-servlet.xml,applicationContext.xml
web spring-servlet 在 webapp WEB-INF下 applicationContext 在resource資料夾下 <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:
SpringMvc+Spring+Mybatis 整合
1.導jar包 2.整合mybatis+Spring ①建表 ②dao ③spring.xml <!-- 開啟註解掃描 --><!-- service 位置 --> <context:component-scan base-package="com.ya
spring-mybatis整合
maven專案: 配置檔案 pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns
ztree與springmvc+spring+mybatis整合實現增刪改查
在springmvc+spring+mybatis裡整合ztree實現增刪改查,上一篇已經寫了demo,下面就只貼出各層實現功能的程式碼: Jsp頁面實現功能的js程式碼如下: <script> //用於捕獲分類編輯按鈕的 click 事件
Spring+SpringMVC+MyBatis入門實踐(4)Spring + MyBatis整合
本過程基於Mybatis入門進行, 所以在開始之前希望你建庫,表結構,Mybatis的常用用法都已經熟練了。 pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http
spring-mybatis整合的基本步驟
通過幾天spring的學習,我將spring-mybatis整合的步驟總結如下: 因為之前已經用User作為了學習,現在用另一個供應商表Provider為例: 首先,之前的專案目錄結構如下: 程式執行結果如下: 下面重新用provider做一下查詢: 目錄結
Spring框架基礎(三)Spring+Mybatis整合
一,配置檔案 <!-- 開啟自動掃描 --> <context:component-scan base-package="com.lanou.test.*" /> <!-- 資料連線池 --> <!-- 使用的是阿里的連線池,db