Я написал отображение, как, как показано ниже:отображение зимуют создать таблицу
<hibernate-mapping auto-import="true" default-lazy="false">
<class name="com.saman.entity.hibernate.EmployeeEntity"
table="Employee" optimistic-lock="version">
<id name="id" type="java.lang.Integer" >
<column name="Id" />
<generator class="identity"/>
</id>
<timestamp name="version" source="db"/>
<property name="firstName">
<column name="FirstName" sql-type="nvarchar(300)"/>
</property>
<property name="lastName">
<column name="LastName" sql-type="nvarchar(300)"/>
</property>
<property name="employeeType">
<column name="EmployeeType" sql-type="nvarchar(300)"/>
</property>
<!--
<set name="shifts" table="Shifts" inverse="true" lazy="true" fetch="select">
<key>
<column name="Id" not-null="true"/>
</key>
<one-to-many class="com.saman.entity.hibernate.ShiftEntity"/>
</set>
-->
<properties name="u1" unique="true">
<property name="firstName"/>
<property name="lastName"/>
<property name="employeeType"/>
</properties>
</class>
</hibernate-mapping>
когда я запускаю мое приложение возникает ошибка, как показано ниже:
2012-05-15 17: 12: 38,651 - WARN - Неудачная инструкция схемы: create table Employee (Id integer not null auto_increment, version datetime not null, FirstName nvarchar (300), LastName nvarchar (300), EmployeeType nvarchar (300), первичный ключ (Id), уникальный (firstName, lastName , employeeType)) com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: указанный ключ был слишком длинным; длина ключа составляет не более 1000 байт в sun.reflect.NativeConstructorAccessorImpl.newInstance0 (Native Method) в sun.reflect.NativeConstructorAccessorImpl.newInstance (NativeConstructorAccessorImpl.java:39) в sun.reflect.DelegatingConstructorAccessorImpl.newInstance (DelegatingConstructorAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance (Constructor.java:513) at com.mysql.jdbc.Util.handleNewInstance (Util.java:411) at com.mysql.jdbc.Util.getInstance (Util) .java: 386) на com.mysql.jdbc.SQLError.createSQLException (SQLError.java:1052) на com.mysql.jdbc.MysqlIO.checkErrorPacket (MysqlIO.java:3609) в com.mysql.jdbc.MysqlIO .checkErrorPacket (MysqlIO.java:3541) at co m.mysql.jdbc.MysqlIO.sendCommand (MysqlIO.java:2002) at com.mysql.jdbc.MysqlIO.sqlQueryDirect (MysqlIO.java:2163) at com.mysql.jdbc.ConnectionImpl.execSQL (ConnectionImpl.java: 2618) at com.mysql.jdbc.StatementImpl.executeUpdate (StatementImpl.java:1749) at com.mysql.jdbc.StatementImpl.executeUpdate (StatementImpl.java:1666) at com.mchange.v2.c3p0.impl. NewProxyStatement.executeUpdate (NewProxyStatement.java:64) на org.springframework.orm.hibernate3.LocalSessionFactoryBean.executeSchemaStatement (LocalSessionFactoryBean.java:1115) в org.springframework.orm.hibernate3.LocalSessionFactoryBean.executeSchemaScript (LocalSessionFactoryBean.java:1087) на org.springframework.orm.hibernate3.LocalSessionFactoryBean $ 1.doInHibernate (LocalSessionF actoryBean.java:942) на org.springframework.orm.hibernate3.HibernateTemplate.doExecute (HibernateTemplate.java:406) в org.springframework.orm.hibernate3.HibernateTemplate.execute (HibernateTemplate.java:339) в орг. springframework.orm.hibernate3.LocalSessionFactoryBean.updateDatabaseSchema (LocalSessionFactoryBean.java:935) на org.springframework.orm.hibernate3.LocalSessionFactoryBean.afterSessionFactoryCreation (LocalSessionFactoryBean.java:883) в org.springframework.orm.hibernate3.AbstractSessionFactoryBean.afterPropertiesSet (AbstractSessionFactoryBean.java:213) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods (AbstractAutowireCapableBeanFactory.java:1477) at org.springframework.beans.factory.support.AbstractAut owireCapableBeanFactory.initializeBean (AbstractAutowireCapableBeanFactory.java:1417) на org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean (AbstractAutowireCapableBeanFactory.java:519) в org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean (AbstractAutowireCapableBeanFactory. Java: 456) в org.springframework.beans.factory.support.AbstractBeanFactory $ 1.getObject (AbstractBeanFactory.java:291) в org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton (DefaultSingletonBeanRegistry.java:222) на org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean (AbstractBeanFactory.java:288) на org.springframework.beans.factory.support.AbstractBeanFactory.getBean (AbstractBeanFactory.java:190) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons (DefaultListableBeanFactory.java:563) на org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization (AbstractApplicationContext.java:895) в org.springframework.context.support.AbstractApplicationContext.refresh (AbstractApplicationContext.java:425) на org.springframework.context.support.ClassPathXmlApplicationContext. (ClassPathXmlApplicationContext.java:139) на org.springframework.context.support.ClassPathXmlApplicationContext. (ClassPathXmlApplicationContext.java:83) в Main.main (Main.java:18)
В чем проблема с этим?
Я использую mysql и запускаю его на MAMP.
сообщение полной трассировки стека, и после код, вызывающий выброс этого исключения. –
Я изменил его: D – saman