1.为什么使用properties文件
在此不妨构建一个场景,当我们完成一个项目时,项目会着手上线,使得用户可以通过域名访问,如何实现呢,项目导出,选中war file文件,选择路径,保存,然后将war包交给系统管理员,管理员将war包拷贝到webapps中,启动tomcat,war包加载,此时就可以进行访问;此时war包中的文件就会编译为字节码文件,在正式上线之后,字节码即使用记事本打开,也无法进行编辑;所以我们不能将数据库的url和用户的用户名和密码写死在java类中,所以配置信息不能写在java类中;
2.如何使用properties文件
步骤①.在src根目录创建一个扩展名为.properties的文件,点击finish;
步骤②将数据库连接信息放入.properties的文件中
url=jdbc:mysql://127.0.0.1:3306/test
user_name=root
password=root
步骤③写工具类,使之可以在源文件中生效
3**.工具类如何写**
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
public class PropertiesUtil {
//创建Properties类对象
private static Properties properties=new Properties();
static{ //从类加载路径获得文件的输入流
InputStream inputStream=PropertiesUtil.class.getClassLoader().getResourceAsStream("db.properties");
try {
properties.load(inputStream); //将properties每队key=value变成map集合中的键值对;
} catch (IOException e) {
e.printStackTrace();
}
}
public String getValue(String key) {
return properties.getProperty(key);
}
public static void main(String[] args) {
PropertiesUtil util=new PropertiesUtil();
String url=util.getValue("url");
String user_name=util.getValue("user_name");
String password=util.getValue("password");
System.out.println(url+","+user_name+","+password);
}
}
运行,在控制台上输出
jdbc:mysql://127.0.0.1:3306/test,root,root