使用java时报的一些错误

mysql-connector-java报not found的错误

ftp上传文件失败原因

1、mysql-connector-java报not found的错误 

  在网上查,很容易查找到java连接数据库的方法,无论mysql和oracle,使用JDBC连接都可以做到。但是问题是,我使用的maven,如下依赖会报not found的错误。

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.39</version>
</dependency>

  我对java和IDE完全是个新手,了解了maven本地仓库在C://用户/用户名/.m文件夹下,发现了相关的jar文件的确不存在。在网上连接mysql的教程下也有下载相关jar的链接,后期我才想到这个可能是就是因为maven中不存在这个jar才会提供下载。但是下了jar我也不知道怎么弄进去,毕竟我才学到Import Change和复制粘贴,而这个maven项目里好像并不能直接复制粘贴。

  后来查完教程,一步步在window上配置maven,然后将下载好的jar导入到maven本地库中。

  配置maven的方法网上查就好,配置好maven后在命令行运行如下命令

mvn install:install-file -Dfile=(jar包的位置) -DgroupId=mysql -DartifactId=mysql-connector-java -Dversion=5.1.39 -Dpackaging=jar

  导入代码:

mvn install:install-file -Dfile=(jar包的位置) -DgroupId=groupId(分组) -DartifactId=artifactId(jar名称) -Dversion=version(版本号) -Dpackaging=jar

2、ftp.storeFile(filename, input)出错

  在将文件上传服务器的过程中,一开始我使用的sftp方法,一直被拒绝连接,后来发现别人给我的服务器账号密码只支持ftp连接……

  

ftp用的是FTPClient,然后进行连接、登录

FTPClient ftp = new FTPClient();

ftp.connect(host, port);// 连接FTP服务器

ftp.login(username, password);// 登录

    更换目录(最好使用绝对路径、这里不会自动创建文件夹)、上传文件:

ftp.changeWorkingDirectory(path);
ftp.storeFile(filename, input);#上传后文件名字和本地文件的输入流

在上传文件的时候,一直返回的false,而且所上传的文件是空的。

  解决:在上传文件前,我做了一些配置,主要是被动模式的设置:

ftp.setControlEncoding("UTF-8");

ftp.enterLocalPassiveMode();//设置被动模式

ftp.setFileType(FTP.BINARY_FILE_TYPE);

后来,返回的是true了,但是服务器上没有文件

网上查了查,是没有设置被动模式,但我已经设置了,多番尝试下,发现没改就有了文件,可能之前是刷新太慢

当你深入了解,你就会发现世界如此广袤,而你对世界的了解则是如此浅薄,请永远保持谦卑的态度。
原文地址:https://www.cnblogs.com/liwxmyself/p/11344957.html