在default/conf下有个文件:standardjbosscmp-jdbc.xml将mssql的mapping 加进去进行了
<type-mapping>
         <name>MS SQLSERVER</name>
         <row-locking-template>SELECT ?1 FROM ?2 with (rowlock) WHERE ?3</row-locking-template>
         <pk-constraint-template>CONSTRAINT ?1 PRIMARY KEY (?2)</pk-constraint-template>
         <fk-constraint-template>ALTER TABLE ?1 ADD CONSTRAINT ?2 FOREIGN KEY (?3) REFERENCES ?4 (?5)</fk-constraint-template>
         <alias-header-prefix>t</alias-header-prefix>
         <alias-header-suffix>_</alias-header-suffix>
         <alias-max-length>32</alias-max-length>
         <subquery-supported>true</subquery-supported>
         <true-mapping>1</true-mapping>
         <false-mapping>0</false-mapping>         <function-mapping>
            <function-name>concat</function-name>
            <function-sql>(?1 + ?2)</function-sql>
         </function-mapping>    
         <function-mapping>
            <function-name>substring</function-name>
            <function-sql>substring(?1, ?2, ?3)</function-sql>
         </function-mapping>    
         <function-mapping>
            <function-name>lcase</function-name>
            <function-sql>lower(?1)</function-sql>
         </function-mapping>    
         <function-mapping>
            <function-name>length</function-name>
            <function-sql>len(?1)</function-sql>
         </function-mapping>    
         <function-mapping>
            <function-name>locate</function-name>
            <function-sql>charindex(?1, ?2, ?3)</function-sql>
         </function-mapping>    
         <function-mapping>
            <function-name>abs</function-name>
            <function-sql>abs(?1)</function-sql>
         </function-mapping>    
         <function-mapping>
            <function-name>sqrt</function-name>
            <function-sql>sqrt(?1)</function-sql>
         </function-mapping>    
         <function-mapping>
            <function-name>ucase</function-name>
            <function-sql>upper(?1)</function-sql>
         </function-mapping>    
    
         <mapping>
            <java-type>java.lang.Integer</java-type>
            <jdbc-type>INTEGER</jdbc-type>
            <sql-type>INTEGER</sql-type>
         </mapping>
         <mapping>
            <java-type>java.lang.Character</java-type>
            <jdbc-type>CHAR</jdbc-type>
            <sql-type>CHAR</sql-type>
         </mapping>
         <mapping>
            <java-type>java.lang.Short</java-type>
            <jdbc-type>SMALLINT</jdbc-type>
            <sql-type>SMALLINT</sql-type>
         </mapping>
         <mapping>
            <java-type>java.lang.Double</java-type>
            <jdbc-type>DOUBLE</jdbc-type>
            <sql-type>DOUBLE</sql-type>
         </mapping>
         <mapping>
            <java-type>java.lang.Long</java-type>
            <jdbc-type>DECIMAL</jdbc-type>
            <sql-type>DECIMAL(20)</sql-type>
         </mapping>
         <mapping>
            <java-type>java.math.BigDecimal</java-type>
            <jdbc-type>VARCHAR</jdbc-type>
            <sql-type>VARCHAR(256)</sql-type>
         </mapping>
         <mapping>
            <java-type>java.lang.String</java-type>
            <jdbc-type>VARCHAR</jdbc-type>
            <sql-type>VARCHAR(256)</sql-type>
         </mapping>
         <mapping>
            <java-type>java.lang.Object</java-type>
            <jdbc-type>JAVA_OBJECT</jdbc-type>
            <sql-type>IMAGE</sql-type>
         </mapping>
         <mapping>
            <java-type>java.lang.Byte</java-type>
            <jdbc-type>TINYINT</jdbc-type>
            <sql-type>TINYINT</sql-type>
         </mapping>
         <mapping>
            <!--
            | Note that you lose granularity here
            | Use a numeric type and store milliseconds if you really need it
            -->
            <java-type>java.sql.Timestamp</java-type>
            <jdbc-type>TIMESTAMP</jdbc-type>
            <sql-type>DATETIME</sql-type>
         </mapping>
         <mapping>
            <java-type>java.sql.Date</java-type>
            <jdbc-type>DATE</jdbc-type>
            <sql-type>DATETIME</sql-type>
         </mapping>
         <mapping>
            <java-type>java.sql.Time</java-type>
            <jdbc-type>TIME</jdbc-type>
            <sql-type>DATETIME</sql-type>
         </mapping>
         <mapping>
            <java-type>java.util.Date</java-type>
            <jdbc-type>TIMESTAMP</jdbc-type>
            <sql-type>DATETIME</sql-type>
         </mapping>
         <mapping>
            <java-type>java.lang.Boolean</java-type>
            <jdbc-type>BIT</jdbc-type>
            <sql-type>BIT</sql-type>
         </mapping>
         <mapping>
            <java-type>java.lang.Float</java-type>
            <jdbc-type>FLOAT</jdbc-type>
            <sql-type>FLOAT</sql-type>
         </mapping>
      </type-mapping>

解决方案 »

  1.   


          <type-mapping> 
             <name>MS SQLSERVER2000</name> 
             <row-locking-template>SELECT ?1 FROM ?2 with (rowlock) WHERE ?3</row-locking-template>
             <pk-constraint-template>CONSTRAINT ?1 PRIMARY KEY (?2)</pk-constraint-template>
             <fk-constraint-template>ALTER TABLE ?1 ADD CONSTRAINT ?2 FOREIGN KEY (?3) REFERENCES ?4 (?5)</fk-constraint-template>
             <alias-header-prefix>t</alias-header-prefix>
             <alias-header-suffix>_</alias-header-suffix>
             <alias-max-length>32</alias-max-length>
             <subquery-supported>true</subquery-supported>
             <true-mapping>1</true-mapping>
             <false-mapping>0</false-mapping>         <function-mapping>
                <function-name>concat</function-name>
                <function-sql>(?1 + ?2)</function-sql>
             </function-mapping>    
             <function-mapping>
                <function-name>substring</function-name>
                <function-sql>substring(?1, ?2, ?3)</function-sql>
             </function-mapping>    
             <function-mapping>
                <function-name>lcase</function-name>
                <function-sql>lower(?1)</function-sql>
             </function-mapping>    
             <function-mapping>
                <function-name>length</function-name>
                <function-sql>len(?1)</function-sql>
             </function-mapping>    
             <function-mapping>
                <function-name>locate</function-name>
                <function-sql>charindex(?1, ?2, ?3)</function-sql>
             </function-mapping>    
             <function-mapping>
                <function-name>abs</function-name>
                <function-sql>abs(?1)</function-sql>
             </function-mapping>    
             <function-mapping>
                <function-name>sqrt</function-name>
                <function-sql>sqrt(?1)</function-sql>
             </function-mapping>    
             <function-mapping>
                <function-name>ucase</function-name>
                <function-sql>upper(?1)</function-sql>
             </function-mapping>    
        
             <mapping> 
                <java-type>java.lang.Integer</java-type> 
                <jdbc-type>INTEGER</jdbc-type> 
                <sql-type>INTEGER</sql-type> 
             </mapping> 
        
             <mapping> 
                <java-type>java.lang.Character</java-type> 
                <jdbc-type>CHAR</jdbc-type> 
                <sql-type>CHAR</sql-type> 
             </mapping> 
        
             <mapping> 
                <java-type>java.lang.Short</java-type> 
                <jdbc-type>SMALLINT</jdbc-type> 
                <sql-type>SMALLINT</sql-type> 
             </mapping> 
        
             <mapping> 
                <java-type>java.lang.Long</java-type> 
                <jdbc-type>BIGINT</jdbc-type> 
                <sql-type>BIGINT</sql-type> 
             </mapping> 
        
             <mapping> 
                <java-type>java.math.BigDecimal</java-type> 
                <jdbc-type>VARCHAR</jdbc-type> 
                <sql-type>VARCHAR(256)</sql-type> 
             </mapping> 
        
             <mapping> 
                <java-type>java.lang.String</java-type> 
                <jdbc-type>VARCHAR</jdbc-type> 
                <sql-type>VARCHAR(256)</sql-type> 
             </mapping> 
        
             <mapping> 
                <java-type>java.lang.Object</java-type> 
                <jdbc-type>LONGVARBINARY</jdbc-type> 
                <sql-type>IMAGE</sql-type> 
             </mapping> 
        
             <mapping> 
                <java-type>java.lang.Byte</java-type> 
                <jdbc-type>TINYINT</jdbc-type> 
                <sql-type>TINYINT</sql-type> 
             </mapping> 
        
             <mapping> 
                <!--
                | Note that you lose granularity here
                | Use a numeric type and store milliseconds if you really need it
                -->
                <java-type>java.sql.Timestamp</java-type> 
                <jdbc-type>TIMESTAMP</jdbc-type> 
                <sql-type>DATETIME</sql-type> 
             </mapping> 
        
             <mapping> 
                <java-type>java.sql.Date</java-type> 
                <jdbc-type>DATE</jdbc-type> 
                <sql-type>DATETIME</sql-type> 
             </mapping> 
        
             <mapping> 
                <java-type>java.sql.Time</java-type> 
                <jdbc-type>TIME</jdbc-type> 
                <sql-type>DATETIME</sql-type> 
             </mapping> 
        
             <mapping> 
                <java-type>java.util.Date</java-type> 
                <jdbc-type>TIMESTAMP</jdbc-type> 
                <sql-type>DATETIME</sql-type> 
             </mapping> 
        
             <mapping> 
                <java-type>java.lang.Boolean</java-type> 
                <jdbc-type>BIT</jdbc-type> 
                <sql-type>BIT</sql-type> 
             </mapping> 
        
             <mapping> 
                <java-type>java.lang.Float</java-type> 
                <jdbc-type>REAL</jdbc-type> 
                <sql-type>REAL</sql-type> 
             </mapping> 
        
             <mapping> 
                <java-type>java.lang.Double</java-type> 
                <jdbc-type>DOUBLE</jdbc-type> 
                <sql-type>FLOAT</sql-type> 
             </mapping> 
          </type-mapping>
      

  2.   

    上面的回复好像不全对,因为你并没有使我自己写的bean中的字段与表中结合起来!
    不如id,name等等。