中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JSP如何實現基于WEB的數據庫圖片存儲與動態顯示

發布時間:2021-11-22 13:42:13 來源:億速云 閱讀:256 作者:小新 欄目:編程語言

這篇文章給大家分享的是有關JSP如何實現基于WEB的數據庫圖片存儲與動態顯示的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

數據庫應用程序,特別是基于WEB的數據庫應用程序,常會涉及到圖片信息的存儲和顯示 。

通常我們使用的方法是將所要顯示的圖片存在特定的目錄下,在數據庫中保存相應的圖片 的名稱,在JSP中建立相應的數據源,利用數據庫訪問技術處理圖片信息。但是,如果我們想 動態的顯示圖片,上述方法就不能滿足需要了。我們必須把圖片存入數據庫,然后通過編程動 態地顯示我們需要的圖片。實際操作中,可以利用JSP的編程模式來實現圖片的數據庫存儲和 顯示。

建立后臺數據庫

if exists (select * from dbo.sysobjects
where id = object_id(N'[dbo].[p]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[p]
GO
CREATE TABLE [dbo].[p] (
  [picid] [int] IDENTITY (1, 1) NOT NULL ,
  [picname] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
  [pic] [image] NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO

向數據庫存儲二進制圖片

啟動Dreamweaver MX后,新建一個JSP文件。其代碼如下所示。

<%@ page contentType="text/html;charset=gb2312"%

><%String path = request.getContextPath();String basePath = 

request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()

+path+"/";%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 

Transitional//EN"><html> <head><base href="<%=basePath%

>"><title>My JSP 'InputImage.jsp' starting page</title>

  <meta http-equiv="pragma" content="no-cache">  <meta http-

equiv="cache-control" content="no-cache">  <meta http-equiv="expires" 

content="0">  <meta http-equiv="keywords" 

content="keyword1,keyword2,keyword3">  <meta http-equiv="description" 

content="This is my page">  <!--  <link rel="stylesheet" 

type="text/css" href="styles.css">  --> </head> <body> 

 <form action="testimage.jsp" method="POST">題目<input 

name="picname" type="text">圖片<input name="pic" type="file">

<input type="Submit" name="button1" value="提交">  </form> 

</body></html>

將此文件保存為InputImage.jsp文件,其中testimage.jsp文件是用來將圖片數據存入數據 庫的,具體代碼如下所示:

<%@ page contentType="text/html;charset=gb2312"%

><%@ page import="java.sql.*" %><%@ page import="java.util.*"%

><%@ page import="java.text.*"%><%@ page import="java.io.*"%

><jsp:useBean id="conn" scope="page" class="dbconn.DBResult"/><%String 

path = request.getContextPath();String basePath = request.getScheme()

+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><!

DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> 

<head><base href="<%=basePath%>"><title>My JSP 

'testimage.jsp' starting page</title>  <meta http-equiv="pragma" 

content="no-cache">  <meta http-equiv="cache-control" content="no-

cache">  <meta http-equiv="expires" content="0">  <meta 

http-equiv="keywords" content="keyword1,keyword2,keyword3">  <meta 

http-equiv="description" content="This is my page">  <!--  

<link rel="stylesheet" type="text/css" href="styles.css">  --> 

</head><body><% request.setCharacterEncoding("gb2312");//建立

Statement對象String picname=request.getParameter("picname");String 

pic=request.getParameter("pic");//獲得所要顯示圖片的標題、存儲路徑、內容,并進行中

文編碼FileInputStream str=new FileInputStream(pic);String sql="insert into p

(picname,pic) values(?,?)";PreparedStatement pstmt=conn.getPreparedStatement

(sql);pstmt.setString(1,picname);pstmt.setBinaryStream(2,str,str.available

());pstmt.execute();//將數據存入數據庫out.println("Success,You Have Insert an 

Image Successfully");%></body></html>

網頁中動態顯示圖片

接下來我們要編程從數據庫中取出圖片,其代碼如下所示。

<%@ page contentType="text/html;charset=gb2312"%

><%@ page import="java.sql.*" %><%@ page import="java.util.*"%

><%@ page import="java.text.*"%><%@ page import="java.io.*"%

><jsp:useBean id="conn" scope="page" class="dbconn.DBResult"/><%String 

path = request.getContextPath();String basePath = request.getScheme()

+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><!

DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> 

<head><base href="<%=basePath%>"><title>My JSP 

'testimageout.jsp' starting page</title>  <meta http-equiv="pragma" 

content="no-cache">  <meta http-equiv="cache-control" content="no-

cache">  <meta http-equiv="expires" content="0">  <meta 

http-equiv="keywords" content="keyword1,keyword2,keyword3">  <meta 

http-equiv="description" content="This is my page">  <!--  

<link rel="stylesheet" type="text/css" href="styles.css">  --> 

</head> <body>  <% int id= Integer.parseInt

(request.getParameter("picid")); String sql = "select pic from p WHERE 

picid="+id; ResultSet rs=conn.getResult(sql);  while(rs.next())  { 

ServletOutputStream sout = response.getOutputStream(); //

圖片輸出的輸出流 InputStream in = rs.getBinaryStream(1);

 byte b[] = new byte[0x7a120]; for(int i = in.read(b); i != -1;)

 {sout.write(b);//將緩沖區的輸入

輸出到頁面in.read(b); } sout.flush

(); //輸入完畢,清除緩沖 sout.close();  }%>

 </body></html>

將此文件保存為testimageout.jsp文件。下一步要做的工作就是使用HTML標記:

<%@ page contentType="text/html;charset=gb2312"%

><%@ page import="java.sql.*" %><%@ page import="java.util.*"%

><%@ page import="java.text.*"%><%@ page import="java.io.*"%

><jsp:useBean id="conn" scope="page" class="dbconn.DBResult"/><%String 

path = request.getContextPath();String basePath = request.getScheme()

+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><!

DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> 

<head><base href="<%=basePath%>"><title>My JSP 

'lookpic.jsp' starting page</title>  <meta http-equiv="pragma" 

content="no-cache">  <meta http-equiv="cache-control" content="no-

cache">  <meta http-equiv="expires" content="0">  <meta 

http-equiv="keywords" content="keyword1,keyword2,keyword3">  <meta 

http-equiv="description" content="This is my page">  <!--  

<link rel="stylesheet" type="text/css" href="styles.css">  --> 

</head> <body> <% String sql = "select * from p"; 

ResultSet rs=conn.getResult(sql);  while(rs.next())  { %>

<ccid_file values="testimageout" % />" width="100" height="100">

<% } rs.close(); %></body></html>

感謝各位的閱讀!關于“JSP如何實現基于WEB的數據庫圖片存儲與動態顯示”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

南木林县| 通榆县| 四平市| 壶关县| 西乌| 固始县| 分宜县| 桃园县| 海口市| 广宗县| 平阴县| 太谷县| 江阴市| 昌乐县| 拉孜县| 新民市| 栖霞市| 永安市| 郯城县| 仲巴县| 环江| 新河县| 滦平县| 定襄县| 萝北县| 浮梁县| 日照市| 伊通| 大足县| 兴国县| 东乡族自治县| 定西市| 慈利县| 蒙城县| 锡林郭勒盟| 钟山县| 达拉特旗| 桦甸市| 武宣县| 子长县| 盐津县|