MyBatis 错误总结

来源:互联网 发布:静态个人引导页源码 编辑:程序博客网 时间:2024/05/21 07:42
-----------mybatis下载及中文文档


http://mybatis.github.io/mybatis-3/zh/index.html // 中文文档
https://github.com/mybatis/mybatis-3/releases //下载


一、注意 配置为文件不一样
mybatis.xml:


<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD  Config 3.0//EN"               
"http://mybatis.org/dtd/mybatis-3-config.dtd">
mapper.xml


<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">

或者下面的配置
mybatis.xml:
<!DOCTYPE configuration PUBLIC "-//ibatis.apache.org//DTD Config 3.0//EN"
"http://ibatis.apache.org/dtd/ibatis-3-config.dtd" >
mapper.xml
<!DOCTYPE mapper PUBLIC "-//ibatis.apache.org//DTD Mapper 3.0//EN"
"http://ibatis.apache.org/dtd/ibatis-3-mapper.dtd" >


二 注意  namespace 问题
<!-- <mapper namespase="com.domain.DeptMapper" >  ----# namespace 不是namespase!---有木有写错过?
<insert id="addDept" parameterType="com.domain.Dept">
insert into t_dept (deptno,dname,loc)
values (#{deptno},#{dname},#{loc})
       </insert>
   </mapper>
 -->
<mapper namespace="com.domain.DeptMapper">
<insert id="addDept" parameterType="com.domain.Dept">
insert into t_dept (deptno,dname,loc)
values (#{deptno},#{dname},#{loc})
</insert>
</mapper>
 
三、插件版本错误 
java.lang.UnsupportedClassVersionError: org/apache/commons/dbcp2/BasicDataSource : 
Unsupported major.minor version 51.0 这里支持jdk 1.7
commons-dbcp2.jar
commons-pool2.jar
上面的架包 仅支持1.7 的jdk
 
自定义MyBatisRepository 1.7jdk 版本不认!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 
@Repository
  public @interface MyBatisRepository {


   String value() default "";
  }
    org.springframework.beans.factory.BeanDefinitionStoreException:
    Failed to read candidate component class: file 
    [D:\apache-tomcat-7.0.57\webapps\SpringMVCMyBatisDemo\WEB-INF\classes\com\dao\EmpDao.class]; 
    nested exception is java.lang.UnsupportedClassVersionError: 
    com/annotation/MyBatisRepository : Unsupported major.minor version 51.0 
    (unable to load class com.annotation.MyBatisRepository)
    
    注解不支持1.7jdk 换成1.6 则不报错
 
四、Spring 配置错误!!!!  
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'MyDateSource' 
defined in class path resource [applicationContext.xml]: Initialization of bean failed; 
nested exception is org.springframework.beans.ConversionNotSupportedException: 
Failed to convert property value of type 'java.lang.String' to required type 'java.sql.Driver' 
for property 'driver'; nested exception is java.lang.IllegalStateException:
Cannot convert value of type [java.lang.String] to required type [java.sql.Driver] for property 'driver': 
no matching editors or conversion strategy found
 
applicationContext.xml 如下配置正确
<!-- Datasource -->
<bean id="MyDateSource" class="org.apache.commons.dbcp2.BasicDataSource"
destroy-method="close">
<!--<property name="driver" value="com.mysql.jdbc.Driver" /> spring 这样配置则报错 -->
<property name="driverClassName" value="com.mysql.jdbc.Driver"/> 
<property name="url" value="jdbc:mysql://localhost:3306/mybatistest" />
<property name="username" value="root" />
<property name="password" value="zxd123" />
</bean>
<!-- 定义 sqlSessionFactory -->


<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"><!-- 这里的包路径要正确-->
<property name="dataSource" ref="MyDateSource" />
<property name="mapperLocations" value="classpath:com/domain/*.xml" />
</bean>


<!-- 定义 Mapper -->
<bean id="deptMapper" class="org.mybatis.spring.mapper.MapperFactoryBean"><!-- 这里的包路径要正确-->
<property name="mapperInterface" value="com.mapper.DeptMapper" />
<property name="sqlSessionFactory" ref="sqlSessionFactory" />
</bean>


五、jsp 页面错误
org.apache.jasper.JasperException: /WEB-INF/jsp/emp_list.jsp (line: 34, column: 8) 
According to TLD or attribute directive in tag file, attribute items does not accept any expressions

1、将<%@taglib prefix="c" uri="http://java.sun.com/jstl/core"%> 
           更改为  
            Java代码  
                 <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>  


      2、使用JSTL的备用库, 
           将<%@taglib prefix="c" uri="http://java.sun.com/jstl/core"%> 
           更改为
          Java代码  
         <%@taglib prefix="c" uri="http://java.sun.com/jstl/core_rt"%> 
0 0
原创粉丝点击