加载web资源文件

servlet编程:

  1.servlet生命周期:

  构造方法:创建servlet对象。默认情况下,第一次访问servlet对象时。只调用一次。

  init方法(有参):创建完servlet对象后调用。只调用一次。

          注意:会调用无参的init方法

  servlet方法:servlet提供服务的方法,每次发出请求调用。

          注意:request对象,response对象

  destory方法:tomcat服务器停止或web应用重新部署,servlet对象销毁,destory方法被调用

  2.servletConfig对象

    getinitParameter("参数")    ---------------------获取servlet初始化参数

    getinitParameterNames()    

  3.servletContext对象

    getContextPath()  得到web引用路径

    HttpServlteRequest.getContextPath()  得到web的引用路径

    getinitParameter("name")  得到全局初始化参数

    作为域对象:

      setAttribute("name",object)  保存数据

      getAttribute("name")  得到数据

      removeAttribute("name")  清除数据

    转发:getRequestDispatcher("路径").forward(request,response); 

       request.getRequestDispatcher("路径").forward(request,response);  

    得到web应用的资源文件

      context.getRealPath("路径")

      context.getResourceAsStream("路径")

 1 package com.java.path;
 2
 3 import java.io.File;
 4 import java.io.FileInputStream;
 5 import java.io.IOException;
 6 import java.io.InputStream;
 7 import java.util.Properties;
 8 import javax.servlet.ServletException;
 9 import javax.servlet.http.HttpServlet;
10 import javax.servlet.http.HttpServletRequest;
11 import javax.servlet.http.HttpServletResponse;
12
13 /**
14  * 读取web应用下的资源文件(例如properties)
15  *
16  * @author syousetu
17  *
18  */
19 public class Resource extends HttpServlet {
20
21     protected void doGet(HttpServletRequest request, HttpServletResponse response)
22             throws ServletException, IOException {
23
24         /**
25          * .  代表相对路径中的当前路径。相对于java命令运行的目录
26             结论:
27                 在java项目中,.代表在java项目的根目录下开始
28                 web项目中,java运行命令在tomcat的bin目录下
29                 所以 ,这里的.代表tomcat/bin
30          */
31 //        这种不能用
32 //        File file = new File("./src/db.properties");
33 //        FileInputStream in = new FileInputStream(file);
34
35         /**
36          * 使用web应用下加载资源文件的方式
37          */
38
39         /**
40          * 1.使用getRealPath()
41          * 资源由服务器去找,src下的文件全部会copy一份放入WEB-INF下的classes中
42          */
43 //        //返回资源文件的绝对路径
44 //        String path = this.getServletContext().getRealPath("/WEB-INF/classes/db.properties");
45 //        File file = new File(path);
46 //        FileInputStream in = new FileInputStream(file);
47
48         /**
49          *2. getResourseAsStream() 得到资源文件,返回的是输入流
50          */
51         InputStream in = this.getServletContext().getResourceAsStream("/WEB-INF/classes/db.properties");
52
53
54
55
56         Properties prop = new Properties();
57
58         //读取资源文件
59         prop.load(in);
60         String user = prop.getProperty("user");
61         String password = prop.getProperty("password");
62         System.out.println("user:"+user);
63         System.out.println("password:"+password);
64
65
66     }
67
68 }

db.properties

1 user=root
2 password=root

 

时间: 2024-12-02 14:14:47

加载web资源文件的相关文章

Struts2的国际化(二)-利用超链接实现动态加载国际化资源文件

原理:程序是根据Locale来确定国际化资源文件,因此关键之处在于知道 Struts2 框架是如何确定 Local 对象的 ! 由于Struts2 使用 i18n 拦截器处理国际化,并且将其注册在默认的拦截器中,因此,可以通过阅读 I18N 拦截器知道. 具体确定 Locale 对象的过程: > Struts2 使用 i18n 拦截器 处理国际化,并且将其注册在默认的拦截器栈中 > i18n拦截器在执行Action方法前,自动查找请求中一个名为 request_locale 的参数. 如果该参

Hadoop加载自有资源文件

在hadoop中,使用configuration的时候,首先自动加载了默认的配置文件,比如core-default.xml.core-default.xml资源文件,代码如下: <span style="font-family:Microsoft YaHei;font-size:14px;">static{ //print deprecation warning if hadoop-site.xml is found in classpath ClassLoader cL

spring mvc 加载静态资源

由于我们在web.xml进行了如下配置: <servlet> <servlet-name>spring_mvc_demo</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> &l

Spring学习(一)tomcat加载web.xml、以及项目集成Spring支持

tomcat容器加载web.xml 一. 1 .启动一个 WEB 项目的时候, WEB 容器会去读取它的配置文件 web.xml ,读取 <listener> 和 <context-param> 两个结点. 2 .紧急着,容创建一个 ServletContext ( servlet 上下文),这个 web 项目的所有部分都将共享这个上下文. 3 .容器将 <context-param> 转换为键值对,并交给 servletContext . 4 .容器创建 <li

如何让aspnet服务加载静态资源html(我的动态网页静态化) 转

我们知道,IIS自身是不能处理像ASPX扩展名这样的页面,只能直接请求像HTML这样的静态文件. 当客户端请求一个服务器资源时,这个HTTP请求会被inetinfo.exe进程截获(www服务),然后Check请求资源的类型,并依据资源映射信息(存储在IIS元库中,一种IIS专用的配置数据库)将请求的资源分配给特定的处理程序模块.1,如果是静态资源的请求,则分配由IIS处理(IIS在本地Web Server上访问请求的文件),将内容输出到控制台,发出请求的浏览器就能接收到它了.-----End2

J2EE之普通类加载web资源文件的方法

在WEB中普通类并不能像Servlet那样通过this.getServletContext().getResourceAsStream()获取web资源,需要通过类加载器加载,这里有两种方式,这两种方式是有区别的,下载咱们一起来看一下吧. 方法1. public class UserDao { public void connect() throws IOException { method1(); } private void method1() throws IOException { In

xBIM 实战01 在浏览器中加载IFC模型文件

一.创建Web项目 打开VS,新建Web项目,选择 .NET Framework 4.5 选择一个空的项目 新建完成后,项目结构如下: 二.添加webServer访问文件类型 由于WexXplorer 加载的是 .wexBIM格式的文件或者文件流,所以需要在Web.config文件中添加如下配置 <system.webServer> <security> <requestFiltering> <requestLimits maxAllowedContentLeng

转载:Flash AS3.0 加载外部资源(图片,MP3,SWF)的两种方式

Flash AS3.0 加载外部资源(图片,MP3,SWF)的两种方式 出自:http://www.cnblogs.com/top5/archive/2012/08/04/2623464.html 关于AS3加载图片等外部资源,我常用的有两种方式:Loader和Embed,各自的特点,总结如下: Embed:在Flash编译阶段就将资源嵌入,也就是说图片资源是会被编译进swf文件里面去的:这样子的好处是代码比较简洁,使用方便,也不存在加载顺序的问题,缺点是会增大swf文件的体积 Loader:在

ios UIWebView 加载网页、文件、 html

UIWebView  是用来加载加载网页数据的一个框.UIWebView可以用来加载pdf word doc 等等文件 生成webview 有两种方法,1.通过storyboard 拖拽 2.通过alloc init 来初始化 创建webview,下列文本中 _webView.dataDetectorTypes = UIDataDetectorTypeAll; 是识别webview中的类型,例如 当webview中有电话号码,点击号码就能直接打电话 - (UIWebView *)webView