【mybatis generator的报错】前期配置问题!!!!!官方文件看了一直也一头雾水

错误如下

Description Resource Path Location Type
The content of element type "context" must match "(property*,plugin*,commentGenerator?,(connectionFactory|jdbcConnection),javaTypeResolver?,javaModelGenerator,sqlMapGenerator?,javaClientGenerator?,table+)". generatorConfig.xml /oracle/generator line 4 XML Problem

指向的代码错误是这样的

<generatorConfiguration>
 <context id="oracleTables" defaultModelType="hierachical" targetRuntime="MyBatis3">

错误指向context id 改了半天一直报错。。难道是pom.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>
  <context id="oracleTables" defaultModelType="hierachical" targetRuntime="MyBatis3">

    <!-- 自动识别数据库关键字段,默认false -->
    <property name="autoDelimitKeywords" value="false"/>  

    <!-- 生成的Java文件的编码 -->
    <property name="javaFileEncoding" value="UTF-8"/>

    <!-- 格式化XML代码 -->
    <property name="xmlFormatter" value="org.mybatis.generator.api.dom.DefaultXmlFormatter"/>

    <!-- 指明数据库的用于标记数据库对象名的符号 -->
    <property name="beginningDelimiter" value='"'/>
    <property name="endingDelimiter" value='"'/>

    <!-- 连接oracle -->
    <jdbcConnection connectionURL="jdbc:oracle:thin:@localhost:1521:orcl" 
    driverClass="oracle.jdbc.driver.OracleDriver"
    password="S123456" userId="c##refeal" />

     <!-- Java类型处理器 -->
    <javaTypeResolver type="org.mybatis.generator.internal.types.JavaTypeResolverDefaultImpl">
    <property name="forceBigDecimals" value="false"/>
    </javaTypeResolver>

    <!-- Java模型创建器 -->
    <javaModelGenerator targetPackage="com.SJY.domain" targetProject="src/main/java" />
    <!-- for mabatis3
        自动为每个生成的类创建一个构造方法
     -->
    <property name="constructorBased" value="false"/>

    <!-- 在targetPachage的基础上,根据数据库的schema再生成一层package,最终生成的类放到这个package下 -->
    <property name="enableSubPackages" value="true"/>

    <!-- for MyBatis3 
        是否创建一个不可变类
    -->
    <property name="immutable" value="false"/>

    <!-- 设置是否在getter方法中,对String类型字段调用trim()方法 -->
    <property name="rootClass" value="com.sjy.domain"/>

    <!-- 生成SQLmap的XML文件生成器 -->
    <sqlMapGenerator targetPackage="com.SJY.dao" targetProject="src/main/resources" />
     <!-- 在targetPackage的基础上,根据数据库的schema再生成一层package -->
    <property name="enableSubPackages" value="true"/>

    <!-- 生成mapper接口 -->
    <javaClientGenerator targetPackage="com.SJY.domain" targetProject="src/main/java" type="XMLMAPPER" />
    <!-- 在targetPackage的基础上,根据数据库的schema再生成一层package -->
    <property name="enableSubPackages" value="true"/>

    <!-- 与数据库相对应 -->
    <table schema="" tableName="SJY_YH_YHXXB" domainObjectName="YH_YHXXB" mapperName="YH_YHXXBMapper"
        enableUpdateByExample="true" enableDeleteByExample="true"
        enableSelectByExample="true" selectByExampleQueryId="true">
        <generatedKey column="USERID" sqlStatement="SELECT SJY_YH_YHXXB_SEQUENCE.nextval AS USERID from DUAL"/>
      <columnOverride column="USERID" property="???" />
    </table>
  </context>
</generatorConfiguration>

表字段暂时可以无视吧

refealbellic
refealbellic 于是乎。。自己重写了一遍。原来是在生成文件上直接改的。各种报错。。。。自己写才会弹出</xxxx>..
9 个月之前 回复

1个回答

完整的xml文件贴一下,应该是少了其他标签,

"context" must match "(property*,plugin*,commentGenerator?,(connectionFactory|jdbcConnection),javaTypeResolver?,javaModelGenerator,sqlMapGenerator?,javaClientGenerator?,table+

这里说了,比如你还要在context里加

<!--设置编码格式-->
        <property name="javaFileEncoding" value="UTF-8"/>

等等

refealbellic
refealbellic 回复Amo_lt: 解决了。。我之前是从其他地方贴过来的代码。。后来直接全部重写一遍。。没错了
9 个月之前 回复
Amo_lt
Amo_lt 回复refealbellic: 解决了吗?怎么我看到采纳回答了>_<
9 个月之前 回复
refealbellic
refealbellic 贴了。在上面。。设置编码格式我也设了
9 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问