当前位置:首页 » 编程语言 » java的资源文件

java的资源文件

发布时间: 2022-09-24 14:07:25

java中的资源文件(properties)有何作用

配置信息用的。加上你写一个方法来获取配置信息的内容,也就是读取.properties文件。方法设置返回值,可以用来返回等号后面的信息,比如你想获取8888的话,只需要给写的方法传一个参数PORT,就能返回8888。工程里很多地方都会用到配置信息里的东西,如果没有配置文件,将来要修改端口号或者HOST的时候就比较麻烦,需要改代码。有配置文件就不一样了,只修改配置文件里等号后面的数据就可以了。工程里其他地方用HOST和PORT都是用给读取配置文件的方法传参数的形式调用数据的,所以只修改配置文件的内容就能全部修改为想要的数据。最主要的是不用修改代码,这点很重要,所以工作中配置文件往往比java代码还要多。,当然不止是.properties类型的,更多的是.xml类型

❷ 用java 如何读取配置文件(如:资源文件)中配

java读取配置文件的几种方法如下:
方式一:采用ServletContext读取,读取配置文件的realpath,然后通过文件流读取出来。因为是用ServletContext读取文件路径,所以配置文件可以放入在web-info的classes目录中,也可以在应用层级及web-info的目录中。文件存放位置具体在eclipse工程中的表现是:可以放在src下面,也可放在web-info及webroot下面等。因为是读取出路径后,用文件流进行读取的,所以可以读取任意的配置文件包括xml和properties。缺点:不能在servlet外面应用读取配置信息。
方式二:采用ResourceBundle类读取配置信息,
优点是:可以以完全限定类名的方式加载资源后,直接的读取出来,且可以在非Web应用中读取资源文件。缺点:只能加载类classes下面的资源文件且只能读取.properties文件。
方式三:采用ClassLoader方式进行读取配置信息
优点是:可以在非Web应用中读取配置资源信息,可以读取任意的资源文件信息
缺点:只能加载类classes下面的资源文件。
方法4 getResouceAsStream
XmlParserHandler.class.getResourceAsStream 与classloader不同

使用的是当前类的相对路径

❸ java中什么是资源文件

资源文件就是指存在于JAVA类路径中的非class文件。这些文件可以通过访问类路径的方式取得其内容。具体请参照JavaDoc中的Class类用法。

❹ JAVA 加载资源文件的问题

1.

这一句指定的文件的名字,也就是SysConstants这个类中存在一个叫做SYS_PROPERTYNAME的变量,它的值就是sys.properties,也就是这样的

public static String SYS_PROPERTYNAME="sys.properties",你想在加载sys2.properties文件,只需再增加public static String SYS_PROPERTYNAME2="sys2.properties",再用上面的load方法加载即可。也就是p.load(Tools.class.GetClassLoader().getResourceAsStream(SysCOnstants.SYS_PROPERTYNAME2));即可。

2.通过类装载器来装载资源文件,这样就不必写出资源文件的全路径了。

3.加载后的资源文件你可以理解成一个map(类似),等号前边的是key,等号后边的是值。

❺ .请简述如何在Java代码与XML文件中调用布局资源文件

步骤:
1、在存放使用资源的res文件夹下的layout文件夹内新建一个XML布局文件,如命名为:page1.xml。
2、在存放资、代码的文件夹下下找到MainActivity.java,双击打开,在onCreate的方法内添加关联代码。

❻ java中的资源文件应该放在哪里如果使用的是相对路径比如/image 那么image文件夹应该保存在字节码目录下

源文件放在context或者webroot下的web-info下的classes下,image放在context或者webroot下

❼ java怎么获取web资源文件

1、一般工程中使用I/O类指定文件的绝对路径读取
FileInputStream
fis
=
new
FileInputStream("src/main/resources/zsm.properties");
ppt.load(fis);
String
memAddr1
=
ppt.getProperty("memAddr1");
2、Web工程中可以使用ServletContext或ClassLoader来读取
2.1、通过ServletContext来读取资源文件,文件路径是相对于web项目(如/JspServletFeature)根路径而言的。
2.2、通过ClassLoader来读取,文件路径是相对于类目录而言的(maven工程中一般为/target/classes)
示例如下
(1)文件位置
放在src目录(或其子目录)下是相对于项目根目录如JspServletFeature的路径
放在JavaResources下是相对于类目录即classes的目录
(2)代码
//
使用servletContext读取资源文件,相对于web项目的根路径(即JspServletFeature)
out.println("\n使用servletContext读取资源文件,相对于web项目的根路径(即JspServletFeature):");
readFileByServletContext(response,
"FileReadFile1.properties");
readFileByServletContext(response,
"/FileReadFile1.properties");
readFileByServletContext(response,
"WEB-INF/classes/FileReadFile2.properties");
readFileByServletContext(response,
"/WEB-INF/classes/FileReadFile2.properties");

❽ 如何创建java国际化类资源文件

问题:关于一些大型项目中会使用不同语言版本的视图,比如在一个Java Web开发中,在struts中九提供了改种文件的配置项及在View中通过标签<bean:message value="">来根据浏览器不同语言形式来展示页面,实现多语言的互操作。
这里自己将所遇到的这类问题,查看相关资料,通过JDK自带的相关API实现这种国际化操作。
使用到的类主要有:import Java.util.Locale; import java.util.ResourceBundle;还需要简单的国家化资源文件(针对不同语言有不同文件 .properties文件,键值对)
比如新建一个包com.xiaoli.test,里面放置两个国际化文件,中文(LDPC.properties)和英文(LDPE.properties)支持:
[java] view plain
<p>sys.login.index=index.jsp\u9875</p>
[java] view plain
sys.login.index=index.jsp page

上面键值对是指:index.jsp 页

而后建立相关测试类实现如下:
[java] view plain
package com.xiaoli.test;

import java.util.Locale;
import java.util.ResourceBundle;

public class ResourceMessage
{
private static ResourceMessage resourceMessage = null;
private ResourceBundle resourceMessage_zh = null;
private ResourceBundle resourceMessage_en = null;
private Locale local;
//此时该国际化资源文件为下面的完全限定类名访问,LDP为资源文件前缀
private static final String SOURCE_FILE_ZH= "com.xiaoli.test.LDPC";
private static final String SOURCE_FILE_EN= "com.xiaoli.test.LDPE";
private ResourceMessage()
{
//分别将两个文件绑定到相应的语言环境下
resourceMessage_zh = ResourceBundle.getBundle(SOURCE_FILE_ZH, Locale.CHINA);
resourceMessage_en = ResourceBundle.getBundle(SOURCE_FILE_EN,
Locale.ENGLISH);
}
/**
* 单例模式
* 只创建一个实例
* @return
* @see [类、类#方法、类#成员]
*/
public static ResourceMessage getInstance()
{
if (null == resourceMessage)
{
synchronized (ResourceMessage.class)
{
resourceMessage = new ResourceMessage();
}
}
return resourceMessage;
}

public String getMessage(String key)
{
return getMessage(key, local);
}

public String getMessage(String key, Locale local)
{
if (null == local)
{
local = Locale.getDefault();
}
String msg = null;
if (Locale.CHINA.equals(local))
{
msg = resourceMessage_zh.getString(key);
}
else if (Locale.ENGLISH.equals(local))
{
msg = resourceMessage_en.getString(key);
}

//如果找不到资源文件,返回key
if (null == msg || "".equals(msg))
{
return key;
}
return msg;
}
/** 测试方法
* @param args
* @see [类、类#方法、类#成员]
*/
public static void main(String[] args)
{
String key = "sys.login.index";
// String value = ResourceMessage.getInstance().getMessage(key, Locale.ENGLISH);
//使用当前默认的语言环境获取,这里为中文支持
String value = ResourceMessage.getInstance().getMessage(key);
System.out.println(value);
}

}

结果,根据手动设置的不同语言环境可以打印不同的值:
index.jsp页 和 index.jsp page

❾ java程序读取资源文件时路径如何指定

(1)、request.getRealPath("/");//不推荐使用获取工程的根路径
(2)、request.getRealPath(request.getRequestURI());//获取jsp的路径,这个方法比较好用,可以直接在servlet和jsp中使用
(3)、request.getSession().getServletContext().getRealPath("/");//获取工程的根路径,这个方法比较好用,可以直接在servlet和jsp中使用
(4)、 this.getClass().getClassLoader().getResource("").getPath();//获取工程classes 下的路径,这个方法可以在任意jsp,servlet,java文件中使用,因为不管是jsp,servlet其实都是java程序,都是一个 class。所以它应该是一个通用的方法。
0、关于绝对路径和相对路径
1.基本概念的理解绝对路径:绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,(URL和物理路径)例 如:C:xyz est.txt 代表了test.txt文件的绝对路径。http://www.sun.com/index.htm也代表了一个URL绝对路径。相对路径:相对与某个基 准目录的路径。包含Web的相对路径(HTML中的相对目录),例如:在Servlet中,"/"代表Web应用的跟目录。和物理路径的相对表示。例 如:"./" 代表当前目录,"../"代表上级目录。这种类似的表示,也是属于相对路径。另外关于URI,URL,URN等内容,请参考RFC相关文档标准。RFC 2396: Uniform Resource Identifiers (URI): Generic Syntax,(http://www.ietf.org/rfc/rfc2396.txt)2.关于JSP/Servlet中的相对路径和绝对路径。 2.1服务器端的地址服务器端的相对地址指的是相对于你的web应用的地址,这个地址是在服务器端解析的(不同于html和javascript中的相对 地址,他们是由客户端浏览器解析的)
1、request.getRealPath
方法:request.getRealPath("/")
得到的路径:C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\strutsTest\
方法:request.getRealPath(".")
得到的路径:C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\strutsTest\.
方法:request.getRealPath("")
得到的路径:C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\strutsTest
request.getRealPath("web.xml")
C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\strutsTest\web.xml
2、request.getParameter("");
ActionForm.getMyFile();
方法:String filepath = request.getParameter("myFile");
得到的路径:D:\VSS安装目录\users.txt
方法:String filepath = ActionForm.getMyFile();
得到的路径:D:\VSS安装目录\users.txt
--------------------------------------------------
strutsTest 为工程名
myFile 在ActionForm中,为private String myFile;
在jsp页面中:为<html:file property="myFile"></html:file>

❿ java资源文件

(一)用Class类加载资源文件

通过调用Class类的getResourceAsStream方法来加载资源文件:

public InputStream getResourceAsStream(String pathToConfigFile);

该方法接收一个String类型的参数(pathToConfigFile)来表示资源文件的地址,如果加载成功,则返回该资源文件的输入流(InputStream),如果失败,则返回null。重要的是,在传入pathToConfigFile参数时,有两种方式,第一种方式为绝对定位方式,即pathToConfigFile以"/"开头,此时Java以classpath为根目录,直接加上pathToConfigFile来搜索资源文件。第二种方式为相对定位方式,即pathToConfigFile不以"/"开头,此时资源文件的全路径应该为:调用getResourceAsStream方法的类的package路径加上pathToConfigFile。(在将package转为目录时将"."变成"/")

举个例子,在IntelliJ Idea中创建一个java工程,目录结构如下:

name=ConfigUnderSrc

热点内容
做脚本挂 发布:2024-05-02 19:09:14 浏览:930
打王者开最高配置哪个手机好 发布:2024-05-02 19:08:31 浏览:350
python字典使用 发布:2024-05-02 19:01:14 浏览:134
我的世界服务器联机ip 发布:2024-05-02 18:50:39 浏览:619
steam密码从哪里看 发布:2024-05-02 18:50:00 浏览:629
convertlinux 发布:2024-05-02 18:20:00 浏览:705
zxingandroid简化 发布:2024-05-02 17:47:53 浏览:189
贵州银行卡查询密码是什么 发布:2024-05-02 17:47:17 浏览:119
飓风算法没用 发布:2024-05-02 17:41:41 浏览:350
android铃声设置 发布:2024-05-02 17:40:01 浏览:485