1、サーブレットの初期化パラメータ
サーブレットの初期化パラメータを利用するには、必ずweb.xmlにおいてサーブレットマッピングを指定する必要がある。
(Tomactのinvokerサーブレットは利用できない)

設定方法は、web.xmlに<servlet>要素の子要素として<init-param>要素を記述する。

初期化パラメータの読込は、javax.servlet.ServletConfigインタフェースを使用する。
上記ServletConfigオブジェクトの取得はHttpServlet.getServletConfigを使用する。

2、アプリの初期化パラメータ
設定方法は、web.xmlに<web-app>要素の子要素として<context-param>要素を記述する。

初期化パラメータの読込は、javax.servlet.ServletContextインタフェースを使用する。
上記ServletContextオブジェクトの取得はHttpServlet.getServletContextを使用する。

3、初期化パラメータのその他
パラメータを利用して一度だけ何か処理を行いたいという場合は、サーブレットのinit()が利用できる。
・public void init()
・public void init(ServletConfig config)     (本メソッドは必ずsuper.init(config)を呼ぶことが必要)

最初のリクエストより先に初期化処理を行いたい場合は、web.xmlの<servlet>要素の子要素として<load-on-startup>を指定する。
これで、Webアプリ起動時に、サーブレットもロードされる(初期化される)。
指定する値は、0以上の数字で、数字が小さい方が先にロードされる。

また、一度だけの初期化処理はサーブレットのinit()の他に、ServletContextListenerを利用する方法もある。

4、物理パスの取得
Webアプリ上のファイルのパスをOS上の物理パスに変換するために、getRealPath()メソッドが用意される。
ただ、getRealPath()はうまく動作しない場合がある。
・Tomcatの場合は、通常WARは展開して動作するので問題がない
・Tomcat以外のアプリサーバにはWARを展開せずに動作するものもあり、この場合は、getRealPath()は失敗する。

5、クラスパスからファイルの読込
クラスパス上のテキストファイルの読込は、class.getResource()メソッドでURLを取得して、
URL.openStream()メソッドでファイルのストリームを開く。

或は、直接class.getResourceAsStream()でストリームを取得する。

6、プロパティファイル
Javaでは情報を「プロパティファイル」と呼ばれる、プログラムとは別のファイルにまとめておくことが推奨されている。
プロパティファイルは「.properties」という拡張子を持つファイルで、キーと値のペアを「=」または「:」で区切った形式で記述。(行頭が「#」または「!」で始まる行は、コメント行として扱われます。)
プロパティファイルの操作は、JavaのコアAPIのjava.util.Propertiesクラスを利用する。このクラスはスレッドセーフです。

7、XMLDecoderとXMLEncoder
XMLDecoder: XMLの読み取り機能である。ObjectInputStream と同様の働きも備える。
XMLEncoder: XMLファイルの書き出し機能である。ObjectOutputStream の補足的な代替クラスである

Servlet基本_初期化パラメータ、外部ファイル的更多相关文章

  1. Servlet基本_サーブレットのライフサイクル、スレッドセーフ

    1.サーブレットのライフサイクル初期化時 ⇒ init() [初回リクエスト時] ↓リクエスト時 ⇒service() ⇒doGet() [Httpリクエストメソッドにより振り分け] 或は⇒doPos ...

  2. [ACM_动态规划] 数字三角形(数塔)_递推_记忆化搜索

    1.直接用递归函数计算状态转移方程,效率十分低下,可以考虑用递推方法,其实就是“正着推导,逆着计算” #include<iostream> #include<algorithm> ...

  3. poj 1088 滑雪_记忆化搜索

    题意:略 直接用记忆化搜索就行了 #include<cstdio> #include<iostream> using namespace std; int n,m; int m ...

  4. Servlet基本_クッキー、URLリライティング

    1.クッキーの基礎クッキーは.クライアント側に保存されるテキストデータです. セキュリティ上の制約.・自分で発行したクッキーにしかアクセスできない.クッキーには発行元のホストの情報が記録されている.・ ...

  5. Servlet基本_セッション属性

    1.概念セッション: ユーザーごとの状態を保存する仕組みです.セッションID: アプリケーションサーバから一意の識別子が割り当てられ.これをセッションIDと言う. 2.サーブレットAPIサーブレットA ...

  6. Servlet基本_オブジェクトのスコープ

    1.スコープ種類Servletには以下のスコープがあります.Request.Session.Applicationの順にスコープは広くなっていきます.・Applicationスコープ:アプリケーション ...

  7. Servlet基本_画面遷移

    画面遷移方法は.下記ようがある.・リクエストのディスパッチ・リダイレクト(画面から) 1.ディスパッチ1)概念サーブレットから他のリソース(サーブレット.JSP.Htmlなど)にリクエストを転送するこ ...

  8. [bzoj4562][Haoi2016]食物链_记忆化搜索_动态规划

    食物链 bzoj-4562 Haoi-2016 题目大意:给你n个点,m条边的DAG,求所有的满足条件的链,使得每条链的起点是一个入度为0的点,中点是一条出度为0的点. 注释:$1\le n\le 1 ...

  9. zmud中文版_汉化补丁_汉化文件ZMUD破解

    ZMUD721中文版 http://pan.baidu.com/s/1mixwIoC

随机推荐

  1. IRQL Ring0实现

    一,IRQL的定义Interrupt ReQuest Level     DDK对IRQL的定义是:中断请求级(IRQL)标示中断的优先级.处理器在一个IRQL上执行线程代码,IRQL是帮助决定线程如 ...

  2. Jmeter(十二)关联

    关联在实际业务需求中是随处可见的,比如:支付需要提交订单成功的订单号:修改个人资料需要登录成功响应报文信息...总之关联无处不在,今天来记一记Jmeter的关联功能. Jmeter关联的方法比较常用的 ...

  3. [UE4]小技巧:自动添加函数返回值

    将一个变量拖放到返回节点上面会自动创建响应类型的返回值 同样的,函数参数也可以这样来做:

  4. xgboost的sklearn接口和原生接口参数详细说明及调参指点

    from xgboost import XGBClassifier XGBClassifier(max_depth=3,learning_rate=0.1,n_estimators=100,silen ...

  5. arcgis连接Oracle数据库

    arcgis连接Oracle数据库 配置声明:本人的电脑是win10 64位,安装的Oracle是oracleR11gr2 64  arcgis版本位10.2 安装是在同一台电脑上. 一.首先是安装O ...

  6. WebBrowser常用属性方法介绍

    WebBrowser 常用属性方法 ■■方法 ==============================  ▲GoBack    相当于IE的"后退"按钮,使你在当前历史列表中后 ...

  7. HDFS操作及小文件合并

    小文件合并是针对文件上传到HDFS之前 这些文件夹里面都是小文件 参考代码 package com.gong.hadoop2; import java.io.IOException; import j ...

  8. linux设置服务器时间同步

    yum install -y rdate 服务器请设置 */5 * * * * /usr/bin/rdate -s time-b.nist.gov ubuntu 设定时区:dpkg-reconfigu ...

  9. 【死磕 Spring】—— IoC 之加载 BeanDefinition

    本文主要基于 Spring 5.0.6.RELEASE 摘要: 原创出处 http://cmsblogs.com/?p=2658 「小明哥」,谢谢! 作为「小明哥」的忠实读者,「老艿艿」略作修改,记录 ...

  10. Python笔记:用for循环删除列表中的元素

    for运行过程中会有一个指针来记录当前循环的元素是哪一个,一开始这个指针指向第0个元素,然后获取它,接着删除第0个元素,这时候,原来是第1个的元素会变成第0个,当指针向后移动一次,指向了现在第1个元素 ...