Hibernate(链接数据库方便得多)!
首先让我们看一下配置文件,我这里先是用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(链接数据库方便得多)!的更多相关文章
- Spring笔记④--spring整合hibernate链接数据库
整合hibernate 整合什么? 有ioc容器来管理hibernate的SessionFactory 让hibernate使用上spring的声明式事务 先加入hibernate 驱动包 新建hib ...
- hibernate链接数据库链接池c3p0配置
[html] view plain copy <bean id="dataSourceLocal" name="dataSource" class=&qu ...
- 关于Hibernate 的数据库配置
<hibernate-configuration> <session-factory name="mySessionFactory"> ...
- PHP学习-链接数据库
链接数据库文件:conn.php <?php $conn = mysql_connect("localhost:3306","root","us ...
- PHP 链接数据库1(连接数据库&简单的登录注册)
对 解析变量的理解 数据库的名称和表的名称不能重复 从结果中取出的数据 都是以数组的形式取出的 1.PHP查询数据库中的某条信息 //PHP链接数据库 /*1.造链接对象 IP地址 用户名 密码 ...
- JDBC的使用(一):引用外部jar;代码链接数据库
一:引用外部jar 1.首先不jar文件放到项目下: 2.在Eclipse中,右键相应的项目--构建路径--配置构建路径--库--添加外部jar:选中-打开-应用-确定. 二:代码链接数据库 1.加载 ...
- Connect to Database Using Custom params链接数据库配置参数说明
使用RF的关键字Connect to Database Using Custom params链接数据库,对应的参数说明: a) 第一个参数我使用的是cx_Oracle,就写这个 b) ...
- php链接数据库
1:找到 ySQL服务器 $conn = mysql_connect("localhost","","") or die("链 ...
- 安装vs2013以后,链接数据库总是报内存损坏,无法写入的错误
安装vs2013以后,链接数据库总是报内存损坏,无法写入的错误 这个错误几个月以前解决过一次,但是到又碰到的时候,竟然完全忘记当时怎么解决的了, 看来上了年纪记忆真是越来越不行了... 解决方案很简单 ...
随机推荐
- Kali学习笔记38:文件上传漏洞
早些年,提到Web渗透,或者搜索一些黑客教程 基本都会看到文件上传漏洞. 它是一个很经典的漏洞 但它本质其实不是一个漏洞,而是网站本身的上传文件功能 不过如果我们上传了Webshell,那么就成为了文 ...
- LabVIEW(八):程序结构中的循环结构
1.程序结构分为三种:循环结构.分支结构.顺序结构. 本文主要讨论循环结构. 2.While循环 左下角:循环计数端子i,从0开始计数,每进行一次循环,i自动增加1. 右下角:循环条件端子,当循环达到 ...
- git提示error setting certificate verify locations以及fatal: unable to access 的解决办法
z当使用git ------上传文件到GitHub上时!~~~出现了以下错误 :fatal: unable to access ' 可以采用以下解决方式: 修改GitHub上的地址格式=====ht ...
- Python的串口通信(pyserial)
串口通信是指外设和计算机间,通过数据信号线 .地线.控制线等,按位进行传输数据的一种通讯方式.这种通信方式使用的数据线少,在远距离通信中可以节约通信成本,但其传输速度比并行传输低.串口是计算机上一种非 ...
- 【code block】局部代码块+构造代码块+静态代码块
1.局部代码块 位置:位于类的方法中 表示方法:{} 作用:控制变量的生命周期,减少内存消耗 demo: public class LocalCode { public static void mai ...
- golang实现参数可变的技巧
Go 使用默认参数的技巧 Functional Options Pattern in Go golang中没有函数默认参数的设计,因此需要些特别的技巧来实现. 假如我们需要订购一批电脑,其中电脑配置c ...
- [源码]Python简易http服务器(内网渗透大文件传输含下载命令)
Python简易http服务器源码 import SimpleHTTPServerimport SocketServerimport sysPORT = 80if len(sys.argv) != 2 ...
- JavaScript高级编程(1)——JavaScript初识
一.javascript的简介 1.1 javascript的历史回顾. Javascript诞生于1995年.当时,它主要的目的是用来处理一些由服务器端处理的输入验证操作.在javascript没有 ...
- 【转】vmware 安装 osx 无法登录 appstore 的解决办法 (伪造smbios设备信息)
伪造smbios设备信息 原文网址:http://www.insanelymac.com/forum/topic/292170-how-to-spoof-real-mac-in-vmware/page ...
- (转)解决 TortoiseGit 诡异的 Bad file number 问题
此问题,请不要使用 rebase, 下载最新的 TortoiseGit 即可: TortoiseGit-2.3中文版与Git安装包_手册: http://download.csdn.net/detai ...