當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
SpringMVC +Hibernate 学习实例
生活随笔
收集整理的這篇文章主要介紹了
SpringMVC +Hibernate 学习实例
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
做了好久經的spring+hibernate?只是用spring管理hibernate,但一直沒有研究SpringMVC?+Hibetate,所以
最近有時間?準備用springMVC?+?Spring?+?Hibernate?自己作個例子(SrpingMVC?也屬于Spring?為了與那些只用Spring管理Hibernate的有點區別所以沒有取名Spring+Hibernate)。希望對大家有幫助。
一,采用工具:eclipse,?數據庫?oracle.
二,必須包有:
????????hibernate包:hibernate.jar,ehcache-1.1.jar,c3p0-0.8.5.2.jar,cglib-nodep-2.1.jar
????????spring包:spring.jar,spring-web.jar
????????common包:commons-lang.jar,commons-logging.jar,commons-collections.jar
????????dom4j包:dom4j-1.6.jar
????????junit包:junit.jar
????????oracle?驅動包:ojdbc14.zip,不知道為什么tomcat?不認識這個包呢?非的要改成?ojdbc.jar
????????jstl包:jstl.jar
????????jta:?jta.jar
??????????
三,hibernate映射文件是采用Middlegen-Hibernate-r5?從數據庫生成,然后根據映射文件,生成對應數據庫的javabean
????????Middlegen-Hibernate-r5?配置說明:
????????
????????1,首先是下載??Middlegen-Hibernate-r5???地址:http://sourceforge.net/project/showfiles.php?group_id=40712&package_id=84728
????????
????????2,下載后,以下是需要修改的地方,build.xml中
????????
????????????????<!DOCTYPE?project?[
????????????????????<!ENTITY?database?SYSTEM?"file:./config/database/hsqldb.xml">
????????????????]>
????????????????改成
????????????????
????????????????<!DOCTYPE?project?[
????????????????????<!ENTITY?database?SYSTEM?"file:./config/database/oracle.xml">
????????????????]>
????????
????????3修改Middlegen-Hibernate-r5\config\database\oracle.xml?的配置:
????????
???????????<property?environment="env"/>
????????
???????????<property?name="database.script.file"???????????value="${src.dir}/sql/${name}-oracle.sql"/>
???????????<property?name="database.driver.file"???????????value="${env.ORACLE_HOME}/jdbc/lib/classes12.jar"/>
???????????<property?name="database.driver.classpath"??????value="${database.driver.file}"/>
???????????<property?name="database.driver"????????????????value="oracle.jdbc.driver.OracleDriver"/>
???????????<property?name="database.url"???????????????????value="jdbc:oracle:thin:@localhost:1521:<ORASID>"/>
???????????<property?name="database.userid"????????????????value="scott"/>
???????????<property?name="database.password"??????????????value="tiger"/>
???????????<property?name="database.schema"????????????????value=""/>
???????????<property?name="database.catalog"???????????????value=""/>
????????
???????????<!--property?name="jboss.datasource.mapping"???????value="Oracle7"/-->
???????????<property?name="jboss.datasource.mapping"???????value="Oracle8"/>
???????????<!--property?name="jboss.datasource.mapping"???????value="Oracle9i"/-->???
???????????
???????????改成你自己的,如下是我的
?????????????
???????????<property?environment="env"/>
???????????<property?name="database.script.file"???????????value="${src.dir}/sql/${name}-oracle.sql"/>
???????????<property?name="database.driver.file"???????????value="D:/XTZH/XTZH_AH/公共組件/公共jar包/oracle/ojdbc14.zip"/>
???????????<property?name="database.driver.classpath"??????value="${database.driver.file}"/>
???????????<property?name="database.driver"????????????????value="oracle.jdbc.driver.OracleDriver"/>
???????????<property?name="database.url"???????????????????value="jdbc:oracle:thin:@localhost:1521:GCR"/>
???????????<property?name="database.userid"????????????????value="guocr"/>
???????????<property?name="database.password"??????????????value="123456"/>
???????????<property?name="database.schema"????????????????value="guocr"/>
???????????<property?name="database.catalog"???????????????value=""/>
???????????<property?name="jboss.datasource.mapping"???????value="Oracle9i"/>???
???????????
????????4,修改?build.xml?下面的?middlegen?命令下面的
???????<hibernate
??????????destination="${build.gen-src.dir}"
??????????package="com.guocr.forum.domain"
??????????genXDocletTags="false"
??????????genIntergratedCompositeKeys="false"
??????????javaTypeMapper="middlegen.plugins.hibernate.HibernateJavaTypeMapper"
???????/>
?????????package="com.guocr.forum.domain"?改稱你自己的包名稱
???????????這些配好后就可以用?ant?運行??middlegen?就可以生成映射文件了,?然后運行hbm2java?就可以生成對應的javabean?文件
?????????
四,生成映射文件和對應數據庫中的java文件后,開始配置spring?bean?管理配置文件。在這里由于時間問題就不多講配置文件了,?如有問題可以給我消息聯系。
????????????我在這里取名為config/ForumServiceBeans.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="dataSource"?class="org.springframework.jdbc.datasource.DriverManagerDataSource">
????????????????????<property?name="driverClassName"><value>oracle.jdbc.driver.OracleDriver</value></property>
????????????????????<property?name="url"><value>jdbc:oracle:thin:@localhost:1521:GCR</value></property>
????????????????????<property?name="username"><value>guocr</value></property>-->
????????????????????<!--?Make?sure?<value>?tags?are?on?same?line?-?if?they're?not,?
?????????????????????????authentication?will?fail?-->
????????????????????<!--??<property?name="password"><value>123456</value></property>
????????????????</bean>?-->????????
???????????????????????????
????????????????<bean?id="dataSource"
????????????????????class="com.mchange.v2.c3p0.ComboPooledDataSource"
????????????????????destroy-method="close">
????????????????????<property?name="driverClass">
????????????????????????<value>oracle.jdbc.driver.OracleDriver</value>
????????????????????</property>
????????????????????<property?name="jdbcUrl">
????????????????????????<value>jdbc:oracle:thin:@localhost:1521:GCR</value>
????????????????????</property>
????????????????????<property?name="user">
????????????????????????<value>guocr</value>
????????????????????</property>
????????????????????<property?name="password">
????????????????????????<value>123456</value>
????????????????????</property>
????????????????????<property?name="minPoolSize">
????????????????????????<value>5</value>
????????????????????</property>
????????????????????<property?name="maxPoolSize">
????????????????????????<value>20</value>
????????????????????</property>
????????????????????<property?name="maxIdleTime">
????????????????????????<value>1800</value>
????????????????????</property>
????????????????</bean>????????????????????????????
????????????????
????????????<!--?Hibernate?SessionFactory?-->
????????????<bean?id="sessionFactory"?class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
????????????????<property?name="dataSource"><ref?local="dataSource"/></property>
????????????????<property?name="mappingResources">
????????????????????<list>
????????????????????????<value>com/guocr/forum/domain/User.hbm.xml</value>
????????????????????</list>
????????????????</property>
????????????????<property?name="hibernateProperties">
????????????????<props>
????????????????????<prop?key="hibernate.show_sql">true</prop>
????????????????????<prop?key="hibernate.dialect">org.hibernate.dialect.OracleDialect</prop>
???????????????????<!--??<prop?key="hibernate.hbm2ddl.auto">update</prop>-->
????????????????</props>
????????????????</property>
????????????</bean>????????????
????????????
????????????<!--?Transaction?manager?for?a?single?Hibernate?SessionFactory?(alternative?to?JTA)?-->
????????????<bean?id="transactionManager"?class="org.springframework.orm.hibernate3.HibernateTransactionManager">
????????????????<property?name="sessionFactory"><ref?local="sessionFactory"/></property>
????????????</bean>????????
????????????
????????????????<!--?Transaction?manager?that?delegates?to?JTA?(for?a?transactional?JNDI?DataSource)-->
????????????????<!--
????????????????<bean?id="transactionManager"?class="org.springframework.transaction.jta.JtaTransactionManager"/>
????????????????-->????????
????????????????????
????????????????<bean?id="baseTransactionProxy"?class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean"?abstract="true">
????????????????????<property?name="transactionManager">
????????????????????????<ref?bean="transactionManager"/>
????????????????????</property>
????????????????????<property?name="transactionAttributes">
????????????????????????<props>
????????????????????????????<prop?key="save*">PROPAGATION_REQUIRED,-Exception</prop>
????????????????????????????<prop?key="update*">
????????????????????????????????PROPAGATION_REQUIRED,-Exception
????????????????????????????</prop>
????????????????????????????<prop?key="delete*">
????????????????????????????????PROPAGATION_REQUIRED,-Exception
????????????????????????????</prop>
????????????????????????????<prop?key="comeBackHistoryConfig*">
????????????????????????????????PROPAGATION_REQUIRED,-Exception
????????????????????????????</prop>
????????????????????????????<prop?key="query*">PROPAGATION_REQUIRED,readOnly</prop>
????????????????????????????<prop?key="add*">PROPAGATION_REQUIRED</prop>
????????????????????????????<prop?key="*">PROPAGATION_REQUIRED,readOnly</prop>
????????????????????????</props>
????????????????????</property>
????????????????</bean>????????
????????????????????
????????????<bean?id="userDAOTarget"?class="com.guocr.forum.dao.hiberante.impl.UserDAO">
????????????????<property?name="sessionFactory"><ref?local="sessionFactory"/></property>
????????????</bean>???
????????????????????????
??????????????<bean?id="userDAO"?parent="baseTransactionProxy">
????????????????????<property?name="target">
????????????????????????<ref?local="userDAOTarget"/>
????????????????????</property>
????????????????</bean>?
????????????????????
????????????<!--?
????????????<bean?id="userManagerTarget"?class="org.appfuse.service.impl.UserManagerImpl">
????????????????<property?name="userDAO"><ref?local="userDAO"/></property>
????????????</bean>
????????????-->
????????????<!--?
????????????<bean?id="userManager"?
????????????????class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
????????????????<property?name="transactionManager"><ref?local="transactionManager"/></property>
????????????????<property?name="target"><ref?local="userManagerTarget"/></property>
????????????????<property?name="transactionAttributes">
????????????????????<props>
????????????????????????<prop?key="save*">PROPAGATION_REQUIRED</prop>
????????????????????????<prop?key="remove*">PROPAGATION_REQUIRED</prop>
????????????????????????<prop?key="*">PROPAGATION_REQUIRED,readOnly</prop>
????????????????????</props>
????????????????</property>
????????????</bean>
????????????-->
????????</beans>
????
五,下面開始寫Spring?MVC?框架
?1、首先配置?web.xml
?
???????<?xml?version="1.0"?encoding="UTF-8"?>
????????????<!DOCTYPE?web-app?PUBLIC?"-//Sun?Microsystems,?Inc.//DTD?Web?Application?2.3//EN"?"http://java.sun.com/dtd/web-app_2_3.dtd">
????????????<web-app>??????
??????????????<servlet>
????????????????<servlet-name>action</servlet-name>
????????????????<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
????????????????<load-on-startup>1</load-on-startup>
??????????????</servlet>
??????????????<servlet-mapping>
????????????????<servlet-name>action</servlet-name>
????????????????<url-pattern>*.do</url-pattern>
??????????????</servlet-mapping>
????????</web-app>
????????配完?web.xml?之后,spring會自動找?action-servlet.xml?,為什么?去找action-servlet.xml,其實是找/WEB-INF/<servlet-name>-servlet.xml,
????????在這里我們的servlet-name是action,所以找action-servlet.xml.如果不希望讓他自動去找?action-servlet.xml也可以自己指定,如下指定
????????了Confing.xml?
??????????<servlet>
????????????<servlet-name>action</servlet-name>
????????????<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
????????????<init-param>
??????????????<param-name>contextConfigLocation</param-name>
??????????????<param-value>/WEB-INF/Config.xml</param-value>
????????????</init-param>
??????????</servlet>
2、
???????我是按默認的去找action-servlet.xml?下面開始建action-servlet.xml
????????這個是類似ForumServiceBeans.xml?,應該可以與ForumServiceBeans.xml?合在一起,還沒有測。
????????下面是我建的action-servlet.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="userController"?class="org.appfuse.web.UserController">
????????????????????<property?name="userManager"?ref="userManager"/>
????????????????</bean>
????????????????
????????????????<bean?id="userFormController"?class="org.appfuse.web.UserFormController">
????????????????????<property?name="commandName"?value="user"/>
????????????????????<property?name="validator"?ref="beanValidator"/>
????????????????????<property?name="formView"?value="userForm"/>
????????????????????<property?name="successView"?value="redirect:users.html"/>
????????????????????<property?name="userManager"?ref="userManager"/>
????????????????</bean>
??????????????????-->??????
????????????????<bean?id="viewResolver"?class="org.springframework.web.servlet.view.InternalResourceViewResolver">
????????????????????<property?name="viewClass"?value="org.springframework.web.servlet.view.JstlView"/>??????
????????????????????<property?name="prefix"?value="/work/"/>
????????????????????<property?name="suffix"?value=".jsp"/>
????????????????</bean>
????????????
????????????????<bean?id="urlMapping"??class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
????????????????????<property?name="mappings">
????????????????????????<props>
???????????????????????????<prop?key="/work/login.do">LoginAction</prop>
????????????????????????</props>
????????????????????</property>
????????????????</bean>
????????????????
????????????????<bean?id="LoginAction"
????????????????????????class="com.guocr.forum.service.LoginAction">
????????????????????????<property?name="commandClass">
????????????????????????????<value>com.guocr.forum.domain.User</value>
????????????????????????</property>
????????????????????????<property?name="fail_view">
????????????????????????????<value>loginfail</value>
????????????????????????</property>
????????????????????????<property?name="success_view">
????????????????????????????<value>main</value>
????????????????????????</property>
????????????????</bean>
????????????????
????????????<!--?
????????????<bean?id="urlMapping"??class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
????????????????<property?name="mappings">
????????????????????<props>
????????????????????????<prop?key="/users.html">userController</prop>
????????????????????????<prop?key="/editUser.html">userFormController</prop>
????????????????????</props>
????????????????</property>
????????????</bean>????
????????????-->
????????????<!--?
????????????<bean?id="messageSource"?class="org.springframework.context.support.ResourceBundleMessageSource">
????????????????<property?name="basename"?value="messages"/>
????????????????<property?name="useCodeAsDefaultMessage"?value="true"/>
????????????</bean>
????????????
????????????<bean?id="validatorFactory"?class="org.springmodules.commons.validator.DefaultValidatorFactory">
????????????????<property?name="validationConfigLocations">
????????????????????<list>
????????????????????????<value>/WEB-INF/validator-rules.xml</value>
????????????????????????<value>/WEB-INF/validation.xml</value>
????????????????????</list>
????????????????</property>
????????????</bean>
??????????
????????????<bean?id="beanValidator"?class="org.springmodules.commons.validator.DefaultBeanValidator">
????????????????<property?name="validatorFactory"?ref="validatorFactory"/>
????????????</bean>
??????????????-->
????????????</beans>
有時間再補詳細點。
3、開始建jsp,java類等
???注冊頁面?register.jsp?
????????????<%@?page?language="java"?import="java.util.*"?pageEncoding="GBK"%>
????????????<%
????????????String?path?=?request.getContextPath();
????????????String?basePath?=?request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
????????????%>
????????????
????????????<html>
????????????<head>
????????????<TITLE>注冊會員</TITLE>?
????????????<%?request.setCharacterEncoding("GBK");?
????????????%>
????????????</head>
????????????<body?οnlοad="">
????????????<form?method="POST"?action="login.do"??>
????????????<br>
????????????<table?width="98%"?cellpadding="2"?cellspacing="1"?class="blove"?align="center">?
?????????????????<tr?height="20"><td?align="right">會員名:</td><td><input?type="text"?name="name"?maxlength=100?></td></tr>
??????????????????<tr?height="20"?><td?align="right">密碼:</td><td><input?type="password"?name="password"?maxlength=255?></td></tr>
??????????????????<tr?height="20"?><td?align="right">確認密碼:</td><td><input?type="password"?name="password_two"?maxlength=255?></td></tr>
?????????????</table>
????????????<br>
????????????????????<table?width="20%"?cellpadding="2"?cellspacing="1"?bgColor="F4F9FC"?align="center">?
????????????????????????????<tr>????????????????
????????????????????????????<td><input?type="submit"?value="保存"?name="B1"></td>
???????????????????????????????</tr>
????????????????????</table>
????????????
????????????</form>
????????????</body>
????????????</html>
????????????bean?管理配置管理類?ForumServiceFactory
????????????
????????????package?com.guocr.forum.service;
????????????
????????????import?org.springframework.context.ApplicationContext;
????????????import?org.springframework.context.support.FileSystemXmlApplicationContext;
????????????import?com.guocr.forum.dao.hiberante.IUserDAO;
????????????
????????????/**
?????????????*?2006-06-10
?????????????*
?????????????*?<p>Title:?BEAN?管理服務實現類?</p>
?????????????*?
?????????????*?<p>Description:?</p>
?????????????*?
?????????????*?<p>Copyright:?Copyright?(c)?2005</p>
?????????????*?
?????????????*?<p>Company:?</p>
?????????????*?
?????????????*?@author?guocr
?????????????*?
?????????????*?@version?1.0
?????????????*/
????????????public?class?ForumServiceFactory?{????????????????????????????????????
????????????????/**?應用程序內容?*/
????????????????private?ApplicationContext?factory?=?null;
????????????
????????????????/**?服務工廠?*/
????????????????private?static?ForumServiceFactory?instance;
????????????
????????????????/**?指定配置文件路徑?*/
????????????????private?static?final?String?FORUM_CLIENT_BEAN_FILE?=?"config/ForumServiceBeans.xml";
????????????
????????????????private?ForumServiceFactory()?{
????????????????????this.factory?=?new?FileSystemXmlApplicationContext(
????????????????????????????new?String[]?{?FORUM_CLIENT_BEAN_FILE?});
????????????????}
????????????
????????????????/**
?????????????????*?返回工廠實例.
?????????????????*?
?????????????????*?@return?工廠實例
?????????????????*/
????????????????public?static?ForumServiceFactory?getInstance()?{
????????????
????????????????????if?(instance?==?null)?{
????????????????????????instance?=?new?ForumServiceFactory();
????????????????????}
????????????
????????????????????return?instance;
????????????????}
????????????????
????????????????public?IUserDAO?getUserDAO(){
????????????????????
????????????????????return?(IUserDAO)?this.factory
????????????????????.getBean("userDAO");????
????????????????????
????????????????}
????????????????
????????????}
????????????package?com.guocr.forum.service;
????????????
????????????import?java.text.SimpleDateFormat;
????????????import?java.util.Date;
????????????
????????????import?org.springframework.validation.BindException;
????????????import?org.springframework.web.servlet.ModelAndView;
????????????import?org.springframework.web.servlet.mvc.SimpleFormController;
????????????
????????????import?com.guocr.forum.domain.User;
????????????
????????????/**
?????????????*?2006-06-12
?????????????*
?????????????*?<p>Title:?用戶基本信息業務類?</p>
?????????????*?
?????????????*?<p>Description:?</p>
?????????????*?
?????????????*?<p>Copyright:?Copyright?(c)?2005</p>
?????????????*?
?????????????*?<p>Company:?</p>
?????????????*?
?????????????*?@author?guocr
?????????????*?
?????????????*?@version?1.0
?????????????*/????????????
????????????
????????????public?class?LoginAction?extends?SimpleFormController?{
????????????
????????????????public?void?LoginAction(){
????????????
????????????????}?
????????????????private?String?fail_view;
????????????
????????????????private?String?success_view;
????????????
????????????????public?String?getFail_view()?{
????????????????????return?fail_view;
????????????????}
????????????
????????????????public?void?setFail_view(String?fail_view)?{
????????????????????this.fail_view?=?fail_view;
????????????????}
????????????
????????????????public?String?getSuccess_view()?{
????????????????????return?success_view;
????????????????}
????????????
????????????????public?void?setSuccess_view(String?success_view)?{
????????????????????this.success_view?=?success_view;
????????????????}
????????????????
????????????????protected?ModelAndView?onSubmit(Object?cmd,?BindException?ex)
????????????????throws?Exception?{
????????????????????
????????????????????User?user?=(User)cmd;
????????????????????System.out.println("user==="+user.getName());
????????????????????System.out.println("password==="+user.getPassword());
????????????????????//user.setRegisterdate("2006-06-11?09:46:50");
????????????????????//Date?b=new?Date();
????????????????????//user.setRegisterdate(b.toLocaleString());
????????????????????Date?date?=?new?Date();
????????????????SimpleDateFormat?sdf?=?new?SimpleDateFormat("yyyy-MM-dd?HH:mm:ss");
????????????????user.setRegisterdate(sdf.format(date));??????????????
????????????????????ForumServiceFactory.getInstance().getUserDAO().saveUser(user);
????????????????????System.out.println("this.getSuccessView()"+this.getSuccessView());
????????????????????
????????????????????System.out.println("getSuccess_view"+this.getSuccess_view());
????????????????????return?new?ModelAndView(this.getSuccess_view());
????????????????}
????????????????
????????????}
????????????package?com.guocr.forum.dao.hiberante;
????????????import?java.util.List;
????????????
????????????import?com.guocr.forum.domain.User;
????????????
????????????/**
?????????????*?2006-06-10
?????????????*
?????????????*?<p>Title:?用戶基本信息?</p>
?????????????*?
?????????????*?<p>Description:?</p>
?????????????*?
?????????????*?<p>Copyright:?Copyright?(c)?2005</p>
?????????????*?
?????????????*?<p>Company:?</p>
?????????????*?
?????????????*?@author?guocr
?????????????*?
?????????????*?@version?1.0
?????????????*/
????????????
????????????public?interface?IUserDAO?{
????????????????
????????????????/**
?????????????????*?返回用戶信息
?????????????????*?@param?userName?用戶姓名
?????????????????*?@return?返回用戶信息
?????????????????*?@throws?Exception
?????????????????*/
????????????????public?User??getUser(String?userName)throws?Exception;
????????????????
????????????????/**
?????????????????*?返回全部用戶基本信息
?????????????????*?@return
?????????????????*?@throws?Exception
?????????????????*/
????????????????public?List?getUsers()?throws?Exception;
???????????????
????????????????/**
?????????????????*?保存用戶
?????????????????*?@throws?Exception
?????????????????*/
????????????????public?void?saveUser(User?user)?throws?Exception;
????????????????
????????????????/**
?????????????????*?修改用戶信息
?????????????????*?@throws?Exception
?????????????????*/
????????????????public?void?updateUser?(User?user)?throws?Exception;
????????????????
????????????}
????????????package?com.guocr.forum.dao.hiberante.impl;
????????????
????????????import?java.util.List;
????????????
????????????import?org.springframework.orm.hibernate3.support.HibernateDaoSupport;
????????????
????????????import?com.guocr.forum.dao.hiberante.IUserDAO;
????????????import?com.guocr.forum.domain.User;
????????????
????????????/**
?????????????*?2006-06-10
?????????????*
?????????????*?<p>Title:?用戶基本信息實現類?</p>
?????????????*?
?????????????*?<p>Description:?</p>
?????????????*?
?????????????*?<p>Copyright:?Copyright?(c)?2005</p>
?????????????*?
?????????????*?<p>Company:?</p>
?????????????*?
?????????????*?@author?guocr
?????????????*?
?????????????*?@version?1.0
?????????????*/
????????????
????????????public?class?UserDAO?extends?HibernateDaoSupport?implements?IUserDAO?{
????????????
????????????????public?User?getUser(String?userName)?throws?Exception?{
????????????????????User?user?=?(User)this.getHibernateTemplate().get(User.class,userName);
????????????????????return?user;
????????????????}
????????????
????????????????public?List?getUsers()?throws?Exception?{
????????????????????
????????????????????return?null;
????????????????}
????????????
????????????????public?void?saveUser(User?user)?throws?Exception?{
????????????????????this.getHibernateTemplate().save(user);
????????????
????????????????}
????????????
????????????????public?void?updateUser(User?user)?throws?Exception?{
????????????????????this.getHibernateTemplate().update(user);????????????
????????????????}????????????
????????????}
??????最后跳轉的頁面是?/work/main.jsp,這個頁面?你可以隨便了。好了先到這里,希望對你有幫助。還有什么問題可以給我發JR消息。
最近有時間?準備用springMVC?+?Spring?+?Hibernate?自己作個例子(SrpingMVC?也屬于Spring?為了與那些只用Spring管理Hibernate的有點區別所以沒有取名Spring+Hibernate)。希望對大家有幫助。
一,采用工具:eclipse,?數據庫?oracle.
二,必須包有:
????????hibernate包:hibernate.jar,ehcache-1.1.jar,c3p0-0.8.5.2.jar,cglib-nodep-2.1.jar
????????spring包:spring.jar,spring-web.jar
????????common包:commons-lang.jar,commons-logging.jar,commons-collections.jar
????????dom4j包:dom4j-1.6.jar
????????junit包:junit.jar
????????oracle?驅動包:ojdbc14.zip,不知道為什么tomcat?不認識這個包呢?非的要改成?ojdbc.jar
????????jstl包:jstl.jar
????????jta:?jta.jar
??????????
三,hibernate映射文件是采用Middlegen-Hibernate-r5?從數據庫生成,然后根據映射文件,生成對應數據庫的javabean
????????Middlegen-Hibernate-r5?配置說明:
????????
????????1,首先是下載??Middlegen-Hibernate-r5???地址:http://sourceforge.net/project/showfiles.php?group_id=40712&package_id=84728
????????
????????2,下載后,以下是需要修改的地方,build.xml中
????????
????????????????<!DOCTYPE?project?[
????????????????????<!ENTITY?database?SYSTEM?"file:./config/database/hsqldb.xml">
????????????????]>
????????????????改成
????????????????
????????????????<!DOCTYPE?project?[
????????????????????<!ENTITY?database?SYSTEM?"file:./config/database/oracle.xml">
????????????????]>
????????
????????3修改Middlegen-Hibernate-r5\config\database\oracle.xml?的配置:
????????
???????????<property?environment="env"/>
????????
???????????<property?name="database.script.file"???????????value="${src.dir}/sql/${name}-oracle.sql"/>
???????????<property?name="database.driver.file"???????????value="${env.ORACLE_HOME}/jdbc/lib/classes12.jar"/>
???????????<property?name="database.driver.classpath"??????value="${database.driver.file}"/>
???????????<property?name="database.driver"????????????????value="oracle.jdbc.driver.OracleDriver"/>
???????????<property?name="database.url"???????????????????value="jdbc:oracle:thin:@localhost:1521:<ORASID>"/>
???????????<property?name="database.userid"????????????????value="scott"/>
???????????<property?name="database.password"??????????????value="tiger"/>
???????????<property?name="database.schema"????????????????value=""/>
???????????<property?name="database.catalog"???????????????value=""/>
????????
???????????<!--property?name="jboss.datasource.mapping"???????value="Oracle7"/-->
???????????<property?name="jboss.datasource.mapping"???????value="Oracle8"/>
???????????<!--property?name="jboss.datasource.mapping"???????value="Oracle9i"/-->???
???????????
???????????改成你自己的,如下是我的
?????????????
???????????<property?environment="env"/>
???????????<property?name="database.script.file"???????????value="${src.dir}/sql/${name}-oracle.sql"/>
???????????<property?name="database.driver.file"???????????value="D:/XTZH/XTZH_AH/公共組件/公共jar包/oracle/ojdbc14.zip"/>
???????????<property?name="database.driver.classpath"??????value="${database.driver.file}"/>
???????????<property?name="database.driver"????????????????value="oracle.jdbc.driver.OracleDriver"/>
???????????<property?name="database.url"???????????????????value="jdbc:oracle:thin:@localhost:1521:GCR"/>
???????????<property?name="database.userid"????????????????value="guocr"/>
???????????<property?name="database.password"??????????????value="123456"/>
???????????<property?name="database.schema"????????????????value="guocr"/>
???????????<property?name="database.catalog"???????????????value=""/>
???????????<property?name="jboss.datasource.mapping"???????value="Oracle9i"/>???
???????????
????????4,修改?build.xml?下面的?middlegen?命令下面的
???????<hibernate
??????????destination="${build.gen-src.dir}"
??????????package="com.guocr.forum.domain"
??????????genXDocletTags="false"
??????????genIntergratedCompositeKeys="false"
??????????javaTypeMapper="middlegen.plugins.hibernate.HibernateJavaTypeMapper"
???????/>
?????????package="com.guocr.forum.domain"?改稱你自己的包名稱
???????????這些配好后就可以用?ant?運行??middlegen?就可以生成映射文件了,?然后運行hbm2java?就可以生成對應的javabean?文件
?????????
四,生成映射文件和對應數據庫中的java文件后,開始配置spring?bean?管理配置文件。在這里由于時間問題就不多講配置文件了,?如有問題可以給我消息聯系。
????????????我在這里取名為config/ForumServiceBeans.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="dataSource"?class="org.springframework.jdbc.datasource.DriverManagerDataSource">
????????????????????<property?name="driverClassName"><value>oracle.jdbc.driver.OracleDriver</value></property>
????????????????????<property?name="url"><value>jdbc:oracle:thin:@localhost:1521:GCR</value></property>
????????????????????<property?name="username"><value>guocr</value></property>-->
????????????????????<!--?Make?sure?<value>?tags?are?on?same?line?-?if?they're?not,?
?????????????????????????authentication?will?fail?-->
????????????????????<!--??<property?name="password"><value>123456</value></property>
????????????????</bean>?-->????????
???????????????????????????
????????????????<bean?id="dataSource"
????????????????????class="com.mchange.v2.c3p0.ComboPooledDataSource"
????????????????????destroy-method="close">
????????????????????<property?name="driverClass">
????????????????????????<value>oracle.jdbc.driver.OracleDriver</value>
????????????????????</property>
????????????????????<property?name="jdbcUrl">
????????????????????????<value>jdbc:oracle:thin:@localhost:1521:GCR</value>
????????????????????</property>
????????????????????<property?name="user">
????????????????????????<value>guocr</value>
????????????????????</property>
????????????????????<property?name="password">
????????????????????????<value>123456</value>
????????????????????</property>
????????????????????<property?name="minPoolSize">
????????????????????????<value>5</value>
????????????????????</property>
????????????????????<property?name="maxPoolSize">
????????????????????????<value>20</value>
????????????????????</property>
????????????????????<property?name="maxIdleTime">
????????????????????????<value>1800</value>
????????????????????</property>
????????????????</bean>????????????????????????????
????????????????
????????????<!--?Hibernate?SessionFactory?-->
????????????<bean?id="sessionFactory"?class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
????????????????<property?name="dataSource"><ref?local="dataSource"/></property>
????????????????<property?name="mappingResources">
????????????????????<list>
????????????????????????<value>com/guocr/forum/domain/User.hbm.xml</value>
????????????????????</list>
????????????????</property>
????????????????<property?name="hibernateProperties">
????????????????<props>
????????????????????<prop?key="hibernate.show_sql">true</prop>
????????????????????<prop?key="hibernate.dialect">org.hibernate.dialect.OracleDialect</prop>
???????????????????<!--??<prop?key="hibernate.hbm2ddl.auto">update</prop>-->
????????????????</props>
????????????????</property>
????????????</bean>????????????
????????????
????????????<!--?Transaction?manager?for?a?single?Hibernate?SessionFactory?(alternative?to?JTA)?-->
????????????<bean?id="transactionManager"?class="org.springframework.orm.hibernate3.HibernateTransactionManager">
????????????????<property?name="sessionFactory"><ref?local="sessionFactory"/></property>
????????????</bean>????????
????????????
????????????????<!--?Transaction?manager?that?delegates?to?JTA?(for?a?transactional?JNDI?DataSource)-->
????????????????<!--
????????????????<bean?id="transactionManager"?class="org.springframework.transaction.jta.JtaTransactionManager"/>
????????????????-->????????
????????????????????
????????????????<bean?id="baseTransactionProxy"?class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean"?abstract="true">
????????????????????<property?name="transactionManager">
????????????????????????<ref?bean="transactionManager"/>
????????????????????</property>
????????????????????<property?name="transactionAttributes">
????????????????????????<props>
????????????????????????????<prop?key="save*">PROPAGATION_REQUIRED,-Exception</prop>
????????????????????????????<prop?key="update*">
????????????????????????????????PROPAGATION_REQUIRED,-Exception
????????????????????????????</prop>
????????????????????????????<prop?key="delete*">
????????????????????????????????PROPAGATION_REQUIRED,-Exception
????????????????????????????</prop>
????????????????????????????<prop?key="comeBackHistoryConfig*">
????????????????????????????????PROPAGATION_REQUIRED,-Exception
????????????????????????????</prop>
????????????????????????????<prop?key="query*">PROPAGATION_REQUIRED,readOnly</prop>
????????????????????????????<prop?key="add*">PROPAGATION_REQUIRED</prop>
????????????????????????????<prop?key="*">PROPAGATION_REQUIRED,readOnly</prop>
????????????????????????</props>
????????????????????</property>
????????????????</bean>????????
????????????????????
????????????<bean?id="userDAOTarget"?class="com.guocr.forum.dao.hiberante.impl.UserDAO">
????????????????<property?name="sessionFactory"><ref?local="sessionFactory"/></property>
????????????</bean>???
????????????????????????
??????????????<bean?id="userDAO"?parent="baseTransactionProxy">
????????????????????<property?name="target">
????????????????????????<ref?local="userDAOTarget"/>
????????????????????</property>
????????????????</bean>?
????????????????????
????????????<!--?
????????????<bean?id="userManagerTarget"?class="org.appfuse.service.impl.UserManagerImpl">
????????????????<property?name="userDAO"><ref?local="userDAO"/></property>
????????????</bean>
????????????-->
????????????<!--?
????????????<bean?id="userManager"?
????????????????class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
????????????????<property?name="transactionManager"><ref?local="transactionManager"/></property>
????????????????<property?name="target"><ref?local="userManagerTarget"/></property>
????????????????<property?name="transactionAttributes">
????????????????????<props>
????????????????????????<prop?key="save*">PROPAGATION_REQUIRED</prop>
????????????????????????<prop?key="remove*">PROPAGATION_REQUIRED</prop>
????????????????????????<prop?key="*">PROPAGATION_REQUIRED,readOnly</prop>
????????????????????</props>
????????????????</property>
????????????</bean>
????????????-->
????????</beans>
????
五,下面開始寫Spring?MVC?框架
?1、首先配置?web.xml
?
???????<?xml?version="1.0"?encoding="UTF-8"?>
????????????<!DOCTYPE?web-app?PUBLIC?"-//Sun?Microsystems,?Inc.//DTD?Web?Application?2.3//EN"?"http://java.sun.com/dtd/web-app_2_3.dtd">
????????????<web-app>??????
??????????????<servlet>
????????????????<servlet-name>action</servlet-name>
????????????????<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
????????????????<load-on-startup>1</load-on-startup>
??????????????</servlet>
??????????????<servlet-mapping>
????????????????<servlet-name>action</servlet-name>
????????????????<url-pattern>*.do</url-pattern>
??????????????</servlet-mapping>
????????</web-app>
????????配完?web.xml?之后,spring會自動找?action-servlet.xml?,為什么?去找action-servlet.xml,其實是找/WEB-INF/<servlet-name>-servlet.xml,
????????在這里我們的servlet-name是action,所以找action-servlet.xml.如果不希望讓他自動去找?action-servlet.xml也可以自己指定,如下指定
????????了Confing.xml?
??????????<servlet>
????????????<servlet-name>action</servlet-name>
????????????<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
????????????<init-param>
??????????????<param-name>contextConfigLocation</param-name>
??????????????<param-value>/WEB-INF/Config.xml</param-value>
????????????</init-param>
??????????</servlet>
2、
???????我是按默認的去找action-servlet.xml?下面開始建action-servlet.xml
????????這個是類似ForumServiceBeans.xml?,應該可以與ForumServiceBeans.xml?合在一起,還沒有測。
????????下面是我建的action-servlet.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="userController"?class="org.appfuse.web.UserController">
????????????????????<property?name="userManager"?ref="userManager"/>
????????????????</bean>
????????????????
????????????????<bean?id="userFormController"?class="org.appfuse.web.UserFormController">
????????????????????<property?name="commandName"?value="user"/>
????????????????????<property?name="validator"?ref="beanValidator"/>
????????????????????<property?name="formView"?value="userForm"/>
????????????????????<property?name="successView"?value="redirect:users.html"/>
????????????????????<property?name="userManager"?ref="userManager"/>
????????????????</bean>
??????????????????-->??????
????????????????<bean?id="viewResolver"?class="org.springframework.web.servlet.view.InternalResourceViewResolver">
????????????????????<property?name="viewClass"?value="org.springframework.web.servlet.view.JstlView"/>??????
????????????????????<property?name="prefix"?value="/work/"/>
????????????????????<property?name="suffix"?value=".jsp"/>
????????????????</bean>
????????????
????????????????<bean?id="urlMapping"??class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
????????????????????<property?name="mappings">
????????????????????????<props>
???????????????????????????<prop?key="/work/login.do">LoginAction</prop>
????????????????????????</props>
????????????????????</property>
????????????????</bean>
????????????????
????????????????<bean?id="LoginAction"
????????????????????????class="com.guocr.forum.service.LoginAction">
????????????????????????<property?name="commandClass">
????????????????????????????<value>com.guocr.forum.domain.User</value>
????????????????????????</property>
????????????????????????<property?name="fail_view">
????????????????????????????<value>loginfail</value>
????????????????????????</property>
????????????????????????<property?name="success_view">
????????????????????????????<value>main</value>
????????????????????????</property>
????????????????</bean>
????????????????
????????????<!--?
????????????<bean?id="urlMapping"??class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
????????????????<property?name="mappings">
????????????????????<props>
????????????????????????<prop?key="/users.html">userController</prop>
????????????????????????<prop?key="/editUser.html">userFormController</prop>
????????????????????</props>
????????????????</property>
????????????</bean>????
????????????-->
????????????<!--?
????????????<bean?id="messageSource"?class="org.springframework.context.support.ResourceBundleMessageSource">
????????????????<property?name="basename"?value="messages"/>
????????????????<property?name="useCodeAsDefaultMessage"?value="true"/>
????????????</bean>
????????????
????????????<bean?id="validatorFactory"?class="org.springmodules.commons.validator.DefaultValidatorFactory">
????????????????<property?name="validationConfigLocations">
????????????????????<list>
????????????????????????<value>/WEB-INF/validator-rules.xml</value>
????????????????????????<value>/WEB-INF/validation.xml</value>
????????????????????</list>
????????????????</property>
????????????</bean>
??????????
????????????<bean?id="beanValidator"?class="org.springmodules.commons.validator.DefaultBeanValidator">
????????????????<property?name="validatorFactory"?ref="validatorFactory"/>
????????????</bean>
??????????????-->
????????????</beans>
有時間再補詳細點。
3、開始建jsp,java類等
???注冊頁面?register.jsp?
????????????<%@?page?language="java"?import="java.util.*"?pageEncoding="GBK"%>
????????????<%
????????????String?path?=?request.getContextPath();
????????????String?basePath?=?request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
????????????%>
????????????
????????????<html>
????????????<head>
????????????<TITLE>注冊會員</TITLE>?
????????????<%?request.setCharacterEncoding("GBK");?
????????????%>
????????????</head>
????????????<body?οnlοad="">
????????????<form?method="POST"?action="login.do"??>
????????????<br>
????????????<table?width="98%"?cellpadding="2"?cellspacing="1"?class="blove"?align="center">?
?????????????????<tr?height="20"><td?align="right">會員名:</td><td><input?type="text"?name="name"?maxlength=100?></td></tr>
??????????????????<tr?height="20"?><td?align="right">密碼:</td><td><input?type="password"?name="password"?maxlength=255?></td></tr>
??????????????????<tr?height="20"?><td?align="right">確認密碼:</td><td><input?type="password"?name="password_two"?maxlength=255?></td></tr>
?????????????</table>
????????????<br>
????????????????????<table?width="20%"?cellpadding="2"?cellspacing="1"?bgColor="F4F9FC"?align="center">?
????????????????????????????<tr>????????????????
????????????????????????????<td><input?type="submit"?value="保存"?name="B1"></td>
???????????????????????????????</tr>
????????????????????</table>
????????????
????????????</form>
????????????</body>
????????????</html>
????????????bean?管理配置管理類?ForumServiceFactory
????????????
????????????package?com.guocr.forum.service;
????????????
????????????import?org.springframework.context.ApplicationContext;
????????????import?org.springframework.context.support.FileSystemXmlApplicationContext;
????????????import?com.guocr.forum.dao.hiberante.IUserDAO;
????????????
????????????/**
?????????????*?2006-06-10
?????????????*
?????????????*?<p>Title:?BEAN?管理服務實現類?</p>
?????????????*?
?????????????*?<p>Description:?</p>
?????????????*?
?????????????*?<p>Copyright:?Copyright?(c)?2005</p>
?????????????*?
?????????????*?<p>Company:?</p>
?????????????*?
?????????????*?@author?guocr
?????????????*?
?????????????*?@version?1.0
?????????????*/
????????????public?class?ForumServiceFactory?{????????????????????????????????????
????????????????/**?應用程序內容?*/
????????????????private?ApplicationContext?factory?=?null;
????????????
????????????????/**?服務工廠?*/
????????????????private?static?ForumServiceFactory?instance;
????????????
????????????????/**?指定配置文件路徑?*/
????????????????private?static?final?String?FORUM_CLIENT_BEAN_FILE?=?"config/ForumServiceBeans.xml";
????????????
????????????????private?ForumServiceFactory()?{
????????????????????this.factory?=?new?FileSystemXmlApplicationContext(
????????????????????????????new?String[]?{?FORUM_CLIENT_BEAN_FILE?});
????????????????}
????????????
????????????????/**
?????????????????*?返回工廠實例.
?????????????????*?
?????????????????*?@return?工廠實例
?????????????????*/
????????????????public?static?ForumServiceFactory?getInstance()?{
????????????
????????????????????if?(instance?==?null)?{
????????????????????????instance?=?new?ForumServiceFactory();
????????????????????}
????????????
????????????????????return?instance;
????????????????}
????????????????
????????????????public?IUserDAO?getUserDAO(){
????????????????????
????????????????????return?(IUserDAO)?this.factory
????????????????????.getBean("userDAO");????
????????????????????
????????????????}
????????????????
????????????}
????????????package?com.guocr.forum.service;
????????????
????????????import?java.text.SimpleDateFormat;
????????????import?java.util.Date;
????????????
????????????import?org.springframework.validation.BindException;
????????????import?org.springframework.web.servlet.ModelAndView;
????????????import?org.springframework.web.servlet.mvc.SimpleFormController;
????????????
????????????import?com.guocr.forum.domain.User;
????????????
????????????/**
?????????????*?2006-06-12
?????????????*
?????????????*?<p>Title:?用戶基本信息業務類?</p>
?????????????*?
?????????????*?<p>Description:?</p>
?????????????*?
?????????????*?<p>Copyright:?Copyright?(c)?2005</p>
?????????????*?
?????????????*?<p>Company:?</p>
?????????????*?
?????????????*?@author?guocr
?????????????*?
?????????????*?@version?1.0
?????????????*/????????????
????????????
????????????public?class?LoginAction?extends?SimpleFormController?{
????????????
????????????????public?void?LoginAction(){
????????????
????????????????}?
????????????????private?String?fail_view;
????????????
????????????????private?String?success_view;
????????????
????????????????public?String?getFail_view()?{
????????????????????return?fail_view;
????????????????}
????????????
????????????????public?void?setFail_view(String?fail_view)?{
????????????????????this.fail_view?=?fail_view;
????????????????}
????????????
????????????????public?String?getSuccess_view()?{
????????????????????return?success_view;
????????????????}
????????????
????????????????public?void?setSuccess_view(String?success_view)?{
????????????????????this.success_view?=?success_view;
????????????????}
????????????????
????????????????protected?ModelAndView?onSubmit(Object?cmd,?BindException?ex)
????????????????throws?Exception?{
????????????????????
????????????????????User?user?=(User)cmd;
????????????????????System.out.println("user==="+user.getName());
????????????????????System.out.println("password==="+user.getPassword());
????????????????????//user.setRegisterdate("2006-06-11?09:46:50");
????????????????????//Date?b=new?Date();
????????????????????//user.setRegisterdate(b.toLocaleString());
????????????????????Date?date?=?new?Date();
????????????????SimpleDateFormat?sdf?=?new?SimpleDateFormat("yyyy-MM-dd?HH:mm:ss");
????????????????user.setRegisterdate(sdf.format(date));??????????????
????????????????????ForumServiceFactory.getInstance().getUserDAO().saveUser(user);
????????????????????System.out.println("this.getSuccessView()"+this.getSuccessView());
????????????????????
????????????????????System.out.println("getSuccess_view"+this.getSuccess_view());
????????????????????return?new?ModelAndView(this.getSuccess_view());
????????????????}
????????????????
????????????}
????????????package?com.guocr.forum.dao.hiberante;
????????????import?java.util.List;
????????????
????????????import?com.guocr.forum.domain.User;
????????????
????????????/**
?????????????*?2006-06-10
?????????????*
?????????????*?<p>Title:?用戶基本信息?</p>
?????????????*?
?????????????*?<p>Description:?</p>
?????????????*?
?????????????*?<p>Copyright:?Copyright?(c)?2005</p>
?????????????*?
?????????????*?<p>Company:?</p>
?????????????*?
?????????????*?@author?guocr
?????????????*?
?????????????*?@version?1.0
?????????????*/
????????????
????????????public?interface?IUserDAO?{
????????????????
????????????????/**
?????????????????*?返回用戶信息
?????????????????*?@param?userName?用戶姓名
?????????????????*?@return?返回用戶信息
?????????????????*?@throws?Exception
?????????????????*/
????????????????public?User??getUser(String?userName)throws?Exception;
????????????????
????????????????/**
?????????????????*?返回全部用戶基本信息
?????????????????*?@return
?????????????????*?@throws?Exception
?????????????????*/
????????????????public?List?getUsers()?throws?Exception;
???????????????
????????????????/**
?????????????????*?保存用戶
?????????????????*?@throws?Exception
?????????????????*/
????????????????public?void?saveUser(User?user)?throws?Exception;
????????????????
????????????????/**
?????????????????*?修改用戶信息
?????????????????*?@throws?Exception
?????????????????*/
????????????????public?void?updateUser?(User?user)?throws?Exception;
????????????????
????????????}
????????????package?com.guocr.forum.dao.hiberante.impl;
????????????
????????????import?java.util.List;
????????????
????????????import?org.springframework.orm.hibernate3.support.HibernateDaoSupport;
????????????
????????????import?com.guocr.forum.dao.hiberante.IUserDAO;
????????????import?com.guocr.forum.domain.User;
????????????
????????????/**
?????????????*?2006-06-10
?????????????*
?????????????*?<p>Title:?用戶基本信息實現類?</p>
?????????????*?
?????????????*?<p>Description:?</p>
?????????????*?
?????????????*?<p>Copyright:?Copyright?(c)?2005</p>
?????????????*?
?????????????*?<p>Company:?</p>
?????????????*?
?????????????*?@author?guocr
?????????????*?
?????????????*?@version?1.0
?????????????*/
????????????
????????????public?class?UserDAO?extends?HibernateDaoSupport?implements?IUserDAO?{
????????????
????????????????public?User?getUser(String?userName)?throws?Exception?{
????????????????????User?user?=?(User)this.getHibernateTemplate().get(User.class,userName);
????????????????????return?user;
????????????????}
????????????
????????????????public?List?getUsers()?throws?Exception?{
????????????????????
????????????????????return?null;
????????????????}
????????????
????????????????public?void?saveUser(User?user)?throws?Exception?{
????????????????????this.getHibernateTemplate().save(user);
????????????
????????????????}
????????????
????????????????public?void?updateUser(User?user)?throws?Exception?{
????????????????????this.getHibernateTemplate().update(user);????????????
????????????????}????????????
????????????}
??????最后跳轉的頁面是?/work/main.jsp,這個頁面?你可以隨便了。好了先到這里,希望對你有幫助。還有什么問題可以給我發JR消息。
總結
以上是生活随笔為你收集整理的SpringMVC +Hibernate 学习实例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Hibernate代码生成工具 设计全攻
- 下一篇: 常用网络命令使用技巧详解续编1