org.hibernate.MappingException: Could not determine type for: java.lang.string

来源:互联网 发布:java典型编题 编辑:程序博客网 时间:2024/05/19 11:50

唉,纠结很久,看到一个帖子,很管用呀,问题解决了。贴上帖子原文:

http://topic.csdn.net/u/20070403/15/141cfe0c-0682-45de-86e5-c684cd607ef3.html

 

我的映射文件中是这样写的:
<property
                name= "operatorName "
                type= "java.lang.String "
                column= "operator_name "
                length= "10 "
        >
        </property>

数据库是sybase的,对应数据类型为:varchar(10)。

启动后出现上面的错误,请问是什么原因?谢谢。
org.hibernate.MappingException:   Could   not   determine   type   for:   java.lang.string,   for   columns:   [org.hibernate.mapping.Column(addressip)]
at   org.hibernate.mapping.SimpleValue.getType(SimpleValue.java:266)
at   org.hibernate.mapping.SimpleValue.isValid(SimpleValue.java:253)
at   org.hibernate.mapping.Property.isValid(Property.java:184)
at   org.hibernate.mapping.PersistentClass.validate(PersistentClass.java:370)
at   org.hibernate.mapping.RootClass.validate(RootClass.java:192)
at   org.hibernate.cfg.Configuration.validate(Configuration.java:983)
at   org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1147)

 

 

 

解决办法:

 

引用 7 楼 qlyiua888 的回复:
type指的是hibernate中的类型,不是java中的String类型,必须小写,同样如integer也是要小写
这才说的对 把java.lang.String 换成 string 就对了