记录几个遇到的问题和解决方法

1、服务端图片上传功能在eclipse里面没问题,部署到tomcat上面报错Cant create Cached file?

后来发现tomcat的目录里面没有temp文件夹,导致缓存文件无法创建而报错:解决方法是1、直接新建temp文件夹; 2、代码里面判断一下,没有就新建;

String webroot = RequestContextUtils.getWebApplicationContext(request).getServletContext().getRealPath("/");
        //判断下tomcat下temp文件是否存在,不存在需要新建
        File folder = new File(webroot);
        if(folder.isDirectory()) {
            folder = folder.getParentFile().getParentFile();
            if(folder.isDirectory()) {
                folder = new File(folder, "temp");
                if(!folder.exists() || !folder.isDirectory()) {
                    folder.mkdir();
                }
            }
        }

其中RequestContectUtils是spring的,用来解决没有HttpRequestServer的问题;

2、$.ajax方法请求json调用时发回调到了error函数里面,但是statusCode=200;

这是因为返回值格式不对,虽然调用成功了,但是返回值不是json的格式,success函数不接收,交给了error;

3、写了一个代码行数的统计功能,代码如下:

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class ClassCodeTest {

    public static List<File> classFiles = new ArrayList<>();

    public static void main(String[] args) {
        String src = "\\src\\main\\java";
        int num = countCodeLineNum(src);
        System.out.println("目前为止共创建java文件"+classFiles.size()+"个;编写代码:("+num+")行");
    }

    public static int countCodeLineNum(String src) {
        int count = 0;
        getCountClass(new File(src), classFiles);
        for (File file : classFiles) {
            count+= getClassLineNum(file);
        }
        return count;
    }

    public static int getClassLineNum(File file) {
        int index = 0;
        FileReader reader = null;
        BufferedReader bufferedReader = null;
        try {
            reader = new FileReader(file);
            bufferedReader = new BufferedReader(reader);
            while(bufferedReader.readLine()!=null) {
                index++;
            }
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }finally {
            if(reader!=null) {
                try {
                    reader.close();
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }
        }

        return index;
    }

    public static void getCountClass(File src,List<File> classFiles) {
        File[] childrenFile = src.listFiles();
        for (File file : childrenFile) {
            if(file.exists() && file.isDirectory()) {
                getCountClass(file,classFiles);
            }else if(file.exists() && file.getName().endsWith(".java")) {
                classFiles.add(file);
            }
        }

    }
}

原文地址:https://www.cnblogs.com/liangblog/p/8343200.html

时间: 2024-11-02 01:31:57

记录几个遇到的问题和解决方法的相关文章

入坑Intel OpenVINO:记录一个示例出错的原因和解决方法

今天试用OpenVINO的例子,在过程中发现了一些其他人没有经历的坑特别记录一下. 出错时候:执行Intel OpenVINO示例的是时候,出错的提示代码: 用于 .NET Framework 的 Microsoft (R) 生成引擎版本 15.9.21+g9802d43bc3 版权所有(C) Microsoft Corporation.保留所有权利. 8>C:\Intel\computer_vision_sdk_2018.5.445\deployment_tools\inference_eng

crazyflie2终于可以连接到PC client -- 记录下之前遇到的困难和解决方法

今天终于成功连接到crazyflie PC client,一路走来很多bug,都一一解掉,下面总结下遇到的困难: 1,焊接问题 焊接的时候一定要多上焊锡,防止虚焊,不要为了美观上的焊锡少了,要不会有很多虚焊的引脚,浪费debug的时间 2,下载程序 刚开始使用jlink下载,透过官方的makefile文件,发现貌似对jlink支持不是很好,默认用的是st-link v2,还好之前买过一款STM32F4DISCOVERY的板子,上面自带st-link v2仿真器,于是开始尝试下载,STM32F4D

项目记录:spring+springmvc 项目中 @Transactional 失效的解决方法

第一步,修改spring的配置文件和springmvc的配置文件 --------------------------------applicationContext.xml <context:annotation-config/>  <context:component-scan base-package="com.xxx"> <context:exclude-filter type="annotation" expression=&

处理微操作记录的解决方法

当我们写web项目的时候有可能会遇到一个问题,进行保存操作的时候要保存,但是如果用户没有保存,我们可能还要保存一个未保存的记录,那么如果要捕捉到用户没有保存的信息很难,需要捕捉用户关闭页面,用户关闭浏览器等等其他的操作,其实最直接的解决方法是当用户为保存之前,默认就存入未保存的记录,当用户点击保存的时候再删除这条记录,这样也是最直接的方式.这样解决应该是最方便的了

MySQL问题记录--Can&#39;t connect to MySQL server on localhost (10061)解决方法

本文mysql的安装环境为win7 64位,mysql版本为MySQL5.7 问题描述:在命令行输入 mysql -u root -p 登录mysql,返回"Can't connect to MySQL server on localhost (10061)"错误 问题原因:在一番谷歌.百度后,查到问题原因是mysql没有启动. 解决方法:1.将mysql加入到Windows的服务中.切换到mysql安装目录下的bin文件夹,命令行运行"mysqld --install&qu

64位 SQL Server2008链接访问Oracle 过程汇总解决方法记录

64位 SQL Server2008链接访问Oracle 过程汇总解决方法记录 经过几天不停的网上找资料,实验,终于联通了. 环境:系统:win 2008 ,SqlServer2008 R2, 连接Oracle10g 在SqlServer2008 R2机器上需要安装Oracle客户端32位和64位两个,然后配置连接别名.设置注册表.详细情况见下面 1.错误1 ------------------------------------------------ 64位机器上建立OLE_DB链接报错 报

关于项目中所有填写都变成乱码的解决方法--搜索不出记录

表现:搜索不出记录 解决方法: 一,找到tomcat的server.xml文件修改: 默认情况下,tomcat使用的的编码方式:iso8859-1 修改tomcat下的conf/server.xml文件 找到如下代码:    <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />这段代码规

【随笔记录】python 处理中文时出现的错误&#39;ascii&#39; codec can&#39;t decode byte 0xe9 in position 0: ordinal not in range(128)&quot; 解决方法

python xml处理中文时出现的错误,记录一下,以免忘记 "UnicodeDecodeError: 'ascii' codec can't decode byte 0xe9 in position 0: ordinal not in range(128)" 解决办法,在该python文件的前面加上如下几句,问题得到解决. import sys default_encoding = 'utf-8' if sys.getdefaultencoding() != default_enco

oracle account locked解决方法记录

今天在访问一个老项目时,后台报错提示 oracle account locked,之前一直可以正常访问的,不知道为什么会出现这个问题,百度一下原因大概是多次登陆失败造成的,一般数据库默认是10次尝试失败后锁住用户,找到原因后接下来就是解决问题了,解决思路很简单:对用户解锁就行了,但是问题就出现在了查找用户上. 本身对oracle的结构就不是很熟悉,所以在解锁用户的时候走了很多弯路,下面就一一道来: 一.因为数据库已久远,忘记了sys用户密码,所以只能远程到服务器登陆,在登陆是确遇到了另外一个错误