`
zpzp
  • 浏览: 11091 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

hibernate 配置

阅读更多

1.配置 hibernate.cfg.xml   在src里面

<?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">
<hibernate-configuration>
	<session-factory>
		<!-- Database connection settings -->
		<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
		<property name="connection.url">jdbc:mysql://localhost:3306/test</property>
		<property name="connection.username">root</property>
		<property name="connection.password">mysql</property>

		<!-- JDBC connection pool (use the built-in) -->
		<property name="connection.pool_size">2</property>

		<!-- SQL dialect -->
		<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
		<!-- Echo all executed SQL to stdout -->
		<property name="show_sql">true</property>

		<!-- Drop and re-create the database schema on startup -->
		<property name="hbm2ddl.auto">update</property>
		<mapping resource="ls/student/pojo/Student.hbm.xml" />
		<mapping resource="ls/teacher/pojo/Teacher.hbm.xml" />
	</session-factory>
</hibernate-configuration>

 2.配置pojo里面Teacher类的 Teacher.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" >
<hibernate-mapping package="ls.teacher.pojo">
	<class name="ls.teacher.pojo.Teacher" table="Teacher">
		<id name="userid" column="userid" type="string" >
			<generator class="assigned"/>
		</id>
		<property name="name" column="name" type="string"></property>
		<property name="password" column="password" type="string"></property>
		<property name="age" column="age" type="string"></property>
	</class>
</hibernate-mapping>

 

3.数据操作 增删改查

package ls.teacher.dao;

import java.util.List;

import ls.teacher.pojo.Teacher;

import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;

public class TeacherDao {
	private static  Teacher teacher = null;
	/**
	 * 添加老师
	 * @param password
	 * @return
	 */
	public Teacher addTeacher(String userid,String name,String password,String age){
		Configuration cfg =  new  Configuration().addResource("hibernate.cfg.xml");//初始化configuration配置文件
		SessionFactory sf = cfg.configure().buildSessionFactory();//建一个SessionFactory
		Session session =  sf.openSession();//打开Session
		Transaction transaction = session.beginTransaction();//开始一个事物
		try {
			teacher = new Teacher();
			teacher.setUserid(userid);
			teacher.setName(name);
			teacher.setPassword(password);
			teacher.setAge(age);
			session.save(teacher);
			transaction.commit();
		} catch (Exception e) {
			// TODO: handle exception
			transaction.rollback();
		}
		return teacher;
	}

	/**
	 * 通过id查询老师信息
	 * @param userid
	 * @return Teacher
	 */
	public Teacher selectTeacher(String userid){
		Configuration cfg =  new  Configuration().addResource("hibernate.cfg.xml");//初始化configuration配置文件
		SessionFactory sf = cfg.configure().buildSessionFactory();//建一个SessionFactory
		Session session =  sf.openSession();//打开Session
		Transaction transaction = session.beginTransaction();//开始一个事物
		String hql = "from Teacher teacher where teacher.userid=?";
		List<Teacher> list = null;
			try {
				list = session.createQuery(hql).setString(0, userid).list();
				System.out.println("pp:"+list.get(0).getPassword());
				transaction.commit();
				teacher = list.get(0);
			} catch (Exception e) {
				// TODO: handle exception
				transaction.rollback();
			}finally{
				session.close();
			}
		return teacher;
	}

	/**
	 * 更新老师密码	
	 * @return
	 */
	public boolean updateTeacher(String userid,String password){
		boolean flag = false;
		Configuration cfg = new Configuration().addResource("hibernate.cfg.xml");
		SessionFactory sf = cfg.configure().buildSessionFactory();
		Session session = sf.openSession();
		Transaction transaction = session.beginTransaction();
		String hql = "update Teacher teacher set teacher.password=? where teacher.userid=?";
		try {
			Query queryupdate = session.createQuery(hql).setString(0, password).setString(1, userid);
			queryupdate.executeUpdate();
			transaction.commit();
			flag = true;
		} catch (Exception e) {
			// TODO: handle exception
			transaction.rollback();
		}finally{
			session.close();
		}
		return flag;
	}

	/**
	 * 删除老师信息
	 * @return
	 */
	public boolean deleteTeacher(String userid) {
		boolean flag = false;
		Configuration cfg =  new  Configuration().addResource("hibernate.cfg.xml");
		SessionFactory sf = cfg.configure().buildSessionFactory();
		Session session =  sf.openSession();
		Transaction transaction = session.beginTransaction();
		String hql = "delete from Teacher teacher where teacher=?";
		try {
			Query querydelete = session.createQuery(hql).setString(0, userid);
			querydelete.executeUpdate();
			transaction.commit();
			flag = true;
		} catch (Exception e) {
			// TODO: handle exception
			session.close();
		}
		return  flag;
	}

}

 

分享到:
评论

相关推荐

    Hibernate 配置各种数据库

    Hibernate 配置各种数据库 Hibernate 是一个基于 Java 的持久层框架,提供了一个抽象的数据访问层,能够与多种数据库进行集成。在 Hibernate 的配置文件中,我们可以配置不同的数据库连接,包括驱动程序、URL 等...

    Hibernate配置

    **标题:“Hibernate配置”** **概述** Hibernate是一个强大的开源对象关系映射(ORM)框架,它简化了Java应用程序与数据库之间的交互。通过提供一个抽象层,Hibernate允许开发人员使用面向对象的方式来处理数据库...

    hibernate配置文件详解

    Hibernate 配置文件详解 Hibernate 是一个流行的 ORM(Object-Relational Mapping)框架,用于简化 Java 应用程序中的数据库交互。 Hibernate 的配置文件是其核心组件之一,用于定义 Hibernate 的运行期参数。下面...

    hibernate配置参数大全

    ### Hibernate配置参数详解 #### 一、数据库连接配置(JDBC) 在Hibernate中,与数据库交互的第一步就是正确地配置数据库连接。以下是一些关键的配置参数及其含义: 1. **`hibernate.connection.driver_class`**...

    Hibernate配置文件加载后修改配置信息

    ### Hibernate配置文件加载后修改配置信息 在Java开发过程中,特别是在使用ORM框架如Hibernate时,开发者经常需要对配置文件中的数据库连接信息进行动态修改或加密处理。本文将详细介绍如何利用反射机制来修改已经...

    Hibernate配置文件hibernate.cfg.xml中配置信息详解

    Hibernate配置文件hibernate.cfg.xml中配置信息详解!

    用myeclipse自动生成hibernate配置文件

    MyEclipse作为一款强大的集成开发环境,提供了自动生成Hibernate配置文件的功能,帮助开发者快速构建项目。以下是使用MyEclipse自动生成Hibernate配置文件的详细步骤: 1. **创建数据库表**: 在开始之前,需要先...

    hibernate--5.Hibernate配置文件详解

    标题"hibernate--5.Hibernate配置文件详解"暗示我们将探讨的是Hibernate 5版本的配置细节。这个版本引入了一些新特性和改进,同时也保持了对前一版本的兼容性。配置文件是Hibernate的核心部分,它定义了与数据库的...

    ssh整合带hibernate配置文件

    在这个场景下,"ssh整合带hibernate配置文件"的标题表明我们要讨论如何在SSH架构中配置Hibernate,特别是在Spring框架内进行事务管理。 首先,让我们了解SSH框架的核心组件: 1. **Spring**:这是一个全面的Java...

    代码自动生成工具 hibernate配置文件工具 MagicalTools

    《代码自动生成工具 Hibernate配置文件工具 MagicalTools 深度解析》 在现代软件开发过程中,提高效率和减少重复劳动是至关重要的。为此,开发者们不断寻求自动化工具的帮助,以简化繁琐的任务,如代码编写、配置...

    eclipse 逆向生成hibernate配置文件

    逆向生成hibernate配置文件逆向生成hibernate配置文件逆向生成hibernate配置文件逆向生成hibernate配置文件逆向生成hibernate配置文件逆向生成hibernate配置文件

    hibernate配置文件

    hibernate配置文件 里面提供了连接数据库 数据库使用的方言 是否打印SQL语句 sql语句的格式 以及对象-关系映射文件的地址等

    struts2+spring+hibernate 配置文件

    struts2+spring+hibernate 配置文件struts2+spring+hibernate 配置文件

    Hibernate配置文件

    ### Hibernate配置文件详解 #### 一、概述 Hibernate是一个开源的对象关系映射(ORM)框架,它简化了Java应用程序与数据库交互的过程。在使用Hibernate的过程中,一个关键的配置文件是`hibernate.cfg.xml`。这个文件...

    oracle的hibernate配置文件

    `hibernate1.cfg.xml`是Hibernate配置的核心文件,它定义了数据源、连接池、持久化类、缓存策略等关键信息。以下将逐个解析这些重要部分。 1. 数据源配置: 在`hibernate1.cfg.xml`中,首先需要配置数据源。对于...

    hibernate配置

    介绍了hibernate的两种方法,所用myeclipse版本为8.6,数据库为mysql,按步骤即可完成hibernate配置

    hibernate--5.Hibernate配置文件详解-2

    标题"hibernate--5.Hibernate配置文件详解-2"暗示我们将继续上一节的内容,进一步深入理解Hibernate配置文件的各个方面。通常,Hibernate的配置文件以`hibernate.cfg.xml`的形式存在,它是项目初始化和连接数据库的...

Global site tag (gtag.js) - Google Analytics