亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

請問為什么使用hibernate不能插入數據庫,沒有什么反應?

請問為什么使用hibernate不能插入數據庫,沒有什么反應?

蝴蝶刀刀 2022-01-07 11:07:48
applicationContext.xml:<property name="password"><value>123456</value><prop key="hibernate.show_sql">true</prop></props></property>Person.hbm.xml:<hibernate-mapping><class name="moon.vo.Person" table="person" ><id name="id" type="java.lang.String"><column name="id" length="32" /><generator class="assigned"></generator></id><property name="username" type="java.lang.String"><column name="username" length="20" /></property><property name="password" type="java.lang.String"><column name="password" length="9" /></property></class></hibernate-mapping>Person.java:private String id;private String username;private String password;已生成相應的get和set方法operate類:package moon.dao;import moon.vo.*;import org.springframework.orm.hibernate3.support.HibernateDaoSupport;public class operate extends HibernateDaoSupport{public void insert(Person person){this.getHibernateTemplate().getSessionFactory().openSession().save(person);this.getSession().beginTransaction().commit();}}test類:public class test {public static void main(String[] args){ApplicationContext ctx=new ClassPathXmlApplicationContext("applicationContext.xml");Person p=new Person();p.setId("id8457564");p.setUsername("admin");p.setPassword("password");operate op=(operate)ctx.getBean("persondao");op.insert(p);}}插入時沒有反應,數據也不插入數據庫
查看完整描述

2 回答

?
蠱毒傳說

TA貢獻1895條經驗 獲得超3個贊

public void insert(Person person)
{
Session session=this.getSession();
Transaction tran=session.beginTransaction();
session.save(person);
tran.commit();
}



查看完整回答
反對 回復 2022-01-10
?
慕桂英3389331

TA貢獻2036條經驗 獲得超8個贊

applicationContext.xml:
<beans>
<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName">
<value>com.mysql.jdbc.Driver</value>
</property>
<property name="url">
<value>jdbc:mysql://localhost:3306/login</value>
</property>
<property name="username">
<value>root</value>
</property>
<property name="password">
<value>123456</value>
</property>
</bean>
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="dataSource" />
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.MySQLDialect
</prop>
<prop key="hibernate.show_sql">true</prop>
</props>
</property>
<property name="mappingResources">
<list>
<value>moon/vo/Person.hbm.xml</value></list>
</property></bean>
<bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate">
<property name="sessionFactory">
<ref bean="sessionFactory"/>
</property>
</bean>
<bean id="persondao" class="moon.dao.operate">
<property name="hibernateTemplate">
<ref bean="hibernateTemplate"/>
</property>
</bean>

<!-- 聲明一個 Hibernate 3 的 事務管理器供代理類自動管理事務用 -->
<bean id="transactionManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory">
<ref local="sessionFactory" />
</property>
</bean>

<bean id="persondaoProx"
class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
<property name="transactionManager">
<ref bean="transactionManager" />
</property>

<!-- 注意這個屬性, 必須為 true 使用 CGLIB 才不用強制編寫被代理類的接口 -->
<property name="proxyTargetClass">
<value>true</value>
</property>
<property name="target">
<ref local="persondao" />
</property>
<property name="transactionAttributes">
<props>
<!-- 這里的方法簽名可以精確到方法, 先懶惰一下全配置上 -->
<prop key="*">PROPAGATION_REQUIRED</prop>
</props>
</property>
</bean>

</beans>

test類:
public class test {
public static void main(String[] args)
{
ApplicationContext ctx=new ClassPathXmlApplicationContext("applicationContext.xml");
Person p=new Person();
p.setId("id8457564");
p.setUsername("admin");
p.setPassword("password");
operate op=(operate)ctx.getBean("persondaoProx");
op.insert(p);
}

}



查看完整回答
反對 回復 2022-01-10
  • 2 回答
  • 0 關注
  • 374 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號