java在jsp將圖片獲取存到數據庫(java將圖片存入數據庫)

本文目錄一覽:

jsp中 怎麼把圖片直接存入數據庫中,最好有例子

….首先..可以選擇Apache裏面的upload包….這個是把文件傳到服務器上的上傳組件….然後是存到數據庫里….那就要看你什麼數據庫了….比如Oracle..就是Blob至Access…就是

對象

字段….存取方法都是不一樣的..要分別對待

有個通用方法,你找到圖片文件之後,建立輸入流,然後創建bytearrayoutputstream,然後從輸入流中讀位元組到後面那個流中,並沖它裏面產生位元組數組保存到byte字段中

其實建議你不要將圖片直接上傳到數據庫

圖片上傳到數據庫要用到

blob大對象(以oracle為例),這樣影響程序性能,你可以將圖片上傳到指定文件夾,同時將圖片保存的路徑+文件名上傳到數據庫,要顯示就讀取這個這個路徑找到圖片,然後顯示.剛做了個這個代碼

在JSP中怎樣將圖片上傳到數據庫中

到數據庫?

你可以建一個文件夾來保存上傳的圖片,

然後將圖片的文件名保存到數據庫中。

要用的時候在根據圖片的文件名到該文件夾下面去讀取顯示出來

我怎麼用jsp技術將圖片存到數據庫中去呀??

%@ page contentType=”text/html;charset=gb2312″%

%@ page import=”java.sql.*”%

%@page import=”java.io.*” %

%@page import=”java.util.*” %

%@ page import = “database_connection.sun_wap_refresh_conn” %

jsp:useBean id=”myconn1″ class=”database_connection.sun_wap_refresh_conn” scope=”session”/jsp:setProperty name=”myconn1″ property=”*”/

%//上一行的 jsp:useBean id=”myconn11″ id 不能有重複

myconn1.getConn();

CallableStatement cstmt=null;

Statement stmt=myconn1.conn.createStatement();

String url=””;

String flag=””;

String procedure=””;

String id=””;

url=request.getParameter(“url”);

flag=request.getParameter(“flag”);

id=request.getParameter(“id”);

ResultSet rs=null;

if(flag!=null){

if(flag.compareTo(“add”)==0){

BufferedInputStream data;

BufferedInputStream is;

int FormSize;

byte[] bb;

byte t;

String image=””;

data=new BufferedInputStream(request.getInputStream());

FormSize=request.getContentLength();

int i=0,start1=0,start2=0,_start1=0,_start2=0;

String temp=””;

String _temp=””;

String boundary=””;

is=new BufferedInputStream(data);

bb=new byte[FormSize];

while (iFormSize)

{

t=(byte)is.read();

bb[i]=t;

i++;

}

is.close();

temp=new String(bb,”ISO8859_1″);

_temp=temp;

_start1=_temp.indexOf(“boundary=”);

_temp=_temp.substring(_start1+9);

_start2=_temp.indexOf(“\r\n”);

boundary=_temp.substring(0,_start2);

_start1=_temp.indexOf(boundary);

_temp=_temp.substring(_start1+boundary.length());

_start1=_temp.indexOf(boundary);

image=_temp.substring(0,_start1);

_temp=_temp.substring(_start1+boundary.length());

_start1=image.indexOf(“\r\n\r\n”);

_start2=image.lastIndexOf(“\r\n”);

image=image.substring(_start1+4,_start2);

//out.println(“username:”+username+”bralt_name:”+alt_name+”brlevel:”+level+”brimage:”+image);

procedure=”{call sun_insert_ad_pic_image(?,?)}”;

cstmt = myconn1.conn.prepareCall(procedure);

cstmt.setString(1,url);

cstmt.setBytes(2,image.getBytes(“ISO8859_1”));

cstmt.executeUpdate();

}

if(flag.compareTo(“del”)==0){

procedure=”{call sun_delete_ad_pic_image(?)}”;

cstmt = myconn1.conn.prepareCall(procedure);

cstmt.setInt(1,Integer.parseInt(id));

cstmt.executeUpdate();

}

}

procedure=”{call sun_select_ad_pic_image(?)}”;

cstmt = myconn1.conn.prepareCall(procedure);

cstmt.setString(1,url);

rs=cstmt.executeQuery();

%

script language=”javascript”

function del(id){

location.replace(“edit_keyword_pic.jsp?flag=delurl=%=url%id=”+id);

}

/script

table width=”100%” border=”0″ cellpadding=”0″ cellspacing=”1″ bgcolor=”#B6EF07″

tr

td width=”20%” bgcolor=”#FFFFFF”ID/td

td width=”60%” bgcolor=”#FFFFFF”圖片/td

td width=”20%” bgcolor=”#FFFFFF”操作/td

/tr

%while(rs.next()){

String _id=rs.getString(“id”);

%

tr

td width=”20%” bgcolor=”#FFFFFF”%=_id%/td

td width=”60%” bgcolor=”#FFFFFF”img src=”wc1.jsp?id=%=_id%”/td

td width=”20%” bgcolor=”#FFFFFF”input type=”button” onclick=”del(‘%=_id%’)” value=”刪除”/td

/tr

%}%

/table

form name=”form1″ action=”edit_keyword_pic.jsp?flag=addurl=%=url%” method=”post” enctype=”multipart/form-data”

input type=file name=”image”input type=”submit” value=”上傳”

/form

用jsp、java實現上傳圖片,保存到數據庫,從數據庫中提取,顯示到頁面 這四步 我想問第一步,怎麼上傳圖片

用jspSmartUpload組件來實現,用jsp+servlet在Servlet里實現的代碼:

PrintWriter out = response.getWriter();

int count = 0;

// 實例化上傳控件對象

SmartUpload su = new SmartUpload();

// 初始化操作

su.initialize(config, request, response);

// 設置上傳文件最大位元組數

su.setTotalMaxFileSize(100000);

//

try {

//禁止上傳指定擴展名的文件

su.setDeniedFilesList(“ext,bat,jsp”);

} catch (SQLException e1) {

e1.printStackTrace();

}

try {

// 上傳文件到服務器

su.upload();

File fileup = new File(request.getRealPath(“upload”));

if(!fileup.exists()){

// 創建目錄

fileup.mkdir();

}

// 處理多個文件的上傳

for(int i = 0;i su.getFiles().getCount();i++){

com.jspsmart.upload.File file = su.getFiles().getFile(i);

if(!file.isMissing()){ // 如果文件有效

// 保存文件到指定上傳目錄

file.saveAs(“/upload/new.”+file.getFileExt(), su.SAVE_VIRTUAL);

count = su.save(“/upload”);

}

}

} catch (SmartUploadException e) {

e.printStackTrace();

}

out.println(count +”file(s) uploaded”);

如果你對這個上傳組件不了解,最好是先去查查用法。。。

如果對您有幫助,請記得採納為滿意答案,謝謝!祝您生活愉快!

vaela

java如何將圖片保存在數據庫中

一般都是這樣的,就是在你服務器有一個專門放置圖片的文件夾,然後數據庫保存的是你服務器圖片的路徑。需要用的時候就去數據庫裏面取路徑。得到路徑以後你想怎麼處理圖片是你的事情了。

至於如何去數據庫取路徑這個就是簡單的db操作。

加載驅動類:

Class.forName(DBDriver);

獲取連接:

Connection conn = DriverManager.getConnection(url,username,password);

創建操作對象:

PreparedStatement stmt = con.prepareStatement(sql);

執行操作:

ResultSet rs = stmt.executeQuery();

遍歷結果:

List list = new ArrayList();

while(rs.next()){

//具體操作,通常用rs.getString(name)取值

Image img = new Image();//圖片類對應你數據庫中圖片表格

img.setSrc(rs.getString(“src”));//假設你數據庫中image表中圖片地址字段是src

list.add(img);

}

記得關閉資源:

rs.close();

stmt.close();

con.close();

看你的意思是已經取出來了不知道怎麼顯示:

你取出來之後可以把圖片放在一個list裏面然後去頁面上遍歷這個list

c:forEach var=”chakan1″ items=”list”

tr

td

img src=”${chakan1.src}”/

/td

/tr

/c:forEach

大致應該是這樣

原創文章,作者:簡單一點,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/127679.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
簡單一點的頭像簡單一點
上一篇 2024-10-03 23:16
下一篇 2024-10-03 23:16

相關推薦

  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • Java JsonPath 效率優化指南

    本篇文章將深入探討Java JsonPath的效率問題,並提供一些優化方案。 一、JsonPath 簡介 JsonPath是一個可用於從JSON數據中獲取信息的庫。它提供了一種DS…

    編程 2025-04-29
  • Java Bean加載過程

    Java Bean加載過程涉及到類加載器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean加載的過程。 一、類加載器 類加載器是Java虛擬機…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介紹

    本文將詳細介紹Java Milvus SearchParam withoutFields的相關知識和用法。 一、什麼是Java Milvus SearchParam without…

    編程 2025-04-29
  • 用Python繪製酷炫圖片

    在本篇文章中,我們將展示如何使用Python繪製酷炫的圖片。 一、安裝Python繪圖庫 在使用Python繪製圖片之前,我們需要先安裝Python繪圖庫。Python有很多繪圖庫…

    編程 2025-04-29
  • Python 常用數據庫有哪些?

    在Python編程中,數據庫是不可或缺的一部分。隨着互聯網應用的不斷擴大,處理海量數據已成為一種趨勢。Python有許多成熟的數據庫管理系統,接下來我們將從多個方面介紹Python…

    編程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java語言中的一個版本,於2014年3月18日發佈。本文將從多個方面對Java 8中某一周的周一進行詳細的闡述。 一、數組處理 Java 8新特性之一是Stream…

    編程 2025-04-29
  • Java判斷字符串是否存在多個

    本文將從以下幾個方面詳細闡述如何使用Java判斷一個字符串中是否存在多個指定字符: 一、字符串遍歷 字符串是Java編程中非常重要的一種數據類型。要判斷字符串中是否存在多個指定字符…

    編程 2025-04-29
  • openeuler安裝數據庫方案

    本文將介紹在openeuler操作系統中安裝數據庫的方案,並提供代碼示例。 一、安裝MariaDB 下面介紹如何在openeuler中安裝MariaDB。 1、更新軟件源 sudo…

    編程 2025-04-29

發表回復

登錄後才能評論