当前位置: 首页 > 图文教程 > 网络编程 > JSP > JSP单页面网站文件管理器

JSP
jsp计数器制作
用jsp编写文件上载
基于JSP的动态网站开发技术
JSP由浅入深(3)—— 通过表达式增加动态内容
JSP由浅入深(5)—— Scriptlets和HTML的混合
JSP由浅入深(1)—— 熟悉JSP服务器
JSP由浅入深(12)—— 表单编辑
JSP由浅入深(11)—— 标记库
JSP由浅入深(10)—— Beans and Forms处理
JSP由浅入深(9)—— JSP Sessions
JSP由浅入深(8)—— JSP Tags
JSP由浅入深(6)—— JSP声明
JSP由浅入深(4)—— Scriptlets
JSP由浅入深(2)—— 第一个JSP
JSP由浅入深(7)—— JSP Directives
JSP中的字符替换函数 str_replace() 实现!
把一张图片变形扭曲成各种不同的长宽
用JSP编写通用信息发布程序
Java Servlet及Cookie的使用
Apache+Servlet+Jsp环境设置(上)

JSP单页面网站文件管理器


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-02   浏览: 93 ::
收藏到网摘: n/a

 

这个文件的开发的设计思想是这样的。有的web 网站,或者B/S 软件的客户,在软件的安装调试阶段,往往对某些细节有特殊要求,也许,是字体的调整,也许是界面方面的小改动意见。面对这样的情况,如果用户没有开放FTP 功能,则开发和维护人员往往就必须亲临现场做一些很小的调试工作。

即浪费了时间,也浪费了人力物力。

在这样的情况下,我开发了这个具有文件管理功能的 JSP 单页面文件。它提供了文件夹的新增,更名,删除;文件的修改,更名,删除和上传的功能。基本能满足在软件的安装调试阶段,小的修改工作。

为了安全原因,该JSP 页面提供了简单的用户登陆功能。

使用前,把该文件置于网站文件,或者B/S 产品的任意目录下。开放文件安装目录的 读写 操作权限。用户远程登陆该JSP 页面,就可以行使管理功能。当安装维护阶段结束以后,请修改文件安装目录的 读写 权限,并删除该文件,以免留下安全隐患。

缺省,登陆用户名为:admin 密码为:oddworld

开发环境 jakarta-tomcat-4.0.3.exe

注意:因为本软件的上传文件功能必须有 smartupload 组件支持。请把smartupload 置于tomcat 对应文件夹web-inf 下。如果你支持上传的组件有所不同,请自行调整。

简要开发说明:因为本文件并不复杂,加上本人自我感觉,文档说明虽然不规范,却也详细,所以只打算简要的关于一些小细节上做说明。

1. 本文件进行文件目录操作的时候,直接把目录当参数来传递,没有进行相应的转换。这是因为在 java 中, “\英文字符”有可能会被认为是转意字符,而引起在字符处理过程中出现无法预期的问题,所以我认为直接把目录来作为参数,在操作上比较合理。

2. 本文件在一些表单的提交方面,使用连接,而不是按钮,是因为 javascript 处理带 “\”的字符串时,也会有处理转意字符的可能,所以,为了防止这样的情况,所以传递目录参数的提交,都使用连接形式。

3. strStat,strErr 两个字符串,贯穿文件始终,前者为页面进行何种操作的判断命令,后者为在所有操作中出错的信息提示。

4. 本文件有可能引起的安全或者其它方面的纠纷,本人不做任何解释。我只是把该文件作为一个免费的工具提供给大家参考,使用。

----------------------------------------------------------------

文件内容 admin.jsp

<%--  oddWorld 网站文件管理系统(简体中文版) 2003年10月10日
 copy right by joard Ast 
 
 admin.jsp 功能:网站文件后台管理页面。
 --%>
 <%@ page contentType="text/html;charset=gb2312" %>
 <%@ page import="java.io.*" %>
 <%@ page import="java.util.Date" %>
 <%@ page import="com.jspsmart.upload.SmartUpload" %>
 <%@ page import="javax.servlet.http.HttpSession" %>
 <%@ page import="javax.servlet.http.HttpServletRequest" %>
 <%@ page import="java.lang.reflect.*" %>
 
<% //中文字符转换%>
<%!

public static String UnicodeToChinese(String s){
   try{
       if(s==null||s.equals("")) return "";
       String newstring=null;
       newstring=new String(s.getBytes("ISO8859_1"),"gb2312");
       return newstring;
     }
   catch(UnsupportedEncodingException e)
   {
    return s;
   }
  }

public static String ChineseToUnicode(String s){
   try{
    if(s==null||s.equals("")) return "";
     String newstring=null;
     newstring=new String(s.getBytes("gb2312"),"ISO8859_1");
       return newstring;
   }
   catch(UnsupportedEncodingException e)
   {
    return s;
  }
}
%>
 
 <%
 //刷新问题
response.setHeader("Pragma","No-cache");
response.setHeader("Cache-Control","no-cache");
response.setDateHeader("Expires", 0);


//自定义登陆用密码和用户名
//正确的用户名
String username="admin" 
//正确的密码
String userpass="oddworld";

//得到系统路径
ServletContext app=(ServletContext)pageContext.getServletContext();
String strSysPath = app.getRealPath("/");

//处理对象物理路径
String