作者:温柔的诱惑2012_431 | 来源:互联网 | 2014-08-18 22:58
1.通过写hibernate的映射文件,将实体类型转换成数据库中的表其中那个映射文件是根据实体类型而写的。实体类型User.javapackagecn.wwh.www.hibernate.dd.property;importjava.util.Arrays;importjava.util.Date;***类的作
1.通过写hibernate的映射文件,将实体类型转换成数据库中的表
其中那个映射文件是根据实体类型而写的。
实体类型User.java
package cn.wwh.www.hibernate.dd.property;
import java.util.Arrays;
import java.util.Date;
/**
*类的作用:
*
*
*@author 一叶扁舟
*@version 1.0
*@创建时间: 2014-8-17 下午08:05:30
*/
public class User {
private Integer id;
private String name; // 姓名
private boolean gender; // true表示男,false表示女
private Date birthday; // 生日
private String desc; // 一大段说明,最多为5000字
private byte[] photo; // 照片
/**
* @return the id
*/
public Integer getId() {
return id;
}
/**
* @param id the id to set
*/
public void setId(Integer id) {
this.id = id;
}
/**
* @return the name
*/
public String getName() {
return name;
}
/**
* @param name the name to set
*/
public void setName(String name) {
this.name = name;
}
/**
* @return the gender
*/
public boolean isGender() {
return gender;
}
/**
* @param gender the gender to set
*/
public void setGender(boolean gender) {
this.gender = gender;
}
/**
* @return the birthday
*/
public Date getBirthday() {
return birthday;
}
/**
* @param birthday the birthday to set
*/
public void setBirthday(Date birthday) {
this.birthday = birthday;
}
/**
* @return the desc
*/
public String getDesc() {
return desc;
}
/**
* @param desc the desc to set
*/
public void setDesc(String desc) {
this.desc = desc;
}
/**
* @return the photo
*/
public byte[] getPhoto() {
return photo;
}
/**
* @param photo the photo to set
*/
public void setPhoto(byte[] photo) {
this.photo = photo;
}
@Override
public String toString() {
return "User [birthday=" + birthday + "\n desc=" + desc + "\n gender="
+ gender + "\n id=" + id + "\n name=" + name + "\n photo="
+ Arrays.toString(photo) + "]";
}
}
2.映射文件User.hbm.xml:
3.主配置文件:
hibernate.cfg.xml
com.mysql.jdbc.Driver
jdbc:mysql://localhost:3306/hibernate
root
wwh
org.hibernate.dialect.MySQL5Dialect
update
true
true
4.测试数据库中的数据:
package cn.wwh.www.hibernate.dd.property;
import java.io.FileInputStream;
import java.util.Date;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
import org.junit.Test;
/**
*类的作用:
*
*
*@author 一叶扁舟
*@version 1.0
*@创建时间: 2014-8-17 下午08:10:38
*/
public class TestSqlByXml {
private static SessionFactory sessiOnFactory= new Configuration()
.configure()
.buildSessionFactory();
// 保存
@Test
public void testSave() throws Exception {
Session session = sessionFactory.openSession();
session.beginTransaction();
// ---------------------------------------
// 从硬盘中读取图片,然后存储数据库中
FileInputStream in = new FileInputStream("F:/psb.jpg");
byte[] photo = new byte[in.available()];
in.read(photo);
in.close();
// 准备对象
User user = new User();
user.setName("一叶扁舟");
user.setGender(true);
user.setBirthday(new Date());
user.setDesc("一叶扁舟是一个积极向上的孩子,为梦想而努力奋斗着…………");
user.setPhoto(photo);
// 保存
session.save(user);
// ---------------------------------------
session.getTransaction().commit();
session.close();
}
// 获取
@Test
public void testGet() throws Exception {
Session session = sessionFactory.openSession();
session.beginTransaction();
// ---------------------------------------
User user = (User) session.get(User.class, 1);
System.out.println(user.getName());
System.out.println(user.isGender());
System.out.println(user.getBirthday());
System.out.println(user.getDesc());
System.out.println(user.getPhoto());
// System.out.println(user);
// ---------------------------------------
session.getTransaction().commit();
session.close();
}
}