最近公司要求用jspsmart上传下载,用的框架是spring +ibatis
页面代码stencilAdd.jsp
<%@ include file="/WEB-INF/jsp/inc/tld.jsp" %>
<%@ include file="/WEB-INF/jsp/inc/css.jsp" %>
<%@ include file="/WEB-INF/jsp/inc/js.jsp" %>
<html>
<head>
<script type="text/javascript"
src="/js/mart/sentil/fileUpLoad.js"></script> <title>添加行业模版</title></head>
<body >
<div align="center">
<html:navigation content="行业模版管理>>行业模版添加"/> <table class="inputTable">
<html:form action="stencilAddSave.mart" method="post"
name="afficheForm" id="afficheForm" enctype="multipart/form-data"> <tr class="inputTableHead">
<td colspan="2">行业模版信息</td>
</tr> <tr>
<td width="150" >数据等级</td>
<td colspan="3" >
<select name="rule_level" id="rule_level">
<option value="1">基本员工</option>
<option value="2">中层领导</option>
<option value="3">高层领导</option>
<option value="4">领导</option>
</select><font color="#FF0000">*</font></td>
</tr> <tr>
<td width="100">文件名</td>
<td width="600">
<input type="text" class="char" name="rule_filename" maxlength="50" style="width:200"
><font color="#FF0000">*</font>
</td>
</tr>
<tr>
<td>备注</td>
<td>
<textarea name="rule_re" class="char" style="height:50"
style="width:200"></textarea><font color="#FF0000">*</font>
</td>
</tr> <tr>
<td>文件附件 </td>
<td>
<input type="file" size="20" name="rule_addition" /><font color="#FF0000">*</font>
<font color="red">上传文件须小于4M</font>
</td>
</tr>
</html:form>
</table>
<br>
<input type="button" class="btn" imageType="ok" style="width:70" value="确 定" <%if(!systemhandleList.contains("HYMB3")){%>disabled<%}%> onclick="myUploadFile('afficheForm','stencilAddSave.mart')">//用js获取页面的普通属性
<input type="button" class="btn" imageType="return" style="width:70" value="返 回" <%if(!systemhandleList.contains("HYMB1")){%>disabled<%}%> onclick="link('stencilPage.mart')">
</div>
</body>
</html>js代码
/**从页面获取值传给控制器
**/function myUploadFile(form,url){
// var rule_cuid = document.getElementById("rule_cuid").value;
// var rule_cdate = document.getElementById("rule_cdate").value; var rule_filename = document.getElementById("rule_filename").value;
var rule_level = document.getElementById("rule_level").value;
var rule_re = document.getElementById("rule_re").value; var myValues=rule_filename+";"+rule_level+";"+rule_re; document.forms[form].action=url+"?myValues="+myValues; document.forms[form].submit();
}javabean 代码
package com.framework.mapping;import com.framework.mapping.PageInfo;public class Yf_rule extends PageInfo {
private String rule_id;
private String rule_cuid;
private java.util.Date rule_cdate;
private String rule_filename;
private String rule_addition;
private String rule_level;
private String rule_re;
private String rule_type;
private String rule_states;
private String rule_backup1;
private String rule_backup2; public Yf_rule() {
} public Yf_rule(String rule_id) {
this.rule_id = rule_id;
} public final String getRule_id() {
return rule_id;
} public final void setRule_id(String rule_id) {
this.rule_id = rule_id;
} public final String getRule_cuid() {
return rule_cuid;
} public final void setRule_cuid(String rule_cuid) {
this.rule_cuid = rule_cuid;
} public final java.util.Date getRule_cdate() {
return rule_cdate;
} public final void setRule_cdate(java.util.Date rule_cdate) {
this.rule_cdate = rule_cdate;
} public final String getRule_filename() {
return rule_filename;
} public final void setRule_filename(String rule_filename) {
this.rule_filename = rule_filename;
} public final String getRule_addition() {
return rule_addition;
} public final void setRule_addition(String rule_addition) {
this.rule_addition = rule_addition;
} public final String getRule_level() {
return rule_level;
} public final void setRule_level(String rule_level) {
this.rule_level = rule_level;
} public final String getRule_re() {
return rule_re;
} public final void setRule_re(String rule_re) {
this.rule_re = rule_re;
} public final String getRule_type() {
return rule_type;
} public final void setRule_type(String rule_type) {
this.rule_type = rule_type;
} public final String getRule_states() {
return rule_states;
} public final void setRule_states(String rule_states) {
this.rule_states = rule_states;
} public final String getRule_backup1() {
return rule_backup1;
} public final void setRule_backup1(String rule_backup1) {
this.rule_backup1 = rule_backup1;
} public final String getRule_backup2() {
return rule_backup2;
} public final void setRule_backup2(String rule_backup2) {
this.rule_backup2 = rule_backup2;
}
}spring控制器代码 public ModelAndView stencilAddSave(HttpServletRequest request, HttpServletResponse response) throws Exception { Yf_rule yf_rule=(Yf_rule)fillBean(Yf_rule.class,request);
String myValues = request.getParameter("myValues");
String[] str = myValues.split(";");
yf_rule.setRule_filename(str[0]);
yf_rule.setRule_level(str[1]);
yf_rule.setRule_re(str[2]);
yf_rule.setRule_cuid(loginUser.getLoginUser_ID());
yf_rule.setRule_cdate(DateUtil.strToDate(DateUtil.getDate()));
yf_rule.setRule_id(StringUtil.getPrimaryKey());
yf_rule.setRule_states("1");
yf_rule.setRule_type("2");
SmartUpload mySmartUpload = new SmartUpload(); mySmartUpload.initialize(application,request,response);
mySmartUpload.setMaxFileSize(4*1024*1024);//设定上传限制4M mySmartUpload.upload();
List list = new ArrayList();
String filename = StringUtil.getPrimaryKey()+".jsp";
for (int i=0;i<mySmartUpload.getFiles().getCount();i++){
if(i == 0){
com.jspsmart.upload.File myFile = mySmartUpload.getFiles().getFile(i);
myFile.saveAs("/WEB-INF/jsp/info/affiche/"+filename);
} } int result = stencilLogic.insertYf_rule(yf_rule); if(result>0){
list.add(makeHref("返回页面","stencilPage.mart?"));
model=returnInfo("附件上传成功",list);
model.put("loginUser",loginUser);
return new ModelAndView(SUCCESS_PAGE,model);
} else
{
model=returnInfo("附件上传失败!",makeHref("返回","stencilPage.mart"));
return redirectPage(MESSAGE_PAGE,model);
} }控制器中可是获取不了上传文件的流
请问用什么解决
项目快到期了,请大家帮帮
页面代码stencilAdd.jsp
<%@ include file="/WEB-INF/jsp/inc/tld.jsp" %>
<%@ include file="/WEB-INF/jsp/inc/css.jsp" %>
<%@ include file="/WEB-INF/jsp/inc/js.jsp" %>
<html>
<head>
<script type="text/javascript"
src="/js/mart/sentil/fileUpLoad.js"></script> <title>添加行业模版</title></head>
<body >
<div align="center">
<html:navigation content="行业模版管理>>行业模版添加"/> <table class="inputTable">
<html:form action="stencilAddSave.mart" method="post"
name="afficheForm" id="afficheForm" enctype="multipart/form-data"> <tr class="inputTableHead">
<td colspan="2">行业模版信息</td>
</tr> <tr>
<td width="150" >数据等级</td>
<td colspan="3" >
<select name="rule_level" id="rule_level">
<option value="1">基本员工</option>
<option value="2">中层领导</option>
<option value="3">高层领导</option>
<option value="4">领导</option>
</select><font color="#FF0000">*</font></td>
</tr> <tr>
<td width="100">文件名</td>
<td width="600">
<input type="text" class="char" name="rule_filename" maxlength="50" style="width:200"
><font color="#FF0000">*</font>
</td>
</tr>
<tr>
<td>备注</td>
<td>
<textarea name="rule_re" class="char" style="height:50"
style="width:200"></textarea><font color="#FF0000">*</font>
</td>
</tr> <tr>
<td>文件附件 </td>
<td>
<input type="file" size="20" name="rule_addition" /><font color="#FF0000">*</font>
<font color="red">上传文件须小于4M</font>
</td>
</tr>
</html:form>
</table>
<br>
<input type="button" class="btn" imageType="ok" style="width:70" value="确 定" <%if(!systemhandleList.contains("HYMB3")){%>disabled<%}%> onclick="myUploadFile('afficheForm','stencilAddSave.mart')">//用js获取页面的普通属性
<input type="button" class="btn" imageType="return" style="width:70" value="返 回" <%if(!systemhandleList.contains("HYMB1")){%>disabled<%}%> onclick="link('stencilPage.mart')">
</div>
</body>
</html>js代码
/**从页面获取值传给控制器
**/function myUploadFile(form,url){
// var rule_cuid = document.getElementById("rule_cuid").value;
// var rule_cdate = document.getElementById("rule_cdate").value; var rule_filename = document.getElementById("rule_filename").value;
var rule_level = document.getElementById("rule_level").value;
var rule_re = document.getElementById("rule_re").value; var myValues=rule_filename+";"+rule_level+";"+rule_re; document.forms[form].action=url+"?myValues="+myValues; document.forms[form].submit();
}javabean 代码
package com.framework.mapping;import com.framework.mapping.PageInfo;public class Yf_rule extends PageInfo {
private String rule_id;
private String rule_cuid;
private java.util.Date rule_cdate;
private String rule_filename;
private String rule_addition;
private String rule_level;
private String rule_re;
private String rule_type;
private String rule_states;
private String rule_backup1;
private String rule_backup2; public Yf_rule() {
} public Yf_rule(String rule_id) {
this.rule_id = rule_id;
} public final String getRule_id() {
return rule_id;
} public final void setRule_id(String rule_id) {
this.rule_id = rule_id;
} public final String getRule_cuid() {
return rule_cuid;
} public final void setRule_cuid(String rule_cuid) {
this.rule_cuid = rule_cuid;
} public final java.util.Date getRule_cdate() {
return rule_cdate;
} public final void setRule_cdate(java.util.Date rule_cdate) {
this.rule_cdate = rule_cdate;
} public final String getRule_filename() {
return rule_filename;
} public final void setRule_filename(String rule_filename) {
this.rule_filename = rule_filename;
} public final String getRule_addition() {
return rule_addition;
} public final void setRule_addition(String rule_addition) {
this.rule_addition = rule_addition;
} public final String getRule_level() {
return rule_level;
} public final void setRule_level(String rule_level) {
this.rule_level = rule_level;
} public final String getRule_re() {
return rule_re;
} public final void setRule_re(String rule_re) {
this.rule_re = rule_re;
} public final String getRule_type() {
return rule_type;
} public final void setRule_type(String rule_type) {
this.rule_type = rule_type;
} public final String getRule_states() {
return rule_states;
} public final void setRule_states(String rule_states) {
this.rule_states = rule_states;
} public final String getRule_backup1() {
return rule_backup1;
} public final void setRule_backup1(String rule_backup1) {
this.rule_backup1 = rule_backup1;
} public final String getRule_backup2() {
return rule_backup2;
} public final void setRule_backup2(String rule_backup2) {
this.rule_backup2 = rule_backup2;
}
}spring控制器代码 public ModelAndView stencilAddSave(HttpServletRequest request, HttpServletResponse response) throws Exception { Yf_rule yf_rule=(Yf_rule)fillBean(Yf_rule.class,request);
String myValues = request.getParameter("myValues");
String[] str = myValues.split(";");
yf_rule.setRule_filename(str[0]);
yf_rule.setRule_level(str[1]);
yf_rule.setRule_re(str[2]);
yf_rule.setRule_cuid(loginUser.getLoginUser_ID());
yf_rule.setRule_cdate(DateUtil.strToDate(DateUtil.getDate()));
yf_rule.setRule_id(StringUtil.getPrimaryKey());
yf_rule.setRule_states("1");
yf_rule.setRule_type("2");
SmartUpload mySmartUpload = new SmartUpload(); mySmartUpload.initialize(application,request,response);
mySmartUpload.setMaxFileSize(4*1024*1024);//设定上传限制4M mySmartUpload.upload();
List list = new ArrayList();
String filename = StringUtil.getPrimaryKey()+".jsp";
for (int i=0;i<mySmartUpload.getFiles().getCount();i++){
if(i == 0){
com.jspsmart.upload.File myFile = mySmartUpload.getFiles().getFile(i);
myFile.saveAs("/WEB-INF/jsp/info/affiche/"+filename);
} } int result = stencilLogic.insertYf_rule(yf_rule); if(result>0){
list.add(makeHref("返回页面","stencilPage.mart?"));
model=returnInfo("附件上传成功",list);
model.put("loginUser",loginUser);
return new ModelAndView(SUCCESS_PAGE,model);
} else
{
model=returnInfo("附件上传失败!",makeHref("返回","stencilPage.mart"));
return redirectPage(MESSAGE_PAGE,model);
} }控制器中可是获取不了上传文件的流
请问用什么解决
项目快到期了,请大家帮帮
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货