仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 523|回复: 9
打印 上一主题 下一主题

[学习教程] JAVA网页编程之jsp上传图片

[复制链接]
柔情似水 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:21:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
用java开发web只要两本书:一本是关于java基础的,一本是关于jsp、servlet的就可以了。开发周期长,我就来讲句题外话,现在有很多思想都是通过java来展现。js|上传|上传图片JSP上传图片并天生缩略图
本例子利用了jspsmart组件举行上传,这里能够收费下载该组件www.jspsmart.com
下载解压后,将jar包复制到 WEB-INFlib 目次后重启服务器,jspsmart便可一般利用了
1、uploadimage.jsp
<%@pagecontentType="text/html;charset=gb2312"language="java"import="java.io.*,java.awt.Image,java.awt.image.*,com.sun.image.codec.jpeg.*,java.sql.*,com.jspsmart.upload.*,java.util.*,cn.oof.database.*,cn.oof.house.*"%>
<%
SmartUploadmySmartUpload=newSmartUpload();
longfile_size_max=4000000;
StringfileName2="",ext="",testvar="";
Stringurl="uploadfile/images/";//应包管在根目次中有此目次的存在
//初始化
mySmartUpload.initialize(pageContext);
//只同意上载此类文件
try...{
mySmartUpload.setAllowedFilesList("jpg,gif");
//上载文件
mySmartUpload.upload();
}catch(Exceptione)...{
%>
<SCRIPTlanguage=javascript>
alert("只同意上传.jpg和.gif范例图片文件");
window.location=upfile.jsp;
</script>
<%
}
try...{
com.jspsmart.upload.FilemyFile=mySmartUpload.getFiles().getFile(0);
if(myFile.isMissing())...{%>
<SCRIPTlanguage=javascript>
alert("请先选择要上传的文件");
window.location=upfile.jsp;
</script>
<%}
else...{
//StringmyFileName=myFile.getFileName();//获得上载的文件的文件名
ext=myFile.getFileExt();//获得后缀名
intfile_size=myFile.getSize();//获得文件的巨细
Stringsaveurl="";
if(file_size<file_size_max)...{
//变动文件名,获得以后上传工夫的毫秒数值
Calendarcalendar=Calendar.getInstance();
Stringfilename=String.valueOf(calendar.getTimeInMillis());
saveurl=request.getRealPath("/")+url;
saveurl+=filename+"."+ext;//保留路径
myFile.saveAs(saveurl,mySmartUpload.SAVE_PHYSICAL);
//out.print(filename);
//-----------------------上传完成,入手下手天生缩略图-------------------------
java.io.Filefile=newjava.io.File(saveurl);//读进方才上传的文件
Stringnewurl=request.getRealPath("/")+url+filename+"_min."+ext;//新的缩略图保留地点
Imagesrc=javax.imageio.ImageIO.read(file);//机关Image对象
floattagsize=200;
intold_w=src.getWidth(null);//失掉源图宽
intold_h=src.getHeight(null);
intnew_w=0;
intnew_h=0;//失掉源图长
inttempsize;
floattempdouble;
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);//盘算新图长宽
BufferedImagetag=newBufferedImage(new_w,new_h,BufferedImage.TYPE_INT_RGB);
tag.getGraphics().drawImage(src,0,0,new_w,new_h,null);//绘制减少后的图
FileOutputStreamnewimage=newFileOutputStream(newurl);//输入到文件流
JPEGImageEncoderencoder=JPEGCodec.createJPEGEncoder(newimage);
encoder.encode(tag);//近JPEG编码
newimage.close();
}
else...{
out.print("<SCRIPTlanguage=javascript>");
out.print("alert(上传文件巨细不克不及凌驾"+(file_size_max/1000)+"K);");
out.print("window.location=upfile.jsp;");
out.print("</SCRIPT>");
}
}
}catch(Exceptione)...{
e.toString();
}
%>
2upload.htm
<html>
<head>
<title>请选择上传的图片</title>
</head>
<body>
<tableborder="0"align="center"cellpadding="0"cellspacing="0">
<tr>
<tdheight="45"align="center"valign="middle"><formaction="uploadimage.jsp"method="post"enctype="multipart/form-data"name="form1">
请选择上传的图片
<inputtype="file"name="file">
<inputtype="submit"name="Submit"value="上传">
</form></td>
</tr>
</table>
</body>
</html>


大型的应用一般不会用这些框架(因为性能考虑);开发人员根据需要选择用一些框架,也可以不选用框架;不用框架并不代表要自己写框架;修改框架的可能性更小。
乐观 该用户已被删除
沙发
发表于 2015-1-20 20:55:06 | 只看该作者
Java是一种计算机编程语言,拥有跨平台、面向对java
蒙在股里 该用户已被删除
板凳
发表于 2015-1-30 12:17:44 | 只看该作者
那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧!
小妖女 该用户已被删除
地板
发表于 2015-1-31 10:32:41 来自手机 | 只看该作者
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
爱飞 该用户已被删除
5#
发表于 2015-2-2 21:30:38 | 只看该作者
Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)
小魔女 该用户已被删除
6#
发表于 2015-2-6 16:45:15 | 只看该作者
多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
变相怪杰 该用户已被删除
7#
发表于 2015-3-5 18:25:50 | 只看该作者
是一种语言,用以产生「小应用程序(Applet(s))
飘飘悠悠 该用户已被删除
8#
发表于 2015-3-7 00:35:25 | 只看该作者
那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧!
海妖 该用户已被删除
9#
发表于 2015-3-13 07:09:43 | 只看该作者
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
若相依 该用户已被删除
10#
发表于 2015-3-20 16:32:49 | 只看该作者
当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 21:58

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表