javaFtp服务管理项目总结

这段时间一直在做一个提供公司机顶盒系统升级,和应用Apk升级服务管理和用户使用信息记录和数据搜集项目的开发,由于项目就是自己一个人做,个人技术有限,中间也出现了不少问题,不过还好都解决了,现在项目基本功能都完成了,还差跟android端口通讯和linux项目通讯部分工作还没完成,我把项目中遇到的并且以前做项目没遇到的问题记录了部分,以后遇到的话也有个参考
1.jason使用需要的jar包和下载地址

json-lib-2.3-jdk15.jar
commons-beanutils-1.7.0.jar
commons-httpclient-3.1.jar
commons-lang-2.3.jar
commons-logging-1.0.4.jar
commons-collections-3.1.jar
ezmorph-1.0.3.jar
这些包可以从一下地方下载:
http://commons.apache.org/index.html

http://www.docjar.com/    这个网站上有很多开发需要的资源
如果不关联这些包,则会出现以下错误:
java.lang.NoClassDefFoundError: net/sf/ezmorph/Morpher
java.lang.NoClassDefFoundError: org/apache/commons/collections/map/ListOrderedMap
java.lang.NoClassDefFoundError: org/apache/commons/beanutils/DynaBean
java.lang.NoClassDefFoundError: org/apache/commons/codec/DecoderException
java.lang.NoClassDefFoundError: org/apache/commons/lang/exception/NestableRuntimeException
java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory


uploadFile组件的下载地址
http://commons.apache.org/proper/commons-fileupload/download_fileupload.cgi


-----------2013-08-16-----------------
在项目中如果使用jstl标签库,不但要在Lib中导入jstl标签库的jar包,页面中引入标签库


jsp头部加上:<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>




在tomcat 服务器中还要增加服务配置,
否则jsp将无法解析到使用的jstl标签,页面将报错

以下是在tomcaweb.xml中增加的配置信息
<jsp-config>

   <taglib>

    <taglib-uri>http://java.sun.com/jsp/jstl/core</taglib-uri>

    <taglib-location>/WEB-INF/c.tld</taglib-location>

   </taglib>

   <taglib>

    <taglib-uri>http://java.sun.com/jsp/jstl/xml</taglib-uri>

    <taglib-location>/WEB-INF/x.tld</taglib-location>

   </taglib>

   <taglib>

    <taglib-uri>http://java.sun.com/jsp/jstl/fmt</taglib-uri>

    <taglib-location>/WEB-INF/fmt.tld</taglib-location>

   </taglib>

   <taglib>

    <taglib-uri>http://java.sun.com/jsp/jstl/sql</taglib-uri>

    <taglib-location>/WEB-INF/sql.tld</taglib-location>

   </taglib>

</jsp-config>


注意不是项目的web.xml是服务器的web.xml哦


----------------------2013-08-20---------------------------------
1。昨天连接数据库发现Jdk 版本跟数据库版本和数据库驱动jar原来还有匹配版本,导致我 虽然把数据库所需要的Jard
都导入啦还是报错 不能找到驱动,原来我用的jdk1.6.0数据库驱动和5.0的数据库是5.6.13的这样是可以读取到的
而我如果用的是5.08的驱动包则是识别不了




----------------------2013-08-21-------------------------------------
1.今天再部署项目导出war包时出现一个内存溢出的异常,到时war部署到服务器上 不能运行,
于是在网上找到了相关解决方法,但是没用,我把项目中一些没用到的Jar全部清除,并把原先上
传保存在服务器上的文件清理后就没有错误了,当然这些配置JvM内存的的方法也是在某些时候可以
的: 手动设置MaxPermSize大小 修改TOMCAT_HOME/bin/catalina.sh 在“echo "Using CATALINA_BASE:   $CATALINA_BASE"”
上面加入以下行: JAVA_OPTS="-server -XX:PermSize=64M -XX:MaxPermSize=128m 建议:将相同的第三方jar文件移置到tomcat/shared/lib目录下,这样可以达到减少jar 文档重复占用内存的目的。


-----------------2013-08-22---------------------------

1.在重启tomcat 时会乞求保存session资源于是会报错,此时在tomcat 的servlert。xml增加配置:
<Manager className="org.apache.catalina.session.PersistentManager" saveOnRestart="false">
        <Store className="org.apache.catalina.session.FileStore"/>
    </Manager>
问题就解决了;


--------------------2013-08-28-----------------------------
1.今天用表单上传文件发现一个又是因为细节问题导致错误半天找不出来,servlet没错,但是在后台就是得不到文件数据
结果找了一天发现是表单编写时file标签没有命名name属性,



<form  id="form1"  name="form1"   method="post"  enctype="multipart/form-data" />
<p> <input  type="file"   name="myFile" id="myFile" value="选择文件"   />

<p> <input  type="button"   value="上传" name="button1"  id="button1"  onclick="imageFileAction()" />

就是因为缺了name=""  导致的结果,改了之后发现一切就Ok啦

在项目开发过程中,由于没有明确的需求和相关文档,我也只是根据公司需求的适用来做,所以数据库,改变好几次,包括适用架构也不好确定,所以在没使用后台架构编写时写了很多代码,工作量明显增加很多,对需求一定要明确好后再开展工作,像我这次一个文件上传一开始做成多文件上传,每一个端口都在一个控制器上判断控制,后来又改成单文件上传,一个端口一个控制器,总之很坑爹的一次工作

你可能感兴趣的:(java)