hibernate 一张数据表的流程
1. 写一个domain类来映射数据库表
2. 写一个*.hbm.xml文件来配置映射
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="com.jforum.dao.common">
<class name="Member" table="T_MEMBER_INFO">
<id name="id" column="id" type="java.lang.Integer">
<generator class="sequence">
<param name="sequence">FORUM_MEMBER_ID_SEQ</param>
</generator>
</id> <property column="username" length="200" name="username" not-null="true" type="string"/>
<property column="password" length="100" name="password" not-null="true" type="string"/>
<property column="groupid" length="9" name="groupid" not-null="true" type="java.lang.Integer"/> </class>
</hibernate-mapping>
3. applicationContext.xml文件中配置读取hbm.xml
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref local="dataSource" />
</property>
<property name="mappingResources">
<list>
<!-- <value>com/jforum/domain/Employee.hbm.xml</value> -->
<value>com/ROCKY/domains/member/Member.hbm.xml</value>
</list>
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.hbm2ddl.auto">update</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.format_sql">true</prop>
</props>
</property>
</bean>
4. 实现dao,使用template
package com.ROCKY.daos.member; import java.util.List; import org.hibernate.SessionFactory;
import org.springframework.orm.hibernate3.HibernateTemplate; import com.ROCKY.domains.member.Member; public class MemberDao
{
private SessionFactory sessionFactory;
private HibernateTemplate hibernateTemplate; /**
* 设置hibernateTemplate
*
* @return 返回hibernateTemplate
*/
public HibernateTemplate getHibernateTemplate()
{
if (hibernateTemplate == null)
{
hibernateTemplate = new HibernateTemplate(sessionFactory);
} return hibernateTemplate;
} /**
* 获取sessionFactory
*
* @param sessionFactory 要设置的sessionFactory
*/
public void setSessionFactory(SessionFactory sessionFactory)
{
this.sessionFactory = sessionFactory;
} public Member get(Integer id)
{
return getHibernateTemplate().get(Member.class, id);
} @SuppressWarnings("unchecked")
public List<Member> findByName(String name)
{
return (List<Member>)getHibernateTemplate().find("from Member m where m.username=?", name);
} }
5. 也可以用
package com.ROCKY.daos.member; import java.util.List; import org.springframework.orm.hibernate3.support.HibernateDaoSupport; import com.ROCKY.domains.member.Member; public class MemberDaoHibernate extends HibernateDaoSupport
{
public Member get(Integer id)
{
return getHibernateTemplate().get(Member.class, id);
} @SuppressWarnings("unchecked")
public List<Member> findByName(String name)
{
return (List<Member>)getHibernateTemplate().find("from Member m where m.username=?", name);
}
}
hibernate 一张数据表的流程的更多相关文章
- mysql 如何在访问某张数据表按照某个字段分类输出
		也许大家有时候会遇到需要将把数据库中的某张表的数据按照该表的某个字段分类输出,比如一张数据表area如下 我们需要将里面的area按照serialize字段进行分类输出,比如这种形式: areas ... 
- MySQL数据库查询某个库下有几张数据表
		如果统计某数据库中存在多少张数据表,使用如下SQL检索语句即可: SELECT COUNT(*) TABLES, table_schema FROM information_schema.TABLES ... 
- 【SQL 数据库】将一张数据表信息复制到另一张数据表
		一.MySQL数据库 1.如果目标表存在 INSERT INTO 目标表 SELECT * FROM 源表; 2.如果目标表不存在 CREATE TABLE 目标表 SELECT * FROM ... 
- 【MySQL】 查询某个数据库有多少张数据表
		SELECT COUNT(*) TABLES, table_schema FROM information_schema.TABLES WHERE table_schema = 'performanc ... 
- 【mybatis】mybatis一条sql更新两张数据表,mybatis关联更新多张数据表
		示例sql: <update id="receipt" parameterType="com.pisen.cloud.luna.ms.security.code.b ... 
- Activiti工作流框架学习(一)之通用数据表详细介绍
		文/朱季谦 Activiti工作流引擎自带了一套数据库表,这里面有一个需要注意的地方: 低于5.6.4的MySQL版本不支持时间戳或毫秒级的日期.更糟糕的是,某些版本在尝试创建此类列时将引发异常,而其 ... 
- MySQL学习笔记 -- 数据表的基本操作
		数据库是一个可以存放数据库对象的容器,数据库对象包括:表.视图.存储过程.函数.触发器.事件.其中,表是数据库最基本的元素,是其他数据库对象的前提条件. 表中的一列称为一个字段,一行称为一条记录. 1 ... 
- Activiti学习(二)数据表结构
		Activiti工作流引擎数据库表结构 数据库表的命名 Acitiviti数据库中表的命名都是以ACT_开头的.第二部分是一个两个字符用例表的标识.此用例大体与服务API是匹配的. l ... 
- 【SQL Sever】将SQL Sever中的一个数据表的数据导出为insert语句
		例如:这SQL Sever中的一张数据表,想要将这张数据表中的数据 转化成一个一个的insert语句存储在txt的文档中,那么不论走到那里这个insert语句一执行,我们就能将这个数据表中的数据 ... 
随机推荐
- UINavigationBar-使用总结
			多视图应用程序中,我们常常使用到自定义UINavigationBar来完成导航条的设置. 1.获取导航条 UINavigationBar *navBar = self.navigationCo ... 
- spring 自定义schema
			扩展schema,定义自己的bean属性..不错! 主要: 1,定义META-INF下.xsd文件,这里是people.xsd;定义spring.handlers;定义spring.schemas 2 ... 
- HTML5游戏开发技术基础整理
			随着HTML5标准终于敲定.HTML5将有望成为游戏开发领域的的热门平台. HTML5游戏能够执行于包含iPhone系列和iPad系列在内的计算机.智能手机以及平板电脑上,是眼下跨平台应用开发的最佳实 ... 
- android 01
			安卓开源(就是免费),谷歌收购后推出,可以山寨(小米,三星都是安卓的山寨),ios不是开源(苹果应用要商用就要交钱).安卓3.0是平板,现在安卓至少是4.0以上,否则out了. 微软主要是系统和off ... 
- 多路复用的server模型
			多路复用I/O之server模型 主要是关于select()这个函数: 其原型是:int select(int n,fd_set *read_fds,fd_set *write_fds,fd_set ... 
- ARCGIS二维三维放大缩小
			private void ULZoomPan() { ESRI.ArcGIS.SystemUI.ICommand com = new ControlsGlobeFixedZoomOutCommand( ... 
- iOS 高仿:花田小憩3.0.1
			前言 断断续续的已经学习Swift一年多了, 从1.2到现在的2.2, 一直在语法之间徘徊, 学一段时间, 工作一忙, 再捡起来隔段时间又忘了.思来想去, 趁着这两个月加班不是特别多, 就决定用swi ... 
- Eclipse3.7默认字体修改-找回Courser-New字体
			1.找到jFace并用WinRAR打开之: jFace的具体位置:$Eclipse目录$/plugins/org.eclipse.jface_3.7.0.I20110522-1430.jar,找到后, ... 
- STM32串口通信USART1转USART2问题解决
			使用的是STM32f103ZET6. 1.把文件main.c和usart.c中的所有usart1换成usart2 2.查看手册得知USART2的引脚是Tx->PA2,Rx->PA3,改变u ... 
- ssh框架简单搭建
			这里是个人对SSH框架搭建的一点心得,仅供新手,勿喷 首先,搞清楚分层, 视图层 --> 控制层 --> 业务层 --> DAO层--> 持久层 搭建的顺序是从后向前,搭建一 ... 
