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语句一执行,我们就能将这个数据表中的数据 ...
随机推荐
- 【Android - MD】之RecyclerView的使用
RecyclerView是Android 5.0新特性--Material Design中的一个控件,它将ListView.GridView整合到一起,可以使用极少的代码在ListView.GridV ...
- Mysql新建用户和数据库并授权
测试环境:Centos 6.3和Mysql 5.3 一.新建用户 //登录MYSQL@>mysql -u root -p@>密码//创建用户mysql> insert into my ...
- at91sam9x5 linux 4.1.0下使能蜂鸣器驱动
测试环境: CPU: AT91SAM9X35 Linux: Atmel提供的linux-at91-linux4sam_5.3 (Linux-4.1.0) 转载请注明: 凌云物网智科嵌入式实 ...
- Linux网络基础
为了防止无良网站的爬虫抓取文章,特此标识,转载请注明文章出处.LaplaceDemon/SJQ. http://www.cnblogs.com/shijiaqi1066/p/3840284.html ...
- 10.31 afternoon
巧克力棒(chocolate)Time Limit:1000ms Memory Limit:64MB题目描述LYK 找到了一根巧克力棒,但是这根巧克力棒太长了, LYK 无法一口吞进去.具体地,这根巧 ...
- Quartz Quick Start Guide
Welcome to the QuickStart guide for Quartz. As you read this guide, expect to see details of: Downlo ...
- CentOS安装最新的Mysql版本
Step1: 检测系统是否自带安装mysql # yum list installed | grep mysql Step2: 删除系统自带的mysql及其依赖命令: # yum -y remove ...
- U3D 内置对象
在U3D里面提供了一个Time对象: void OnGUI(){ Debug.Log("########################"); GUILayout.Label (& ...
- ssh配置事务
http://blog.csdn.net/jianxin1009/article/details/9202907(不错)
- 同一台电脑上安装两个tomcat服务器
1.下载免安装版tomcat,解压成tomcat1.tomcat2: 2.修改tomcat2中conf下server.xml文件如下: <Server port="8005" ...