最初Eclipse4.6で実行できた。これは
Tomcat9、インストール済JRE java\8、 コンパイラ 1.8
で実行した。
ではEclipse4.2ではどうか実験した
①Tomcat7、インストール済JRE java\7、 コンパイラ 1.7
で実行。 動作した。ありがたい。
②Tomcat6、インストール済JRE java\6、 コンパイラ 1.6
で実行。 動作した。
残りはWindowsXPで動作確認
ページビューの合計
2019-02-17
JSTL (Java Server Pages Tag Library)
JSTLは、一般によく利用されるカスタムタグをまとめ、
Apache Taglibs Project (旧Jakarta Taglibs Project)が
配布しているもの。
ライブラリの配置
JSTLのサイトから必要なバージョンのstandard.jar, jstl.jarを取得する。
古いバージョンはzipでまとめて配布されている。
プロジェクトのWEB-INF/lib以下にそれらを配置する。
JSP内での利用宣言
JSP内で以下を記述し、プレフィックスcをつけてタグライブラリを
利用する旨を宣言する。
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
コード中での記述
taglibディレクティブで宣言した接頭辞とタグの名前をコロンで
つないで記述する。
ifの例
<c:if test="真偽式">
真偽式が真の時に表示するコード
</c:if>
以下より引用
https://qiita.com/sculptcat/items/53d1a3a2d3b973354085
Apache Taglibs Project (旧Jakarta Taglibs Project)が
配布しているもの。
ライブラリの配置
JSTLのサイトから必要なバージョンのstandard.jar, jstl.jarを取得する。
古いバージョンはzipでまとめて配布されている。
プロジェクトのWEB-INF/lib以下にそれらを配置する。
JSP内での利用宣言
JSP内で以下を記述し、プレフィックスcをつけてタグライブラリを
利用する旨を宣言する。
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
コード中での記述
taglibディレクティブで宣言した接頭辞とタグの名前をコロンで
つないで記述する。
ifの例
<c:if test="真偽式">
真偽式が真の時に表示するコード
</c:if>
以下より引用
https://qiita.com/sculptcat/items/53d1a3a2d3b973354085
EclipseでJNDIを使ってDBをアクセス
やっと動的WebアプリでJNDIを使ってDBをアクセスできた。
道のりは長かった。
Apache Tomcat 8.0.53 / JNDI Datasource HOW-TO を参考にした。
(https://tomcat.apache.org/tomcat-8.0-doc/jndi-datasource-examples-howto.html#MySQL_DBCP_Example)
サーバの contex.xml に JNDI DataSource の設定をした。
jdbc/testDB という名のリソースを定義。
<Resource name="jdbc/testDB" auth="Container" type="javax.sql.DataSource"
..... url="jdbc:mysql://localhost:3306/ichojuku"/>
ichojukuはDB名である。
Webアプリ TestJ のweb.xml に resource-ref タグを入れ、
このリソースを指定した。
JSPではsql:queryタグを使った。
使用例
①ボディ部を利用する。
<sql:query>タグのボディ部にSELECT文を指定することでSQLを実行することができる。
以下は(SELECT * FROM user)を実行し、結果をqueryに格納する。
<sql:query var="query" dataSource="${db}">
SELECT * FROM user
</sql:query>
②sql属性を指定する。
<sql:query>タグのsql属性にsqlクエリを指定することで、SQLを実行することができる。
また、<sql;param>タグでSQLにパラメータを渡すことができる。
以下は(SELECT * FROM user where id ='0001')を実行し、結果をqueryに格納する。
<c:set var="s" value="SELECT * FROM user where id=?"/>
<sql:query var="query" dataSource="${db}" sql="${s}">
<sql:param value="0001"/>
</sql:query>
なお、JSPには c:set, c:forEach などのタグが使われていた。
道のりは長かった。
Apache Tomcat 8.0.53 / JNDI Datasource HOW-TO を参考にした。
(https://tomcat.apache.org/tomcat-8.0-doc/jndi-datasource-examples-howto.html#MySQL_DBCP_Example)
サーバの contex.xml に JNDI DataSource の設定をした。
jdbc/testDB という名のリソースを定義。
<Resource name="jdbc/testDB" auth="Container" type="javax.sql.DataSource"
..... url="jdbc:mysql://localhost:3306/ichojuku"/>
ichojukuはDB名である。
Webアプリ TestJ のweb.xml に resource-ref タグを入れ、
このリソースを指定した。
JSPではsql:queryタグを使った。
使用例
①ボディ部を利用する。
<sql:query>タグのボディ部にSELECT文を指定することでSQLを実行することができる。
以下は(SELECT * FROM user)を実行し、結果をqueryに格納する。
<sql:query var="query" dataSource="${db}">
SELECT * FROM user
</sql:query>
②sql属性を指定する。
<sql:query>タグのsql属性にsqlクエリを指定することで、SQLを実行することができる。
また、<sql;param>タグでSQLにパラメータを渡すことができる。
以下は(SELECT * FROM user where id ='0001')を実行し、結果をqueryに格納する。
<c:set var="s" value="SELECT * FROM user where id=?"/>
<sql:query var="query" dataSource="${db}" sql="${s}">
<sql:param value="0001"/>
</sql:query>
なお、JSPには c:set, c:forEach などのタグが使われていた。
2019-02-13
2019-02-09
CommonDBCPとTomcatJDBCPool
DBCPという名前を初めて聞いた。
DB connection pool である。
ネットにある説明を引用
コネクションプーリングとは、データベースへの接続を
幾つか持続しておき、使い回すことを意味する。
一般的に、データベースアプリケーションでは、
ユーザーがWebページにアクセスして何か処理をするたびに、
「データベースに接続」→「データベース処理」→「データベースから切断」
という流れになるが、この「データベースに接続」と「データベースから切断」
という個所は比較的時間を要する。このため効率が悪いのだ。
そこでWebページの処理が終わった時にデータベースから切断する
のではなくそのまま開いた状態にしておき、
次のクライアントからのアクセスで再利用すればよい。
「接続と切断がむやみに繰り返されることを防ぎ、
パフォーマンス向上させるのがコネクションプーリング」だ。
Tomcatには「Commons DBCP」以外にもDBコネクション・プールの実装が
存在する。それが、「Tomcat JDBC Connection Pool」です。
connection pool は前から知っていたが、APIとして使えるようになっていたとは
驚き、驚き
DB connection pool である。
ネットにある説明を引用
コネクションプーリングとは、データベースへの接続を
幾つか持続しておき、使い回すことを意味する。
一般的に、データベースアプリケーションでは、
ユーザーがWebページにアクセスして何か処理をするたびに、
「データベースに接続」→「データベース処理」→「データベースから切断」
という流れになるが、この「データベースに接続」と「データベースから切断」
という個所は比較的時間を要する。このため効率が悪いのだ。
そこでWebページの処理が終わった時にデータベースから切断する
のではなくそのまま開いた状態にしておき、
次のクライアントからのアクセスで再利用すればよい。
「接続と切断がむやみに繰り返されることを防ぎ、
パフォーマンス向上させるのがコネクションプーリング」だ。
Tomcatには「Commons DBCP」以外にもDBコネクション・プールの実装が
存在する。それが、「Tomcat JDBC Connection Pool」です。
connection pool は前から知っていたが、APIとして使えるようになっていたとは
驚き、驚き
2019-02-07
2019-02-06
Java-DBの準備
八王子いちょう塾 Java-DBの準備
5月の講義の準備に入る。
久しぶりのデータベースである。
忘れていたのを思い返し準備をしている。
mysql -uroot -p???? mysql
でエラー、パスワードを xampp/phpMyAdmin/config.inc.php
に書き加え、以下のコマンドを実行できた。
% mysql -uroot -p??? mysql
なお、MySQLサーバは 10.1.37-MariaDB である。
MariaDBで MySQLを扱っているらしい?
5月の講義の準備に入る。
久しぶりのデータベースである。
忘れていたのを思い返し準備をしている。
mysql -uroot -p???? mysql
でエラー、パスワードを xampp/phpMyAdmin/config.inc.php
に書き加え、以下のコマンドを実行できた。
% mysql -uroot -p??? mysql
なお、MySQLサーバは 10.1.37-MariaDB である。
MariaDBで MySQLを扱っているらしい?
登録:
コメント
(
Atom
)