这工程就是ZwyUpload的使用例子 , 其中UploadServlet是图片上传的java类 , zwyupload文件夹就是我们的插件 , HelloWorld.html是最基本的例子 , common.html是一个弹出窗口的例子,images是两个html用到的一个图片。
分析一下HelloWorld.html
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>最简单的ZwyUpload</title>
<script type="text/javascript">
function showServerResult(result){
document.getElementById("zwyImage").setAttribute("src", "http://localhost:8080/ZwyUploadPro/"+result)
}
</script>
</head>
<body>
<img id="zwyImage" alt="图片" src="" width="147" height="166" >
<br>
<div id="zwyUploadContainer">
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0"
width="490" height="363">
<param name="movie" value="zwyupload/ZwyUpload.swf">
<param name="quality" value="high">
<embed id="userList" src="zwyupload/ZwyUpload.swf" width="490" height="363" quality="high" flashvars="xmlUrl=zwyupload/Config.xml"
pluginspage="http://www.macromedia.com/go/getflashplayer"
type="application/x-shockwave-flash" wmode="transparent"></embed>
</object>
</div>
</body>
</html>
上面的showServerResult会接受服务器返回的结果 ,方法名和参数是不可以更改的 。
flashvars="xmlUrl=zwyupload/Config.xml" , 这个文件需要自己配置
配置文件就在zwyupload文件夹下
<?xml version="1.0" encoding="UTF-8"?>
<Config>
<ZwyUrl>http://localhost:8080/ZwyUploadPro/UploadServlet</ZwyUrl>
<CameralView>http://localhost:8080/ZwyUploadPro/zwyupload/cn/zwy/components/CameraView.swf</CameralView>
</Config>
这个相信大家知道怎么改的 ,在自己别的项目中 , ZwyUrl是上传的Servlet , CameralView这个只要改成自己新建项目就可以了。
byte[] bigByte =new BASE64Decoder().decodeBuffer(request.getParameter("bigImage")) ;//大图
byte[] smallByte = new BASE64Decoder().decodeBuffer(request.getParameter("smallImage"));//小图
Servlet中bigImage和smallImage是不可以更改的 。
缺点:相信大家也明白了 , 与服务器的交互是在zwy_upload中完成的 ,这个会在0.2版本中改进为js与服务器交互