Hibernate 注解
来源:互联网 发布:web项目压缩js 编辑:程序博客网 时间:2024/06/06 01:12
一、导入jar包
1、导入所学要的jar包,在eclipse里面选中项目右击,点击菜单栏中的properties,找到Java Build Path里面的Libraries,点击右侧的Add External JARS…就可导入相应路径的jar包。具体步骤:eclipse->项目->properties->Java Build Path->Libraries->Add External JARS
2、出来导入hibernate相应的jar报,还需要导入sqljdbc的jar包。
二、代码
实现hibernate有两种方式:一种是注解配置方式,另一种是文件配置方式。下面介绍一下注解方式
1、创建建一个实体类,如:EmployeeBean.java
package zzzy;import java.io.Serializable;import javax.persistence.Column;import javax.persistence.Entity;import javax.persistence.GeneratedValue;import javax.persistence.GenerationType;import javax.persistence.Id;import javax.persistence.Table;import org.hibernate.annotations.GenericGenerator;@Entity@Table(name="Employee") //数据库表名public class EmployeeBean implements Serializable{ @Id //主键标识 @Column(name="EmployeeID",nullable=false,unique=true) @GenericGenerator(name="generator",strategy="indetity") //定义主键生成器 @GeneratedValue(strategy=GenerationType.IDENTITY) private int employeeID; private String name; private String dept; private int age; private double salary; public int getEmployeeID() { return employeeID; } public void setEmployeeID(int employeeID) { this.employeeID = employeeID; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getDept() { return dept; } public void setDept(String dept) { this.dept = dept; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public double getSalary() { return salary; } public void setSalary(double salary) { this.salary = salary; } public EmployeeBean() { }}
2、在src目录下创建名为 hibernate.cfg.xml 的配置文件,改文件的命名是国定的。
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/HibernateConfiguration DTD 3.0//EN""http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"><hibernate-configuration> <session-factory> <!-- 数据库链接字符串 --> <property name="connection.url">jdbc:sqlserver://localhost:1433;databaseName=UserInfo</property> <!-- 数据库的登陆用户名 --> <property name="connection.username">sa</property> <!-- 数据库的登陆密码 --> <property name="connection.password">123456</property> <!-- 数据库驱动 --> <property name="connection.driver_class">com.microsoft.sqlserver.jdbc.SQLServerDriver</property> <!-- 方言:为每一种数据库提供适配器,方便转换 --> <property name="dialect">org.hibernate.dialect.SQLServer2008Dialect</property> <property name="show_sql">true</property> <!-- 注解方式 --> <mapping class="zzzy.EmployeeBean" /> </session-factory></hibernate-configuration>
3、在实体类同一目录下创建包含Main函数的启动类:EmployeeMain
package zzzy;import org.hibernate.Session;import org.hibernate.SessionFactory;import org.hibernate.Transaction;import org.hibernate.cfg.Configuration;public class EmployeeMain { public static void main(String[] args) { try{ // 1. Configuration xml与注解方式是分开的 Configuration objConf = new Configuration().configure(); // 2. SessionFactory SessionFactory objSessionFact = objConf.buildSessionFactory(); // 3. Session Session objSession = objSessionFact.openSession(); // 4. 事务 Transaction objTran = objSession.beginTransaction(); // 5. 实体对象 EmployeeBean objUsers = new EmployeeBean(); //根据操作的方式(增加、修改、删除、提取数据)调用不同方法 //增加数据 objUsers.setName("王二"); objUsers.setAge(12); objUsers.setDept("你好"); objUsers.setSalary(1503.12); objSession.save(objUsers); /* //输出显示 objSession.load(objUsers, "001"); System.out.println(objUsers.getEmployeeID()); System.out.println(objUsers.getName()); //删除数据 objUsers = (EmployeeBean)objSession.get(EmployeeBean.class, "001"); objSession.delete(objUsers); //更新 objUsers = (EmployeeBean)objSession.get(EmployeeBean.class, "001"); objUsers.setName("张三"); objUsers.setAge(18); objUsers.setDept("你好"); objUsers.setSalary(3333.2); objSession.update(objUsers);*/ // 6. 提交 objTran.commit(); // 7. 关闭 objSession.close(); } catch(RuntimeException ex){ System.out.print(ex.getMessage()); } catch(Exception ex){ System.out.print(ex.getMessage()); } }}
0 0
- hibernate 注解
- hibernate注解
- hibernate注解
- hibernate注解
- Hibernate注解
- Hibernate 注解
- Hibernate注解
- hibernate注解
- hibernate 注解
- hibernate注解
- hibernate注解
- Hibernate注解
- hibernate注解
- hibernate注解
- hibernate注解
- Hibernate 注解
- hibernate注解
- Hibernate注解
- android中跨进程通讯的4种方式
- 即将25,人生路都走了三分之一。赶紧停一下,想想再战斗。
- angularJs 取<input type='file'>中文件名
- Python格式化输出
- SQL:提前七天提醒
- Hibernate 注解
- JS科学计数法初探
- 《用Python做科学计算》学习笔记(4)--numpy矩阵的操作
- 关于启动eclipse报return code=1的错误的问题解决
- SIFT
- IntelliJ IDEA 开发 WebService
- 解析书写PLSQL的工具
- Eclipse 使用mybatis generator插件自动生成代码
- shell脚本采用sed批量修改文件