3

SO, I learned that in old school ASP Classic if you use the

<object runat="server" id="somename" progid="ADODB.Recordset"></object>

tag it provides a performance improvement over using

set rs = Server.CreateObject("ADODB.Recordset")

However, all was lost when I tried to execute. set rs = nothing Is this the intended behavior? does that tag make asp handle disposing of object better?


The proper place is to create a new file in the Tomcat /bin directory alongside catalina.bat, named setenv.bat and place a set JAVA_OPTS=... there.

On *nix system it'd be setenv.sh

catalina.bat/catalina.sh takes care of running setenv.bat/setenv.sh if it exists. This is noted in the section 3.4 here

4

1 に答える 1

1

このオブジェクト宣言を asp ページ (global.asax ではない) に直接含めている場合、ページ要求が終了すると、それ自体が終了します。

これらをセッションまたはアプリケーション スコープで保持する場合は、global.asa ファイルに含めることもできます。

<OBJECT ID=rsCustomers PROGID="ADODB.Recordset" RUNAT="Server" SCOPE="Application"></OBJECT>

SCOPE属性に注意してください。これにより、レコードセットがアプリケーション変数に読み込まれます (ユース ケースに応じて、「セッション」または「アプリケーション」に設定できます)。次のように、スクリプト内のセッション変数を簡単に破棄できます。

Session.Abandon

または、セッション変数を強制終了したいが、セッションを開いたままにしておく場合は、次のようにセッション変数を終了します。

Set Session("rsCustomers") = Null

ページの RS オブジェクトだけが必要な場合は、scope 属性を省略して、ページ自体にオブジェクト宣言を含めます。

id は、ページ内の vbscript コードブロックで直接宣言したかのように、通常の変数として使用できます。.closeオブジェクトを閉じるためにa を実行することを忘れないでください。オブジェクトは、ページの読み込みが完了するとすぐに終了します (たとえば、ページ スコープが完了すると)。

お役に立てれば。

于 2012-11-02T13:31:52.240 に答える