一个网站注册时,我想上传照片,如何实现? 那么在java文件里,输入数据库信息是,照片根别的输入语句是否一样? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用blob/clob类型可以保存图片或其他文件. 不一样.要通过流来操作。参看.http://blog.csdn.net/caoyinghui1986/archive/2008/04/05/2252772.aspx但实际的应用中 除非是机密的图片或文件就保存到数据库中 一般还是采用1楼的方式。 同路人!~请关注帖子:http://topic.csdn.net/u/20080428/10/ac6f245a-aff2-4f31-a5b2-18f0c0bda513.html帖子标题:JSP页面上传图片到服务目录并取其上传到服务目录后的绝对路径到数据库(MySQL) 或许咱用的数据库不一样,不过原理都一样.我用的是apache的FileUpload组件。 思路:从本地上传图片到服务目录下的一个文件夹里,并取其绝对路径和其他表单信息上传到数据库中。一个简单的例子:FileUpload组件下载地址:http://apache.mirror.phpchina.com/commons/fileupload/binaries/commons-fileupload-1.2.1-bin.zip imup.jsp页面内容: <%@ page contentType="text/html;charset=GB2312" %> <html> <head> <title>图片文件上传 </title> <style type="text/css"> <!-- .style1 {font-size: 16px} --> </style> </head> <body> <form action="save.jsp" method="post" enctype="multipart/form-data"> <p> <span class="style1">请从你的电脑上选择一张图片: </span> <input name="file" type="file" size="28"> <input type="submit" name="Submit" value="上传"> <span class="style1"> 图片文件类型:JPG & GIF </span> </p> </form> </body> </html> save.jsp页面内容: <%@page contentType="text/html"%> <%@page pageEncoding="GB2312"%> <%@ page import="org.apache.commons.fileupload.*"%> <%@page import="java.io.*"%> <%@page import="java.util.*"%> <% boolean isMultipart = FileUpload.isMultipartContent(request); if(isMultipart) { DiskFileUpload upload = new DiskFileUpload(); //设置缓冲区大小,单位Byte。这里定义的大小是4KB。 upload.setSizeThreshold(4096); //设置文件的最大尺寸,单位Byte。这里定义的大小是2MB. upload.setSizeMax(2097152); // 取得所有上传过来的文件。 List items = upload.parseRequest(request); Iterator iter = items.iterator(); // 依次处理每一个文件: while (iter.hasNext()) { FileItem item = (FileItem)iter.next(); String fieldName=item.getFieldName(); //取得上传表单内所定义的文件选择单行文本框的名字。 String name = item.getName(); //取得上传前的图片文件的绝对路径。 long size=item.getSize(); String Type=item.getContentType(); //getContentType()方法用于获得上传文件的类型,如:image/jpeg //处理保存 if(Type!=null) { if(size <2097152 && size > 0 && (Type.equals("image/pjpeg") ¦ ¦ Type.equals("image/jpeg") ¦ ¦ Type.equals("image/gif"))) { try{ //返回以毫秒为单位的当前时间。 Long date = System.currentTimeMillis(); //以时间给上传到服务目录的图片文件命名,并且把上传过来的图片文件转换成jpg格式的。 String path = pageContext.getServletContext().getRealPath("/images/"+date+".jpg"); File f=new File(path); item.write(f); out.println("上传图片到指定的目录成功!~ "); out.println(" <br>上传前的图片文件的绝对路径:"+name); out.println(" <br>上传后的图片文件的绝对路径:"+path); //将来就要把这个path上传到数据库中。 break; } catch(IOException e){ out.println(e);} } else{ out.println("图片大小或者格式不对!请重新检查 <a href=\"./imgup.jsp\">返回 </a>"); break; } //保存结束 } } //重定向到上传页面,没有返回结果。 //response.sendRedirect("imgup.jsp"); } %> 我以前写了一个GUI程序上传图片的绝对路径和图片到数据库中都成功了,想不到用JavaBean我就打车了!~咳!~ java 编写ftp下载 求助在 Hibernate3 查询不到 Oracle 11g 里的记录 越详细越好 如何写访问路径 urlRewrite伪静态正则匹配问题 jsp为什么不能删除记录 也来散个分 SQLServer中datetime数据的JSP页面显示问题 请高手指教怎么样在一个按钮上加图片 如何获取一次IP,其他页面都能够使用? 请教 如何根据用户填入的信息,生成相应的xml文件 关于eclipse中查看源代码?
要通过流来操作。
参看.http://blog.csdn.net/caoyinghui1986/archive/2008/04/05/2252772.aspx但实际的应用中 除非是机密的图片或文件就保存到数据库中 一般还是采用1楼的方式。
请关注帖子:http://topic.csdn.net/u/20080428/10/ac6f245a-aff2-4f31-a5b2-18f0c0bda513.html
帖子标题:JSP页面上传图片到服务目录并取其上传到服务目录后的绝对路径到数据库(MySQL) 或许咱用的数据库不一样,不过原理都一样.我用的是apache的FileUpload组件。
imup.jsp页面内容: <%@ page contentType="text/html;charset=GB2312" %>
<html>
<head> <title>图片文件上传 </title>
<style type="text/css">
<!--
.style1 {font-size: 16px}
-->
</style>
</head>
<body>
<form action="save.jsp" method="post" enctype="multipart/form-data">
<p> <span class="style1">请从你的电脑上选择一张图片: </span>
<input name="file" type="file" size="28">
<input type="submit" name="Submit" value="上传">
<span class="style1"> 图片文件类型:JPG & GIF </span> </p>
</form>
</body>
</html>
save.jsp页面内容: <%@page contentType="text/html"%>
<%@page pageEncoding="GB2312"%>
<%@ page import="org.apache.commons.fileupload.*"%>
<%@page import="java.io.*"%>
<%@page import="java.util.*"%>
<%
boolean isMultipart = FileUpload.isMultipartContent(request);
if(isMultipart)
{
DiskFileUpload upload = new DiskFileUpload();
//设置缓冲区大小,单位Byte。这里定义的大小是4KB。
upload.setSizeThreshold(4096);
//设置文件的最大尺寸,单位Byte。这里定义的大小是2MB.
upload.setSizeMax(2097152);
// 取得所有上传过来的文件。
List items = upload.parseRequest(request);
Iterator iter = items.iterator();
// 依次处理每一个文件:
while (iter.hasNext()) {
FileItem item = (FileItem)iter.next();
String fieldName=item.getFieldName(); //取得上传表单内所定义的文件选择单行文本框的名字。
String name = item.getName(); //取得上传前的图片文件的绝对路径。
long size=item.getSize();
String Type=item.getContentType(); //getContentType()方法用于获得上传文件的类型,如:image/jpeg
//处理保存
if(Type!=null) {
if(size <2097152 && size > 0 && (Type.equals("image/pjpeg") ¦ ¦ Type.equals("image/jpeg") ¦ ¦ Type.equals("image/gif")))
{
try{
//返回以毫秒为单位的当前时间。
Long date = System.currentTimeMillis();
//以时间给上传到服务目录的图片文件命名,并且把上传过来的图片文件转换成jpg格式的。
String path = pageContext.getServletContext().getRealPath("/images/"+date+".jpg");
File f=new File(path);
item.write(f);
out.println("上传图片到指定的目录成功!~ ");
out.println(" <br>上传前的图片文件的绝对路径:"+name);
out.println(" <br>上传后的图片文件的绝对路径:"+path); //将来就要把这个path上传到数据库中。
break;
}
catch(IOException e){
out.println(e);}
}
else{
out.println("图片大小或者格式不对!请重新检查 <a href=\"./imgup.jsp\">返回 </a>");
break;
}
//保存结束 }
}
//重定向到上传页面,没有返回结果。
//response.sendRedirect("imgup.jsp");
} %>
咳!~