数据库文件:myproject.sql
/*
MySQL Data Transfer
Source Host: localhost
Source Database: myproject
Target Host: localhost
Target Database: myproject
Date: 2009/8/26 17:23:12
*/
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for users
-- ----------------------------
DROP TABLE IF EXISTS `users`;
CREATE TABLE `users` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`password` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`email` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=39 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
-- ----------------------------
-- Records
-- ----------------------------
INSERT INTO `users` VALUES ('34', '测试4', '123456', 'ok@ujs.edu.cn');
INSERT INTO `users` VALUES ('35', '测试5', '123456', 'ok@ujs.edu.cn');
INSERT INTO `users` VALUES ('36', '测试6', '123456', 'ok@ujs.edu.cn');
INSERT INTO `users` VALUES ('37', '测试7', '123456', 'ok@ujs.edu.cn');
INSERT INTO `users` VALUES ('38', '测试8', '123456', 'ok@ujs.edu.cn');
实体类:User.java
package usermap;
public class User {
private int id;
private String name;
private String password;
private String email;
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
}
hibernate类:HibernateBase.java
package usermap;
import org.hibernate.*;
import org.hibernate.cfg.*;
import java.util.*;
import java.io.IOException;
import java.io.PrintWriter;
public abstract class HibernateBase {
protected SessionFactory sessionFactory;// 会话工厂,用于创建会话
protected Session session;// hibernate会话
protected Transaction transaction; // hiberante事务
public HibernateBase() throws HibernateException {
this.initHibernate();
}
// 帮助方法
protected void initHibernate() throws HibernateException {
// 装载配置,构造SessionFactory对象
sessionFactory = new Configuration().configure().buildSessionFactory();
}
/**
*开始一个hibernate事务
*/
protected void beginTransaction() throws HibernateException {
session = sessionFactory.openSession();
transaction = session.beginTransaction();
}
/**
*结束一个hibernate事务。
*/
protected void endTransaction(boolean commit) throws HibernateException {
if (commit) {
transaction.commit();
} else {
// 如果是只读的操作,不需要commit这个事务。
transaction.rollback();
}
session.close();}
}
bean类:UserBean.java
package usermap;
import org.hibernate.*;
import org.hibernate.cfg.*;
import java.util.*;
/**
* 和course相关的业务逻辑
*/
public class UserBean extends HibernateBase {
public UserBean() throws HibernateException {
super();
}
/**
* 增加一个Course
*/
public void addUser(User user) throws HibernateException {
beginTransaction();
session.save(user);
endTransaction(true);
}
/**
* 查询系统中所有的Course,返回的是包含有Course持久对象的Iterator。
*/
public Iterator getAllUsers() throws HibernateException {
String queryString = "from User u order by u desc";
beginTransaction();
Query query = session.createQuery(queryString);
Iterator it = query.iterate();
return it;
}
/**
* 删除给定ID的course
*/
public void deleteUser(String id) throws HibernateException {
beginTransaction();
User user = (User) session.load(User.class, id);
session.delete(user);
endTransaction(true);
}
/**
* 按course的名字进行模糊查找,返回的是包含有Course持久对象的Iterator。
*/
public Iterator getSomeUser(String name) throws HibernateException {
String queryString = "select u from User as u where u.name like :name";
beginTransaction();
Query query = session.createQuery(queryString);
query.setString("name", "%" + name + "%");
Iterator it = query.iterate();
return it;
}
}
user的映射:User.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>
<class name="usermap.User" table="users">
<id name="id">
<generator class="native"/>
</id>
<property name="name"/>
<property name="password"/>
<property name="email"/>
</class>
</hibernate-mapping>
hibernate全局配置:hibernate.cfg.xml
<?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>
<!-- 显示实际操作数据库时的SQL -->
<property name="show_sql">false</property>
<!-- SQL 方言,这边设定的是MySQL -->
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<!-- JDBC 驱动程序 -->
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<!-- JDBC URL 注意这边我设定的所使用的编码 -->
<property name="connection.url">jdbc:mysql://localhost:3306/myproject</property>
<!-- 数据库使用者 -->
<property name="connection.username">root</property>
<!-- 数据库密码 -->
<property name="connection.password">123456</property>
<!-- 以下设置对象与数据库表格映像文件 -->
<mapping resource="usermap/User.hbm.xml"/>
</session-factory>
</hibernate-configuration>
测试网页:index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="usermap.User"%>
<%@ page import="usermap.UserBean"%>
<%@ page import="java.util.*"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
UserBean ub=new UserBean();
Iterator ii=ub.getAllUsers();
int i=0;
while(ii.hasNext()&&i<3){
User u=(User)ii.next();
out.print(u.getId()+u.getName()+"<br>");
i++;
}
%>
</body>
</html>
分享到:
相关推荐
一个很简单的hibernate例子 ,可以运行使用的哦,数据库配下
这是hibernate 的超级简单的例子,只有一个持久化对象和一个辅助类,还有一个测试类,对于初学者很有参考价值
hibernate的简单例子
一个最简单的Hibernate project(不涉及Struts, Tomcat, XDoclet,JBoss等东东)必须的几个东东: 1. Hibernate工具包。 2. JDBC数据库连接驱动。以mysql为例,mysql-connector-java-3.1.×-bin.jar。 3. 配置...
简单的springboot的学习项目实例,使用了hibernate连接mysql数据库,进行简单的插入和查询操作,项目中已经包含依赖的jar包和数据库脚本,只需要创建配置的数据库并使用数据库脚本建立表即可。
springmvc+hibernate4 简单登录例子
这是一个Hibernate的例子,其中有Hibernate例子所需的jar包,包括:antlr.jar,commons-logging.jar等,这是一个可以运行的Hibernate例子
jpa + hibernate 简单列子实现和junit测试 完整jar包都已测试过。
spring+spring mvc+hibernate框架整合简单小例子 适合初学者 简单易懂
struts+spring+hibernate简单登录的例子
主要介绍了zk+spring+hibernate的使用方法 早期使用的是 hibernate的配置文件 后来 被改成了 引用注释的方式 老的绑定文件也没有删除,sql下面由数据库文件 导入mysql就可以,不错的教学例子 学习起来很简单
一个简单的springmvc+hibernate例子orcale数据库,自己测试可以的,添加了增删改查方法
NULL 博文链接:https://tianjun309.iteye.com/blog/851886
1.struts2简单demo2.hibernate简单例子3.详解地址https://blog.csdn.net/yu_duan_hun/article/details/81135509
Spring mvc+hibernate整合例子(包括登录、增删改查等简单功能)
本来没事想下载论坛上同名例子,奈何售价10分,甚是气愤,遂自写之。免费下载。。。内含 sql 文件 采用JQuery+SpringMVC+Hibernate+MySql+JDK6+Tomcat7.0开发的一个Demo, 包含全部源码,部署后可直接运行,想学习...
Hibernate例子连接有需要的朋友就下载吧。。代码简单容易
Hibernate简单例子几个 入门级 many-to-one
一个简单的hibernate_4 链接Oracle例子