Blog信息 |
blog名称: 日志总数:1304 评论数量:2242 留言数量:5 访问次数:7587505 建立时间:2006年5月29日 |

| |
[Hibernate]hibernate uuid.hex主键生成+spring带来的困惑 软件技术, 电脑与网络
lhwork 发表于 2006/7/1 21:40:07 |
第二次插入就报错?表结构500)this.width=500'>CREATE TABLE `cloumn` (500)this.width=500'> `c_id` varchar(16) NOT NULL,500)this.width=500'> `u_id` varchar(16) default NULL,500)this.width=500'> `c_name` varchar(100) default NULL,500)this.width=500'> `c_sort` int(11) default NULL,500)this.width=500'> `c_beizhu` varchar(100) ,500)this.width=500'> PRIMARY KEY (`c_id`)500)this.width=500'> 500)this.width=500'>)500)this.width=500'>2.配置文件500)this.width=500'><?xml version="1.0" encoding='UTF-8'?>500)this.width=500'><!DOCTYPE hibernate-mapping PUBLIC500)this.width=500'> "-//Hibernate/Hibernate Mapping DTD 3.0//EN"500)this.width=500'> "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd" >500)this.width=500'>500)this.width=500'><hibernate-mapping>500)this.width=500'><class500)this.width=500'> name="hibernate3test.dal.Cloumn"500)this.width=500'> table="cloumn"500)this.width=500'>>500)this.width=500'> <id name="cid" type="java.lang.String" column="c_id" >//uuid.hex生成方式500)this.width=500'> <generator class="uuid.hex" />500)this.width=500'> </id>500)this.width=500'> <property name="u_id" type="java.lang.String" column="u_id" />500)this.width=500'> <property name="cname" type="java.lang.String" column="c_name" />500)this.width=500'> <property name="csort" type="java.lang.Integer" column="c_sort" />500)this.width=500'> <property name="cbeizhu" type="java.lang.String" column="c_beizhu" />500)this.width=500'>500)this.width=500'></class>500)this.width=500'></hibernate-mapping>500)this.width=500'>spring配置文件500)this.width=500'> <bean id="test" class="hibernate3test.dal.dal">500)this.width=500'> 500)this.width=500'> <property name="sessionFactory"><ref local="sessionFactory"/></property> 500)this.width=500'> </bean>vo 500)this.width=500'>500)this.width=500'>public class Cloumn implements Serializable 500)this.width=500'>{500)this.width=500'>500)this.width=500'> private String cid;500)this.width=500'> private String u_id;500)this.width=500'> private String cname;500)this.width=500'> private Integer csort;500)this.width=500'> private String cbeizhu;500)this.width=500'>500)this.width=500'> public Cloumn() 500)this.width=500'>{500)this.width=500'> }500)this.width=500'>//geter setterdao 代码500)this.width=500'>package hibernate3test.dal;500)this.width=500'>import org.springframework.orm.hibernate3.support.HibernateDaoSupport;500)this.width=500'>500)this.width=500'>500)this.width=500'>public class dal extends HibernateDaoSupport 500)this.width=500'>{500)this.width=500'>500)this.width=500'> public dal() 500)this.width=500'>{500)this.width=500'> }500)this.width=500'> public void addCloumn()500)this.width=500'>500)this.width=500'> 500)this.width=500'>{500)this.width=500'> Cloumn cc = new Cloumn();500)this.width=500'> cc.setU_id("297ebd930b46197a");500)this.width=500'> cc.setCname("测试添加拦目1");500)this.width=500'> cc.setCbeizhu("备注");500)this.width=500'> cc.setCsort(1);500)this.width=500'> this.getHibernateTemplate().save(cc);500)this.width=500'> }测试500)this.width=500'> public static void main(String args[])500)this.width=500'>500)this.width=500'> 500)this.width=500'>{500)this.width=500'> //加载spring配置文件500)this.width=500'> Resource rs=new ClassPathResource("appcontext.xml");500)this.width=500'> BeanFactory factory=new XmlBeanFactory(rs);500)this.width=500'>//得到dal500)this.width=500'> dal dao=(dal)factory.getBean("test");500)this.width=500'>//添加500)this.width=500'> dao.addCloumn();500)this.width=500'> //第二次再次添加就报错..??500)this.width=500'> //dao.addCloumn();500)this.width=500'> }怎么会这样,第一次可以添加进数据库,第二次再调用dao.addCloumn()就报错?这样做应该是没有问题的啊?? |
|
|