将文件存储到数据库(以二进制流的形式)
来源:互联网 发布:什么笔记本适合编程 编辑:程序博客网 时间:2024/05/21 08:54
Hibernate方法
HibernateUtils.java
package yang.fang.hibernate;import org.hibernate.Session;import org.hibernate.SessionFactory;import org.hibernate.cfg.Configuration;/** * hibernate工具类 * * @author zhaoqx * */public class HibernateUtils {private static Configuration conf;private static SessionFactory sf;static {conf = new Configuration().configure();// 读取hibernate.cfg.xmlsf = conf.buildSessionFactory();}public static Session getSession() {return sf.openSession();}public static void main(String[] args) {getSession();}}
Person.java
package yang.fang.hibernate;public class Person {private Integer id;private String username;private String password;private String email;private String birthday;private String job;private String salary;private byte[] photo; // 头像图片public Integer getId() {return id;}public void setId(Integer id) {this.id = id;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}public String getEmail() {return email;}public void setEmail(String email) {this.email = email;}public String getBirthday() {return birthday;}public void setBirthday(String birthday) {this.birthday = birthday;}public String getJob() {return job;}public void setJob(String job) {this.job = job;}public String getSalary() {return salary;}public void setSalary(String salary) {this.salary = salary;}public Person() {super();}public Person(String username, String birthday, String salary) {super();this.username = username;this.birthday = birthday;this.salary = salary;}@Overridepublic String toString() {return "Person [id=" + id + ", username=" + username + ", password="+ password + ", email=" + email + ", birthday=" + birthday+ ", job=" + job + ", salary=" + salary + "]";}public byte[] getPhoto() {return photo;}public void setPhoto(byte[] photo) {this.photo = photo;}}
Person.hbm.xml
<?xml version="1.0"?><!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"><hibernate-mapping package="yang.fang.hibernate"><class name="Person" table="person"><id name="id"><generator class="native" /></id><property name="username" /><property name="password" /><property name="email" /><property name="birthday" /><property name="job" /><property name="salary"/><!-- 头像,二进制类型,最好指定长度 --><property name="photo" type="binary" length="1024000"></property></class></hibernate-mapping>
TestHibernate.java
package yang.fang.hibernate;import java.io.FileInputStream;import java.io.InputStream;import java.util.List;import org.hibernate.Criteria;import org.hibernate.Session;import org.hibernate.Transaction;import org.hibernate.criterion.Conjunction;import org.hibernate.criterion.DetachedCriteria;import org.hibernate.criterion.Disjunction;import org.hibernate.criterion.MatchMode;import org.hibernate.criterion.Projections;import org.hibernate.criterion.Restrictions;import org.junit.Test;public class TestHibernate {// 增加测试记录@Testpublic void test1() throws Exception {Session session = HibernateUtils.getSession();Transaction tr = session.beginTransaction();InputStream in = new FileInputStream("F:/test.jpg");byte[] photo = new byte[in.available()];in.read(photo);in.close();Person person = new Person();// person.setId(5);person.setUsername("欧阳锋");person.setPassword("******");person.setEmail("ouyang@qq.com");person.setBirthday("1989-05-07");person.setJob("上班");person.setSalary("60000");person.setPhoto(photo);session.save(person);tr.commit();session.close();}}
取出图片
public void testGet() throws Exception <span style="font-family: Arial, Helvetica, sans-serif;">Session session = HibernateUtils.getSession();</span><pre name="code" class="html"> Transaction tr = session.beginTransaction();Person p = (Person) session.get(Person.class, 1); // 获取 System.out.println(person.getPhoto()); OutputStream out = new FileOutputStream("D:/apple.png"); out.write(person.getPhoto()); out.close(); tx.commit(); session.close();}
0 0
- 将文件存储到数据库(以二进制流的形式)
- 用(java或plsql的存储过程)将文件以二进制的形式写入到oracle数据库(适用dwg格式文件)
- 图片以二进制的形式存储到数据库并读取
- 将IP以整型的形式存储到数据库中
- 将图片以二进制的格式存储到数据库中
- php将图片以二进制形式保存到mysql数据库的解决方法
- 将上传文件以二进制形式存入数据库中,并下载数据库中的二进制数据生成对应的文件
- 以二进制形式将图片保存到数据库,用存诸过程实现(完整代码+sql语句)
- 以二进制码形式将图片存到数据库中,再从数据库中以二进制的形式从数据库中读出来
- 将文件上传、下载(以二进制流保存到数据库)
- 将文件上传、下载(以二进制流保存到数据库)
- C#将文件上传、下载(以二进制流保存到数据库)
- 将图片以二进制存储到数据库中
- visual c++将图片以二进制流的形式存入到mysql中
- 上传文件以二进制存储到数据库中
- JAVA将以二进制形式存储在Access数据库中的图片提取出来
- smartupload实现 jsp页面上传文件 将文件以二进制形式保存在数据库
- 将图像以二进制形式存储及调用
- SpringMVC返回值的几种方式
- 由a-z0-9生成三位密码
- Oracle数据库存储过程合并sql的时候报错问题
- Delphi 窗体程序接受命令行参数
- 第21章 排序
- 将文件存储到数据库(以二进制流的形式)
- Tomcat session 复制
- preCornerDetect函数
- xsd 生成 java类
- U3D学习笔记(5)
- kernel如何保证cache数据一致性
- 控件随手指移动动画
- Android存储数据方法——SharedPreferences
- lua单链表简单实现