⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 savephotoinfo.java

📁 保存图片信息到数据库 数据库Oracle 里面用到的库需要自己重新建立
💻 JAVA
字号:
package src;

import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStream;
import java.nio.ByteBuffer;
import java.util.ArrayList;

public class SavePhotoInfo {

	/**
	 * @param args
	 */
	public SavePhotoInfo() {
		DBOperation dbOper = new DBOperation();
		dbOper.connet2DB();
	}

	private int photoSize = 0;// 变量 存放图片大小

	/**
	 * 描述 保存本地图片信息到数据库 参数 serviceID 服务编号  photoName 文件名字  photoPath
	 * 图片保存在本地磁盘上的路径
	 */
	public boolean saveInfo(String serviceID, String photoName, String photoPath) {

		DBOperation dbOper = new DBOperation();
		dbOper.connet2DB();

		byte[] photoContent = readPhotoContent(photoPath);
		boolean b = dbOper.savePhotoInfoToDatabase(serviceID, photoName,
				photoContent);

		return b;
	}

	/**
	 * 描述 按文件路径读取文件到字节数组 参数 photoPath 保存图片路径
	 */
	private byte[] readPhotoContent(String photoPath) {

		byte[] buffer = new byte[8192];
		int i = 0;
		ArrayList arrayList = new ArrayList();
		FileInputStream fis = null;
		int photoSize = 0;// 存放图片大小

		try {
			fis = new FileInputStream(photoPath);
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

		try {
			while ((i = fis.read(buffer)) != -1) {
				photoSize = photoSize + i;
//				System.out.println(i);
				byte[] temp = new byte[i];
				System.arraycopy(buffer, 0, temp, 0, i);
				arrayList.add(temp);
			}
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		byte[] finalByte = new byte[photoSize];
		int i1 = -1;
		for (int j = 0; j < arrayList.size(); j++) {
			byte[] temp = (byte[]) arrayList.get(j);
			for (int k = 0; k < temp.length; k++) {
				finalByte[++i1] = temp[k];
			}
		}
		// 保存图片的大小
		setPhotoSize(photoSize);
		System.out.println(finalByte.length);
		return finalByte;
	}

	public int getPhotoSize() {
		return photoSize;
	}

	private void setPhotoSize(int photoSize) {
		// TODO Auto-generated method stub
		this.photoSize = photoSize;
	}

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		SavePhotoInfo s = new SavePhotoInfo();
		// s.readPhotoContent("E:\\图片\\红玫瑰.jpg");
		boolean b = s.saveInfo("000000", "xianhua", "E:\\图片\\20080518139.bmp");
		// System.out.println(b.size());
		System.out.println(b);

	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -