ssh上传下载具体实现
ssh可以实现简单的上传,但是如果想做文档上传的应该怎么做呢,就是文件上传之后自动生成一个已经上传文件的列表,并能在列表中对已上传的文件进行操作(增加、删除、修改名称),找了半天也没看到这样的教程,只好求教谢谢 --------------------编程问答-------------------- 这太宽泛了把。。你上传好的文件记录到数据库。页面上就显示数据库中的信息,每一条一行,并且都有删除,修改操作。
删除一个文件,就将文件删除,并且把数据库中对应的记录也删掉 --------------------编程问答-------------------- 1 新建一个数据表,用来存储上传的文件信息,如 id 文件名 以及 存储路径
2 新建一个文件夹,用于存储上传的文件,你每次上传一个文件就在表里增加一个激励
3 页面上展示的就是表里面的记录
删除修改 都是对表进行操作,通知也对文件夹里面的文件操作 --------------------编程问答-------------------- 你先实现单个文件上传。
然后慢慢扩展,加列表 --------------------编程问答-------------------- 可以考虑用ckfinder --------------------编程问答-------------------- 老是麻烦您,现在单个文件的上传已经做好了,接下来应该在哪可以查到demo或是教程啊 --------------------编程问答-------------------- 有个 OpenKM,java 的,开源的。但有些复杂。
你可以借鉴下这个:
java 开源的文件管理系统 --------------------编程问答-------------------- 好的,我先看看,如果不明白再问问您 --------------------编程问答-------------------- 我感觉好像做错了,现在仅仅是用struts将文件上传到了一个文件夹中,并没有和数据库连在一起,不知道应该怎么解决这个问题 --------------------编程问答-------------------- 你上传的时候要把文件存放目录放到数据库的,不然你上传的文件岂不成了没人管的野文件了? --------------------编程问答--------------------
<script type="text/javascript" src="${application}/resource/jquery/jquery.form.js"></script>
<script type="text/javascript">
//formatterdate
function formatterDate(val,row){
alert(val);
return $.fn.datebox.defaults.formatter(val);
}
function formatterDown(value, row, index) {
// alert(" value "+value+" |row "+row+" |index " +index);
// return formatString('<img onclick="alert(\'{0}\');" src="{1}"/>', row.ta_id, '${application}/resource/easy-ui/themes/icons/search.png');
// return '<a onclick="alert(\''+value+'\');" href="javascript:void(0);" style="color: red;">下载</a>';
// return '<a href="${application}/train/affix/downloadTrainAffix.action?ta_id='+value+'" style="color: red;">下载</a>';
return '<a href="javascript:downloadFile(\''+value+'\');" style="color: red;">下载</a>';
}
function downloadFile(ta_id){
window.open("${application}/train/affix/downloadTrainAffix.action?ta_id="+ta_id);
}
</script>
<!-- 该用户角色有可编辑权限、或者培训报告附件时【上传】、【删除】按钮可见 -->
<!-- 培训附件管理 -->
<table id="dg" title="" class="easyui-datagrid" style="height:250px" width="100%"
url="${application}/train/affix/showTrainAffixs!doExecute.action?ta_type=${ta_type!''}&t_id=${t_id!''}&tr_id=${tr_id!''}&sb_id=${sb_id!''}"
易做图="#易做图" pagination="false" border="false"
rownumbers="true" fitColumns="true" singleSelect="true">
<thead>
<tr>
<th field="ta_fileName" width="550">文件名称</th>
<th field="ta_fileType" width="100">文件类型</th>
<th field="ta_uploadDate" width="300">上传日期</th>
<th field="ta_id" width="150" formatter="formatterDown">操作</th>
<!-- <th field="ta_uploadDate" width="50" formatter="formatterDate">上传日期</th> -->
<!-- <th field="email" width="50">Email</th> -->
</tr>
</thead>
</table>
<div id="易做图" style="display: none;">
<a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-add" plain="true" onclick="newAffix()">上传附件</a>
<!-- <a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-edit" plain="true" onclick="editAffix()">Edit Affix</a> -->
<a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-remove" plain="true" onclick="destroyAffix()">删除附件</a>
</div>
<div id="dlg" class="easyui-dialog" style="width:400px;height:250px;padding:10px 20px" shadow="true"
modal="true" resizable="true"
closed="true" buttons="#dlg-buttons">
<div class="ftitle">请选择要上传的附件</div>
<form id="fm" method="post" novalidate="novalidate">
<input name="trainAffix.ta_type" type="hidden" value="${ta_type!''}">
<input name="trainAffix.t_id" type="hidden" value="${t_id!''}">
<input name="trainAffix.tr_id" type="hidden" value="${tr_id!''}">
<input name="trainAffix.sb_id" type="hidden" value="${sb_id!''}">
<div class="fitem">
<label>附件:</label>
<input id="file" name="file" type="file" value="">
</div>
</form>
</div>
<div id="dlg-buttons">
<a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-ok" onclick="saveAffix()">上传</a>
<a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-cancel" onclick="javascript:$('#dlg').dialog('close')">取消</a>
</div>
<div id="loading" class="easyui-dialog" shadow="true" modal="true" closed="true" closable="false"
title="请稍等"
style="width: 200px; height: 100px; text-align: center; vertical-align: middle; padding-top: 20px;">
<div style="margin-left: 20px; padding-left: 20px; text-align: left; background-image: url('${application}/default/images/loading.gif'); background-repeat: no-repeat;">正在处理,请稍等......</div>
<!-- <img alt="loading" src="${application}/default/images/loading.gif"> 正在处理,请稍等...... -->
</div>
<script type="text/javascript">
var url;
function newAffix() {
$('#dlg').dialog('open').dialog('setTitle', '上传附件');
// $('#fm').form('clear');
url = '${application}/train/affix/uploadTrainAffix!doExecute.action';
}
function editAffix() {
var row = $('#dg').datagrid('getSelected');
if (row) {
$('#dlg').dialog('open').dialog('setTitle', 'Edit Affix');
$('#fm').form('load', row);
url = 'update_user.php?id=' + row.id;
}
}
//保存
function saveAffix() {
if ($('#file').val() == '') {
$.messager.show({
title : '错误',
msg : '请选择要上传的文件。'
});
return false;
}
$('#loading').dialog('open');
$('#fm').attr('action', url);
$('#fm').ajaxSubmit(function(data) {
//$.messager.progress('close');
$('#loading').dialog('close');
if (data.indexOf('成功') > -1) {
$('#dlg').dialog('close');
$('#dg').datagrid('reload');
} else {
$.messager.show({
title : '错误',
msg : data
});
}
});
// $('#fm').form('submit',{
// url: url,
// onSubmit: function(){
// return $(this).form('validate');
// },
// success: function(result){
// var result = eval('('+result+')');
// if (result.errorMsg){
// $.messager.show({
// title: 'Error',
// msg: result.errorMsg
// });
// } else {
// $('#dlg').dialog('close'); // close the dialog
// $('#dg').datagrid('reload'); // reload the user data
// }
// }
// });
}
function destroyAffix() {
var row = $('#dg').datagrid('getSelected');
if (row) {
alert(row.ta_id);
$.messager.confirm('确认', '您确定要删除【' + row.ta_fileName + '】吗?', function(r) {
if (r) {
$.post('${application}/train/affix/deleteTrainAffix.action', {
ta_id : row.ta_id
}, function(result) {
if (result.indexOf('成功') != -1) {
$('#dg').datagrid('reload'); // reload the user data
} else {
$.messager.show({ // show error message
title : '错误',
msg : '' + result
});
}
}, 'text');
}
});
}
}
</script>
<style type="text/css">
#fm{
margin:0;
padding:10px 30px;
}
.ftitle{
font-size:14px;
font-weight:bold;
padding:5px 0;
margin-bottom:10px;
border-bottom:1px solid #ccc;
}
.fitem{
margin-bottom:5px;
}
.fitem label{
display:inline-block;
width:80px;
}
</style>
补充:Java , Web 开发