什么是jar包?
jar包就是别人已经写好的一些类,然后将这些类进行打包,你可以将这些jar包引入你的项目中,然后就可以直接使用这些jar包中的类和属性以及方法。
JAR(Java ARchive)是将一系列文件合并到单个压缩文件里,就象Zip那样。
例如在esclipse下可以引用同一个包里的类,而不同包中的则需要用import引入或者应用jar包。在DOS中一个类需要用到另一个类的属性和方法是就需要引用jar包。
比如在桌面的JAVA文件夹中有一个名为Person.java的java文件
文件内容如下:需要用到Dog类.
public class Person{
public static void main(String[] args){
Dog dog = new Dog();
}
}
Dog.class文件在桌面上,内容如下:
public class Dog
{
public static void main(String[] args){
Dog.run();
}
public static void run(){
System.out.println("dog can run");
}
}
如果直接编译Person.java文件,会报一下错误:
所以就要引用jar包,步骤如下:
- 先将Dog.java编译成.class文件,然后将Dog类打包(注意,是在Dog.class文件的目录下),打包代码:
jar cvf Dog.jar Dog.class
并将生成的jar文件放到Person的目录下
编译Person.java的时候引用jar包:
javac -cp .;Dog.jar Person.java
此时编译成功!
2JAVA连接数据库引用jar包
JAVA连接数据库代码如下:
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.Connection;
public class Jdbc
{
public static Connection getConnection(){
Connection conn = null;
String url = "jdbc:mysql://localhost:3306/jj?useSSL=false";
String username = "root";
String password = "123456";
try
{
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
try
{
conn = DriverManager.getConnection(url,username,password);
} catch (SQLException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
return conn;
}
public static void main(String[] args){
Connection conn = Jdbc.getConnection();
if(conn!=null){
System.out.println("连接成功");
}else{
System.out.println("连接失败");
}
// try
// {
// conn.close();
// } catch (SQLException e)
// {
// // TODO Auto-generated catch block
// e.printStackTrace();
// }
}
}
直接在DOS下编译,会报如下错误:
所以要引用jar包
java -cp .;mysql-connector-java-5.1.38-bin.jar Jdbc
显示连接成功
3局域网连接传输
import java.io.IOException;
import java.io.FileInputStream;
import java.net.SocketException;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPFile;
import java.nio.charset.Charset;
public class Hello {
public static void conn() {
FTPClient ftp = new FTPClient();
try {
ftp.connect("192.168.20.172", 20000);//手机IP地址
ftp.login("anonymous", ""); //帐号,密码
ftp.setCharset(Charset.forName("UTF-8"));
ftp.setControlEncoding("UTF-8");
//ftp.deleteFile("/User.java");
ftp.storeFile("/Hello.txt",new FileInputStream("/Users/Administrator/Desktop/Hello.txt"));
/*iphone用户为ftp.storeFile("/private/var/mobile/Containers/Data/Application/EF702D2E-9068-449C-B6BD-CF67F6655C2A/Documents/Hello.txt",new FileInputStream("/Users/Administrator/Desktop/Hello.txt"));*/
FTPFile files[] = ftp.listDirectories();
for (int i = 0; i < files.length; i++) {
FTPFile file = files[i];
String fileName = file.getName();
System.out.println(fileName);
}
} catch (SocketException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}finally {
try {
ftp.abor();
} catch (IOException e) {
e.printStackTrace();
}
}
}
public static void main(String[] args) {
conn();
}
}
直接编译,报错
引用jar包:
javac -cp .;commons-net-3.5.jar FtpDemo.java
java -cp .;comms-net-3.5.jar FtpDemo
Done
需求变更:即对项目或者软件开发需求的更变,是指在跟客户签订了项目或软件开发协议之后,在完成交付之前,客户提出的对项目或者软件的功能或非功能性的更改要求。
客观地说,“项目一旦启动,变更也就随之而来”,但是,需求的变更必然会影响到项目的开展或者软件的开发,需求变更对项目或者软件开发成败有重要影响,