- 论坛徽章:
- 0
|
用eclipse写的一个数据库插入的功能,吏终不能成功,请大家帮我看一下
applicationContext.xml如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="configLocation">
<value>WEB-INF/hibernate.cfg.xml</value>
</property>
</bean>
<bean id="addUser1" class="test.spring.InsertUser" autowire="byName">
</bean>
</beans>
hibernate.cfg.xml如下:
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<!-- Generated by MyEclipse Hibernate Tools. -->
<hibernate-configuration>
<session-factory>
<mapping resource="test/hibernate/User1.hbm.xml" />
</session-factory>
</hibernate-configuration>
User1.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">
<!--
Mapping file autogenerated by MyEclipse - Hibernate Tools
-->
<hibernate-mapping>
<class name="test.hibernate.User1" table="user1" dynamic-update="false"
dynamic-insert="false">
<id name="id" type="java.lang.Long">
<column name="id" />
</id>
<property name="name" type="java.lang.String">
<column name="name" length="100" />
</property>
<property name="school" type="java.lang.String">
<column name="school" length="100" />
</property>
</class>
</hibernate-mapping>
User1.java如下:
package test.hibernate;
/**
* User1 generated by MyEclipse - Hibernate Tools
*/
public class User1 implements java.io.Serializable {
// Fields
/**
*
*/
private static final long serialVersionUID = -7496479896490190687L;
private Long id;
private String name;
private String school;
// Constructors
/** default constructor */
public User1() {
}
/** minimal constructor */
public User1(Long id) {
this.id = id;
}
/** full constructor */
public User1(Long id, String name, String school) {
this.id = id;
this.name = name;
this.school = school;
}
// Property accessors
public Long getId() {
return this.id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return this.name;
}
public void setName(String name) {
this.name = name;
}
public String getSchool() {
return this.school;
}
public void setSchool(String school) {
this.school = school;
}
}
Useraction如下:
/*
* Generated by MyEclipse Struts
* Template path: templates/java/JavaClass.vtl
*/
package test.struts.action;
import test.spring.impl.InsertUserImpl;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import test.spring.InsertUser;
import test.hibernate.User1;
/**
* MyEclipse Struts
* Creation date: 06-30-2007
*
* XDoclet definition:
* @struts.action validate="true"
*/
public class UserAction extends BaseAction {
/*
* Generated Methods
*/
/**
* Method execute
* @param mapping
* @param form
* @param request
* @param response
* @return ActionForward
*/
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
try
{
InsertUserImpl ob =(InsertUser)getWebApplicationContext().getBean("addUser1");
User1 u=new User1();
long id=(long) 1.0;
u.setId(id);
u.setName("ddddd");
u.setSchool("dddd");
ob.add(u);
}
catch(Exception e)
{
System.out.print(e);
}
return mapping.findForward("ok");
}
}
InsertUser如下:
package test.spring;
import test.spring.impl.InsertUserImpl;
import test.hibernate.User1;
import org.springframework.orm.hibernate3.*;
public class InsertUser extends HibernateTemplate implements InsertUserImpl {
public void add(User1 user) {
try
{
save(user);
}
catch(Exception e)
{
System.out.print("出你吗"+e);
}
}
public void del() {
// TODO 自动生成方法存根
}
public void disp() {
// TODO 自动生成方法存根
}
public void update() {
// TODO 自动生成方法存根
}
public void close(InsertUserImpl ob)
{
}
}
小弟有二个问题想问,
1.我这样来应用struts+spring+hibernate行不行,就是现在流行的用法是不是这样,我这样写有没有什么性能上的差别.
2.我UserAction后,并没有插入数据,而且sql查询器里好像这个表被占用一样,用select查询该表,就一直停在查询的状态,日志有警告信息:
Hibernate: insert into user1 (name, school, id) values (?, ?, ?)
2007-07-17 09:09:17,187 WARN hibernate.util.JDBCExceptionReporter:48 -> SQL Warning: 0, SQLState:
2007-07-17 09:09:17,187 WARN hibernate.util.JDBCExceptionReporter:49 -> [Microsoft][SQLServer 2000 Driver for JDBC]Database changed to beingo
2007-07-17 09:09:17,203 WARN hibernate.util.JDBCExceptionReporter:48 -> SQL Warning: 0, SQLState:
2007-07-17 09:09:17,203 WARN hibernate.util.JDBCExceptionReporter:49 -> [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]已将数据库上下文改为 'beingo'。
2007-07-17 09:09:17,203 WARN hibernate.util.JDBCExceptionReporter:48 -> SQL Warning: 0, SQLState:
2007-07-17 09:09:17,203 WARN hibernate.util.JDBCExceptionReporter:49 -> [Microsoft][SQLServer 2000 Driver for JDBC]Language changed to 简体中文
2007-07-17 09:09:17,203 WARN hibernate.util.JDBCExceptionReporter:48 -> SQL Warning: 0, SQLState:
2007-07-17 09:09:17,203 WARN hibernate.util.JDBCExceptionReporter:49 -> [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]已将语言设置改为 简体中文。
请各位大哥大姐帮个忙 |
|