您的位置:首页 > 其它

hibernate学习日志二:动态模型方法映射

2013-08-23 11:10 393 查看
在网上乱逛逛的眼都花了最后得到一大堆垃圾,还不如直接看书。----网络的弊端。

下载了一本《深入浅出hibernate》,发现一个用map格式实现表保存的,其实这是另外一种格式的ResultMap.

首先在数据库中新建一个表Admin,有字段id和name。

然后在com.csdn.model包下新建一个Admin.hbm.xml文件,这里就不用建实体类了。

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="com.csdn.model">
<class entity-name="DynamicUserMap" table="Admin">
<id name="id" column="id" type="java.lang.Integer">
<generator class="native"/>
</id>
<property name="name" type="java.lang.String" column="name"/>
</class>
</hibernate-mapping>然后在Test类中加入如下代码(上个例子其它代码省略):
Map adminMap=new HashMap();
adminMap.put("name", "chenweiwei");

session.save("DynamicUserMap",adminMap);运行竟然报错了:
Exception in thread "main" org.hibernate.exception.GenericJDBCException: could not insert: [DynamicUserMap]
Caused by: java.sql.SQLException: Field 'id' doesn't have a default value
在网上搜了一下错误:http://blog.csdn.net/q283595518/article/details/4122053,这哥们说我没有设置自增,我的数据库中的表是用设计表的形式建的,确实不记得有添加过自增,修改设计表,勾选自增选项,再次运动保存,成了

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: