首先让我们看一下配置文件,我这里先是用struts搞得controller,不明白struts的可以去百度一下这里就不讲解了:

之后我们需要做一个hibernate的配置文件内容如下(这里链接的是mysql的数据库):

<?xml version='1.0' encoding='utf-8' ?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.url">jdbc:mysql://localhost:3306/库名</property>
<property name="connection.username">用户名</property>
<property name="connection.password">密码</property>
<property name="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</property>
<property name="show_sql">true</property>
<property name="hbm2ddl.auto">update</property>
<mapping resource="mapping/JueAction.hbm.xml"></mapping>
<mapping resource="mapping/Quan.hbm.xml"></mapping>
<mapping resource="mapping/User.hbm.xml"></mapping>
</session-factory>
</hibernate-configuration>
等到hibernate这个配置文件写好我们还需要写好每个类的配置文件,用处是整理类之间的关系:
<?xml version='1.0'?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="com.linyi.bean.(你的类名)" table="(你数据库中的表名)">
     //类中与表中的对应的字段
<id name="id" column="id">
      //设置这个字段为主键
<generator class="native" />
</id>
<property name="name" column="name" />
      //下面是表中与外表的关系,比如一对一,一对多,多对一,多对多(这里就不详细介绍是什么了,不明白的可以去问度娘)
      //我这里写的是多对多的关系
<set name="用来找关系的字段名" table="中间关系表的表名" cascade="save-update">
<key column="关系表中用来维护关系的字段名"></key>
<many-to-many column="关系表中维护另一个表关系的字段名" class="com.linyi.bean.(这个字段关联的表)" lazy="false"></many-to-many>
</set>
</class>
</hibernate-mapping>
这些配置文件要根据你的类写出来,需要多少就写多少,配置好之后我们就可以运用hibernate了,接下来让我们看一下查询数据是有多便利:
//这里只是一个测试public class Test1 {
//写出你需要调用的方法
public List<类名> test1(){
    //这一段直接考过去就是,虽说有些方法 已经过时了,可还是蛮好用的,不要问我为什么用过时的方法,因为我是菜鸟,别的不会。。
Configuration con = new Configuration().configure();
SessionFactory sessionFactory = con.buildSessionFactory();
Session session = sessionFactory.openSession();
Transaction transaction = session.beginTransaction();
    //在这里我们就可以使用hql的语句来进行查询了,看起来是不是简单又刺激呢?
     //这是一个条件查询,如果你不需要条件,where之后你就不需要哦!
String hql = "from com.linyi.bean.(注意这里使用类名就可以哦) where name = :name";
Query query = session.createQuery(hql);
    //这里是用来给语句中的某个变量赋值,可以自己写,也可以从别的类传过来哦!
query.setParameter("name","admin1");
    //我们可以的到这个类的list集合哦!
List<类名> 变量名 = query.list();
transaction.commit();
session.close();
     return 变量名;
}
}
这里需要注意导包
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
这些是hibernate需要用到的包,可以自己去官网下载
这样的一套下来是不是很简单呢,这里只给大家展示了普通的查询,还有其他的删除,修改,添加之类的大家也可以去
hibernate官网上去寻找哦!很简单的,方便了好多有木有?

Hibernate(链接数据库方便得多)!的更多相关文章

  1. Spring笔记④--spring整合hibernate链接数据库

    整合hibernate 整合什么? 有ioc容器来管理hibernate的SessionFactory 让hibernate使用上spring的声明式事务 先加入hibernate 驱动包 新建hib ...

  2. hibernate链接数据库链接池c3p0配置

    [html] view plain copy <bean id="dataSourceLocal" name="dataSource" class=&qu ...

  3. 关于Hibernate 的数据库配置

    <hibernate-configuration>    <session-factory name="mySessionFactory">        ...

  4. PHP学习-链接数据库

    链接数据库文件:conn.php <?php $conn = mysql_connect("localhost:3306","root","us ...

  5. PHP 链接数据库1(连接数据库&简单的登录注册)

    对 解析变量的理解 数据库的名称和表的名称不能重复 从结果中取出的数据   都是以数组的形式取出的 1.PHP查询数据库中的某条信息 //PHP链接数据库 /*1.造链接对象 IP地址 用户名 密码 ...

  6. JDBC的使用(一):引用外部jar;代码链接数据库

    一:引用外部jar 1.首先不jar文件放到项目下: 2.在Eclipse中,右键相应的项目--构建路径--配置构建路径--库--添加外部jar:选中-打开-应用-确定. 二:代码链接数据库 1.加载 ...

  7. Connect to Database Using Custom params链接数据库配置参数说明

    使用RF的关键字Connect to Database Using Custom params链接数据库,对应的参数说明: a)     第一个参数我使用的是cx_Oracle,就写这个 b)     ...

  8. php链接数据库

      1:找到 ySQL服务器 $conn = mysql_connect("localhost","","") or die("链 ...

  9. 安装vs2013以后,链接数据库总是报内存损坏,无法写入的错误

    安装vs2013以后,链接数据库总是报内存损坏,无法写入的错误 这个错误几个月以前解决过一次,但是到又碰到的时候,竟然完全忘记当时怎么解决的了, 看来上了年纪记忆真是越来越不行了... 解决方案很简单 ...

随机推荐

  1. Web前端JQuery面试题(一)

    Web前端JQuery面试题(一) 一:选择器 基本选择器 什么是#id,element,.class,*,selector1, selector2, selectorN? 答: 根据给定的id匹配一 ...

  2. Kali学习笔记5:被动信息收集工具集

    1.Shodan SHODAN搜索引擎不像百度谷歌等,它们爬取的是网页,而SHODAN搜索的是设备. 物联网使用过程中,通常容易出现安全问题,如果被黑客用SHODAN搜索到,后果不堪设想. 网站:ht ...

  3. 哦,这就是java的优雅停机?(实现及原理)

    优雅停机? 这个名词我是服的,如果抛开专业不谈,多好的名词啊! 其实优雅停机,就是在要关闭服务之前,不是立马全部关停,而是做好一些善后操作,比如:关闭线程.释放连接资源等. 再比如,就是不会让调用方的 ...

  4. Python中变量的基本使用

    变量的基本使用 程序就是用来处理数据的,而变量就是用来存储数据的 目标 变量定义 变量的类型 变量的命名 01. 变量定义 在 Python 中,每个变量 在使用前都必须赋值,变量 赋值以后 该变量 ...

  5. SQL笔记之SELECT语句

    SELECT语句的完整语法: SELECT[ALL/DISTINCT]目标列表达式  [AS 别名],··· --ALL不去掉重复 DISTINCT去掉重复 FROM 表名或视图名 或者(SELECT ...

  6. JavaScript优化细节(一)

    1.置空Closure(闭包)引起的Memory leak滞留的Object和domain 2.用fragment实现append大量元素 var f= document.createDocument ...

  7. Android切换横竖屏不销毁前台Activity,也不影响后台Activity

    在切换屏幕方向的时候,Activity默认会走销毁->重建的生命周期,而有时候我们不希望如此,就需要做些额外的设置了: 1.在AndroidMainifest.xml中对应的Activity标签 ...

  8. Node.js 使用 RSA 做加密

    RSA RSA加密算法是一种非对称加密算法. 假设 A 与 B 通信.A 和 B 都提供一个公开的公钥.A 把需要传递的信息,先用自己的私钥签名,再用 B 的公钥加密.B 接收到这串密文后,用自己的私 ...

  9. ui2code中的深度学习+传统算法应用

    背景 在之前的文章中,我们已经提到过团队在UI自动化这方面的尝试,我们的目标是实现基于 单一图片到代码 的转换,在这个过程不可避免会遇到一个问题,就是为了从单一图片中提取出足够的有意义的结构信息,我们 ...

  10. Java基础系列--throw、throws关键字

    原创作品,可以转载,但是请标注出处地址:http://www.cnblogs.com/V1haoge/p/8484697.html 一.概述 throw和throws就是异常相关的关键字,在java中 ...