美文网首页
FTP项目基本优化完成

FTP项目基本优化完成

作者: Lucas汪星人 | 来源:发表于2017-04-26 10:11 被阅读39次

    FTP项目优化基本完成

    前面我做了一个c/s的项目不知道大家看没看,我把它优化了一下转成b/s的项目,基本实现了增删改查等较为常见的功能。并且用json返回了几个接口,给前端和移动端用。

    此项目融合了servlet、mybatis、ftp、线程、接口json数据返回、相关知识。有需要的可以来看一看

    基本架构

    用servlet做控制器来获取请求,mybatis来进行数据的增删改查,用一个异常
    对象(不是继承异常,是一个对象代表异常)来以json的格式返回处理结果。
    

    详细步骤就不说了,主要几个注意点

    1. 自定义一个对象,定义几个属性和构造方法,当有异常的时候对属性进行复制并返回对象至控制层,然后json返回。

    自定义异常对象

    2. 线程的start和run方法

    • start
      :在主线程中启用分线程对象的start方法的话,会立即调用分线程的run方法,并且主线程会继续往下走。 但是一个线程已经start了之后就不能再次start。

    • run
      : 在主线程中启动分线程对象的run方法就会立即调用分线程的run方法,并且主线程不会继续往下走。

      由于我项目本来是启动两个线程,并且不管开关控制线程的时候对象都没有释放。但是由于start之后不能run,因为run的话主线程就无法返回接口数据了。所以现在每次关闭,都是将线程置为null,释放。每次开启都是一个新的线程对象。

      /**
         * 停止任务
         */
        public void cancelTask(String task){
            setClose(true);
            if (task.equals("upload")) {
                uploadThread = null;
            }else {
                downloadThread = null;
            }
        }
      

    3. 做接口真的需要判断很多种情况,并且每种情况都需要一个合理的数据返回。这样用户才会有一个好的体验。所以前期的架构设计很重要!不然就会产生很多重复的代码,并且后面只能越来越臃肿。

    细的就不多说了。感兴趣的可以下载看一看。

    联系方式

    相关文章

      网友评论

          本文标题:FTP项目基本优化完成

          本文链接:https://www.haomeiwen.com/subject/ypcizttx.html