<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*,java.io.*,java.awt.Image,java.awt.image.*,com.sun.image.codec.jpeg.*"%>
<html>
<body>
<%
/*
drop table imagetable;
create table imagetable
(
nid int not null,
image blob,
primary key (nid)
)
type = InnoDB;
*/
/*
//================ 一 、将文件写入到数据库的大字段中begin=====================
Class.forName("org.gjt.mm.mysql.Driver").newInstance();
String url ="jdbc:mysql://localhost:3306/test?user=root&password=eastsoftweb";
Connection conn= DriverManager.getConnection(url);
java.io.File file = new File("d:/temp/1.jpg");
FileInputStream is=new FileInputStream(file);
PreparedStatement stmt = conn.prepareStatement(
"INSERT INTO imagetable (nid,image)" +
"VALUES (?, ?)"); //预编译SQL语句
stmt.setInt(1, 1);
stmt.setBinaryStream(2, is,(int)file.length());
stmt.executeUpdate();
stmt.close();
is.close();
out.println("update end");
//===============将文件写入到数据库的大字段中end=========================
*/
/*
//====================== 二、jsp显示服务器硬盘图片示例 begin==============
FileInputStream is=new FileInputStream("d:/temp/1.JPG");
response.reset();
response.setContentType("image/jpeg");
ServletOutputStream sos = response.getOutputStream();
byte[] buffer = new byte[1024];
int len=0;
while((len=is.read(buffer))>0){
sos.write(buffer,0,len);
}
sos.flush();
sos.close();
//=======================jsp显示服务器硬盘图片示例 end===================
*/
//===================== 三、将数据库的大字段图片还原到本地,并在网页上显示begin==============
Class.forName("org.gjt.mm.mysql.Driver").newInstance();
String url ="jdbc:mysql://localhost:3306/test?user=root&password=eastsoftweb";
Connection conn= DriverManager.getConnection(url);
java.io.File file = new File("d:/temp/db.jpg");
FileOutputStream os=new FileOutputStream(file);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
ResultSet rs=stmt.executeQuery("select nid,image from imagetable where nid=1");
rs.next();
byte[] buffer=rs.getBytes(2);
stmt.close();
os.write(buffer);
os.flush();
os.close();
out.println("query end");
//网页上显示
response.reset();
response.setContentType("image/jpeg");
ServletOutputStream sos = response.getOutputStream();
sos.write(buffer);
sos.flush();
sos.close();
//======================将数据库的大字段图片还原到本地,并在网页上显示end===================
/*
//======================四、生成缩略图begin==============================
File file = new File("d:/temp/1.JPG");
String newurl="d:/temp/2.jpg"; //新的缩略图保存地址
Image src = javax.imageio.ImageIO.read(file); //构造Image对象
float tagsize=200;
int old_w=src.getWidth(null); //得到源图宽
int old_h=src.getHeight(null);
int new_w=0;
int new_h=0; //得到源图长
int tempsize;
float tempdouble;
if(old_w>old_h){
tempdouble=old_w/tagsize;
}else{
tempdouble=old_h/tagsize;
}
new_w=Math.round(old_w/tempdouble);
new_h=Math.round(old_h/tempdouble);//计算新图长宽
BufferedImage tag = new BufferedImage(new_w,new_h,BufferedImage.TYPE_INT_RGB);
tag.getGraphics().drawImage(src,0,0,new_w,new_h,null); //绘制缩小后的图
FileOutputStream newimage=new FileOutputStream(newurl); //输出到文件流
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(newimage);
encoder.encode(tag); //近JPEG编码
newimage.close();
//========================生成缩略图end================================
*/
%>
分享到:
相关推荐
总结,JSP对图片的增删改查操作涵盖了文件上传、文件I/O、数据库操作等多个方面,需要理解并熟练掌握Java的网络编程、文件处理以及数据库操作等技术。同时,良好的安全实践,如防止文件覆盖、处理异常和验证用户权限...
以上知识点涵盖了JSP图片特效处理的核心内容,实际项目中可能还需要结合数据库管理、用户权限控制等其他方面,以构建一个完整的图片处理系统。通过学习和实践这些技术,开发者能够创建出功能丰富、用户体验良好的...
8. **性能优化**:对图片进行压缩和优化,减少文件大小,可以使用工具如TinyPNG,或者在服务器端进行图片处理。此外,使用懒加载技术可以提升页面加载速度,只在图片进入视口时才加载。 以上就是在JSP中显示本地...
3. 如果需要根据图片的不同来决定跳转的页面,可以在JSP中使用条件语句(如`<c:if>`标签,来自JSTL库)来处理。例如: ```html ${imagesList}"> ${image.fileName eq '1.bmp'}"> <a href="firstPage.jsp"> ${...
【标题】"jsp图片轮播html"涉及到的技术主要包括JSP(JavaServer Pages)和HTML5,其中HTML5用于构建网页结构,JSP则用于动态生成网页内容。这种结合可以实现服务器端与客户端的交互,为用户提供更加丰富的网页体验...
【标签】"jsp滚动图片小例子"进一步强调了这个主题,表明这个示例将涵盖JSP与图片展示相关的技术,包括但不限于文件操作、页面动态渲染、前端交互等。 总的来说,这个"jsp滚动图片小例子"是一个结合了JSP、HTML、...
在IT行业中,尤其是在Web开发领域,图片处理是一项常见的任务,其中图片的旋转是用户界面设计中的重要组成部分。本文将深入探讨使用JSP(JavaServer Pages)进行图片旋转的技术细节,以及如何实现图片的放大和缩小...
同样,为用户提供图片下载功能也需要处理相关的HTTP响应头和流操作。 五、总结 "jsp项目素材图片"是Web开发中不可或缺的一部分,合理管理和使用这些资源能极大地提升网站的视觉效果和用户体验。了解如何在JSP项目...
在JSP中实现图片上传和缩略图显示是一项常见的需求,尤其在开发Web应用程序时。JSP(JavaServer Pages)是一种动态网页技术,允许我们直接在HTML中嵌入Java代码来处理服务器端逻辑。在这个场景中,我们使用了一个名...
总结来说,"jsp+jspsmartupload控件上传图片至数据库"是一个典型的Web应用功能,涉及前后端交互、文件处理、数据库操作等多个环节。通过合理的架构设计和安全控制,可以实现稳定、高效且安全的图片上传功能。
总结,实现"Jsp图片上传资料并将图片路径上传至数据库"的过程涉及前端表单设计、后端文件处理、数据库操作、异常管理和安全措施。通过合理的设计和编程,可以构建一个高效、安全的图片上传系统。
在Java Web开发中,处理图片的上传和下载是常见的需求,尤其在构建用户交互丰富的网站或应用程序时。本文将深入探讨如何使用Java JSP页面来实现这一功能。 首先,我们需要理解JSP(JavaServer Pages)的基本概念。...
在Web开发中,图片验证码(CAPTCHA)是一种广泛使用的安全机制,用于防止自动机器人或恶意软件进行非法操作,如注册、登录或者提交表单。在本主题“利用jsp生成图片验证码”中,我们将探讨如何在JavaServer Pages ...
4. **图片处理**: 在保存到服务器之前,可能需要对图片进行一些处理,如调整大小、格式转换等。可以使用Java的图像处理库,如Java Image I/O或第三方库如ImageMagick。 5. **存储到数据库**: 将图片数据存储到...
### JSPSmartUpload 实现数据库中的图片存取 #### 一、引言 在Web开发中,经常需要处理用户上传的文件,特别是图片文件。传统的做法是将这些文件存储在服务器的文件系统中,但这种方法可能会导致文件管理复杂度...
在图片上传场景中,JSP页面通常作为用户界面,收集用户上传的图片,然后通过表单提交到Servlet进行处理。 1. **JSP代码**: JSP页面中,我们需要一个表单来让用户选择要上传的图片。表单需要设置`enctype=...
在图片上传的场景中,`JSP`将作为用户界面,展示上传表单,而`Servlet`会处理表单提交,进行图片的接收、存储以及数据库操作。 1. **创建上传表单**:在`JSP`页面中,我们需要创建一个表单让用户选择并提交图片。这...
标题“图片直接保存到数据库,并在JSP页面显示”涉及的知识点主要集中在Web开发领域,尤其是Java Web开发,包括图片处理、数据库存储以及前端展示。这里我们将深入探讨以下几个关键环节: 1. 图片数据的二进制化:...
服务器接收到图片数据后,可以进行存储、处理等操作。在返回响应给浏览器时,如果希望实现预览,服务器需要将图片数据转换成可以在浏览器中显示的形式,通常是Base64编码的字符串。 "支持IE,FireFox"表示这个功能...
但当用户再次上传图片时,如果后端处理机制没有改变图片的URL(例如通过添加版本号或时间戳来强制浏览器重新加载图片),那么第二次上传后,浏览器会发现图片的URL没有改变,就会直接加载缓存中的图片,而不会向...