异常信息工具类:(根据key获取响应的异常信息)
Messages.java
/* * Copyright 2006 The Apache Software Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.mybatis.generator.internal.util.messages; import java.text.MessageFormat; import java.util.MissingResourceException; import java.util.ResourceBundle; /** * @author Jeff Butler */ public class Messages { private static final String BUNDLE_NAME = "org.mybatis.generator.internal.util.messages.messages"; //$NON-NLS-1$ private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle .getBundle(BUNDLE_NAME); private Messages() { } public static String getString(String key) { try { return RESOURCE_BUNDLE.getString(key); } catch (MissingResourceException e) { return '!' + key + '!'; } } public static String getString(String key, String parm1) { try { return MessageFormat.format(RESOURCE_BUNDLE.getString(key), new Object[] { parm1 }); } catch (MissingResourceException e) { return '!' + key + '!'; } } public static String getString(String key, String parm1, String parm2) { try { return MessageFormat.format(RESOURCE_BUNDLE.getString(key), new Object[] { parm1, parm2 }); } catch (MissingResourceException e) { return '!' + key + '!'; } } public static String getString(String key, String parm1, String parm2, String parm3) { try { return MessageFormat.format(RESOURCE_BUNDLE.getString(key), new Object[] { parm1, parm2, parm3 }); } catch (MissingResourceException e) { return '!' + key + '!'; } } }
异常信息定义类:
messages.properties
ValidationError.0=JavaModelGenerator Target Project is Required for context {0} ValidationError.1=SQLMapGenerator Target Project is Required for context {0} ValidationError.2=DAOGenerator Target Project is Required for context {0} ValidationError.3=No Tables Specified for context {0} ValidationError.4=JDBC Driver Class Must Be Specified ValidationError.5=JDBC Connection URL Must Be Specified ValidationError.6=Missing table name in table configuration at index {0} ValidationError.7=SQL Statement is required if a generated key is specified in table configuration for table {0} ValidationError.8=JavaModelGeneratorConfiguration is required for context {0} ValidationError.9=SqlMapGeneratorConfiguration is required for context {0} ValidationError.10=JdbcConnectionConfiguration is required for context {0} ValidationError.11=At least one configuration element is required ValidationError.12={0} Target Package is Required for context {1} ValidationError.13=If "useColumnIndexes" property is set, then either both or neither query id must be set for table {0} ValidationError.14="searchString" is required for ColumnRenamingRule in table {0} ValidationError.15=Generated key type must be either "pre" or "post" if the type is specified for a generated key for table {0} ValidationError.16="id" is required in a context ValidationError.17="type" is required in a plugin in context {0} ValidationError.18={0} requires the {1} property ValidationError.19=A null or empty string is not allowed for a classpath entry ValidationError.20="type" is required for DAO Generator in context {0} ValidationError.21="column" is required for <ignoredColumn> in table {0} ValidationError.22="column" is required for <columnOverride> in table {0} ValidationError.23=Generated key in table {0} cannot be both "pre" and identity ValidationError.24=Generated key in table {0} cannot be both "post" and not identity ValidationError.25=targetRuntime in context {0} is invalid RuntimeError.0=configfile is a required parameter RuntimeError.1=configfile {0} does not exist RuntimeError.2=Configuration is required RuntimeError.3=Cannot generate unique file name in directory {0} RuntimeError.4=XML Parser Error on line {0}: {1} RuntimeError.5=This is not a MyBatis Generator Configuration File RuntimeError.6=Cannot instantiate object of type {0} RuntimeError.7=Cannot connect to database (possibly bad driver/URL combination) RuntimeError.8=Exception getting JDBC Driver RuntimeError.9=Cannot resolve classpath entry: {0} RuntimeError.11=Enumerations do not have super classes RuntimeError.12=Internal Error - Cannot calculate record type for selectByExample method RuntimeError.13=Invalid model type: {0} RuntimeError.14=Either resource or URL is required on the <properties> element, but not both RuntimeError.15=<properties> resource {0} does not exist RuntimeError.16=Cannot load properties from <properties> resource {0} RuntimeError.17=Cannot load properties from <properties> url {0} RuntimeError.18=Unsupported XML Node Type {0} in XML File Merger RuntimeError.19=Value missing after {0} RuntimeError.20=Unknown argument: {0} RuntimeError.21=Error creating logger for class {0}. Cause: {1} RuntimeError.22=Invalid Type Specification: {0}. Warning.0=There are no statements enabled for table {0}, this table will be ignored. Warning.1=Table {0} does not exist, this table will be ignored Warning.2=Existing file not overwritten, the generated file is saved as {0} Warning.3=Column {0}, specified for override in table {1}, does not exist in the table. Warning.4=Column {0}, specified to be ignored in table {1}, does not exist in the table. Warning.5=Column {0}, specified as an identity column in table {1}, does not exist in the table. Warning.6=Column {0}, specified as a generated key column in table {1}, does not exist in the table. Warning.7=XML Parser Warning on line {0}: {1} Warning.9=The specified target project directory {0} does not exist Warning.10=Cannot create directory {0} Warning.11=Existing file {0} was overwritten Warning.12=The existing XML file {0} is not the same format as the generated file. The existing file will not be changed. Warning.13=Exception while attempting to merge the XML file {0}. The existing file will not be changed. Warning.14=Unsupported Data Type {0} in table {1}, column: {2}, property defaults to Object type. Warning.15=Cannot obtain primary key information from the database, generated objects may be incomplete Warning.16=Invalid value for exampleMethodVisibility specified ({0}), defaulting to public Warning.17=Cannot instantiate DAO method name calculator of type {0}, using default calculator Warning.18=Table {0} contains only LOB fields, this table will be ignored Warning.19=Table configuration with catalog {0}, schema {1}, and table {2} did not resolve to any tables Warning.20=Root class {0} cannot be loaded, checking for member overrides is disabled for this class Warning.21=Property {0} exists in root class {1}, but is not of type {2}. MyBatis Generator will generate the property. Warning.22=Property {0} exists in root class {1}, but does not have a getter. MyBatis Generator will generate the property. Warning.23=Property {0} exists in root class {1}, but does not have a setter. MyBatis Generator will generate the property. Warning.24=Plugin {0} in context {1} is invalid and will be ignored. Warning.25=Table Configuration {0} matched more than one table ({1}) Progress.0=Connecting to the Database Progress.1=Introspecting table {0} Progress.3=XML Parser Errors occurred: Progress.4=MyBatis Generator finished successfully. Progress.5=MyBatis Generator finished successfully, there were warnings. Progress.6=Generating Example class for table {0} Progress.7=Generating Primary Key class for table {0} Progress.8=Generating Record class for table {0} Progress.9=Generating Record class (with BLOBs) for table {0} Progress.12=Generating SQL Map for table {0} Progress.13=Found SQL Statement: {0} Progress.14=Generating DAO Interface and Implementation for table {0} Progress.15=Saving file {0} Progress.16=Invalid configuration. Details follow... Progress.17=Generating Mapper Interface for table {0} Progress.18=Generating SQL Provider for table {0} Tracing.1=Retrieving column information for table "{0}" Tracing.2=Found column "{0}", data type {1}, in table "{2}" Tracing.3=Removing column "{0}" in table "{1}" because it is ignored by configuration Tracing.4=Found override for column "{0}" in table "{1}" Usage.Lines=27 Usage.0=MyBatis Generator - a code generator for MyBatis and iBATIS. Usage: Usage.1= java -jar mybatis-generator-core-x.x.x.jar -configfile file_name Usage.2= [-overwrite] [-contextids ids] [-tables tableNames] Usage.3= [-forceJavaLogging] [-verbose] [-?|-h] Usage.4= Usage.5=Where: Usage.6= -configfile: Specifies the name of the XML configuration file (required) Usage.7= Usage.8= -overwrite: If specified then existing Java files will be overwritten. Usage.9= If not specified, then the generator will not overwrite Usage.10= existing Java files (will save results in uniquely named files) Usage.11= Usage.12= -contextids: Used to specify a comma delimited list of contexts to use in Usage.13= this invocation. If not specified, all contexts will be used. Usage.14= Usage.15= -tables: Used to specify a comma delimited list of tables to use in this Usage.16= invocation. If not specified, all tables will be used. Table Usage.17= names must be fully qualified (e.g. schema.tablename). Table names Usage.18= must exactly match the case specified in the configuration file. Usage.19= Usage.20= -forceJavaLogging: Force the use of standard Java logging even if Log4J is Usage.21= is available in the runtime classpath. If not specified, Usage.22= Log4J will be used if it is available at runtime. Usage.23= Usage.24= -verbose: If specified, write progress messages to the console. Usage.25= Usage.26= -?|-h: Display this help text and exit.