smartUpload是一个 上传文件的jar包,下载以后可以直接复制到lib下面,可以在JSP里面直接调用
一,单文件上传
1,第一页
<body>
<form action="upload_action2.jsp" method="post" enctype="multipart/form-data">
照片:<input type="file" name="pic"/><br/>
<input type="submit" value="上传"/>
</form>
</body>
2,第二页
<body>
<%
//实例化一个上传组件
SmartUpload smart=new SmartUpload();
//初始化上传操作
smart.initialize(pageContext);
//设置字符集
//准备上传
smart.upload();
//将上传的文件保存 到项目根路径下的uploadfile目录中
smart.save("d:");
%>
</body>
二,混合文件上传
1,第一页
<body>
<form action="upload_action2.jsp" method="post" enctype="multipart/form-data">
用户名:<input type="text" name="username"/>
照片:<input type="file" name="pic"/><br/>
<input type="submit" value="上传"/>
</form>
</body>
2,第二页
body>
<%
//实例化一个上传组件
SmartUpload smart=new SmartUpload();
//初始化上传操作
smart.initialize(pageContext);
//设置字符集
//smart.setCharset("gbk");
//准备上传
smart.upload();
Request smartReq=smart.getRequest();
String username=smartReq.getParameter("username");
//将上传的文件保存 到项目根路径下的uploadfile目录中
smart.save("d:");
%>
<h3>姓名:<%=username%></h3>
<h3>使用request内置对象获取:<%=request.getParameter("username") %></h3>
</body>
三,多文件上传
1,第一页页面
<form action="upload_action3.jsp" method="post" enctype="multipart/form-data">
照片1:<input type="file" name="pic1"/><br/>
照片2:<input type="file" name="pic2"/><br/>
照片3:<input type="file" name="pic3"/><br/>
<input type="submit" value="上传"/>
<input type="reset" value="重置"/>
</form>
</body>
2, 显示页面
<body>
<%
//实例化一个上传组件
SmartUpload smart=new SmartUpload();
//初始化上传操作
smart.initialize(pageContext);
//设置字符集
//smart.setCharset("gbk");
//准备上传
smart.upload();
//取得所有上传文件
Files files=smart.getFiles();
//循环保存各个文件
for(int i=0;i<files.getCount();i++){
//将上传的文件保存 到项目根路径下的uploadfile目录中
smart.save("d:");
}
%>
</body>
四,控制上传文件类型
//设置上传文件类型
smart.setAllowedFilesList("jpg,png");
//准备上传
五,控制上传文件大小
1,设置单个文件大小
smart.setMaxFileSize(2000);
2,设置总共文件上传大小限制
smart.setTotalMaxFileSize(10000);
一,单文件上传
1,第一页
<body>
<form action="upload_action2.jsp" method="post" enctype="multipart/form-data">
照片:<input type="file" name="pic"/><br/>
<input type="submit" value="上传"/>
</form>
</body>
2,第二页
<body>
<%
//实例化一个上传组件
SmartUpload smart=new SmartUpload();
//初始化上传操作
smart.initialize(pageContext);
//设置字符集
//准备上传
smart.upload();
//将上传的文件保存 到项目根路径下的uploadfile目录中
smart.save("d:");
%>
</body>
二,混合文件上传
1,第一页
<body>
<form action="upload_action2.jsp" method="post" enctype="multipart/form-data">
用户名:<input type="text" name="username"/>
照片:<input type="file" name="pic"/><br/>
<input type="submit" value="上传"/>
</form>
</body>
2,第二页
body>
<%
//实例化一个上传组件
SmartUpload smart=new SmartUpload();
//初始化上传操作
smart.initialize(pageContext);
//设置字符集
//smart.setCharset("gbk");
//准备上传
smart.upload();
Request smartReq=smart.getRequest();
String username=smartReq.getParameter("username");
//将上传的文件保存 到项目根路径下的uploadfile目录中
smart.save("d:");
%>
<h3>姓名:<%=username%></h3>
<h3>使用request内置对象获取:<%=request.getParameter("username") %></h3>
</body>
三,多文件上传
1,第一页页面
<form action="upload_action3.jsp" method="post" enctype="multipart/form-data">
照片1:<input type="file" name="pic1"/><br/>
照片2:<input type="file" name="pic2"/><br/>
照片3:<input type="file" name="pic3"/><br/>
<input type="submit" value="上传"/>
<input type="reset" value="重置"/>
</form>
</body>
2, 显示页面
<body>
<%
//实例化一个上传组件
SmartUpload smart=new SmartUpload();
//初始化上传操作
smart.initialize(pageContext);
//设置字符集
//smart.setCharset("gbk");
//准备上传
smart.upload();
//取得所有上传文件
Files files=smart.getFiles();
//循环保存各个文件
for(int i=0;i<files.getCount();i++){
//将上传的文件保存 到项目根路径下的uploadfile目录中
smart.save("d:");
}
%>
</body>
四,控制上传文件类型
//设置上传文件类型
smart.setAllowedFilesList("jpg,png");
//准备上传
五,控制上传文件大小
1,设置单个文件大小
smart.setMaxFileSize(2000);
2,设置总共文件上传大小限制
smart.setTotalMaxFileSize(10000);