オラクルマスタブロンズ学習用サイト

オラクルの出していたWeb雑誌に、基礎から始めるデータベース入門セミナーを発見。リンクが切れている状態なのでここで一覧にする。 http://www.oracle.com/technology/global/jp/pub/jp/articles/2shin/1/index.htmlhttp://www.oracle.co.jp/2shin/ora74/18…

S2Dao N対1マッピングのやり方

DEPテーブル(1側)とUSERテーブル(N側)があって、 DEPNOに紐づくUSERIDを取ってきなさい、というのは普通の話。※1 複数のUSERIDが取れます。 今回はそれに加えて、ちょっと特殊な 「DEPテーブルをN側に見る」やり方を調査する必要があったのでメモ。※2 …

dao.dicon デフォルト値のいじり方

<component class="org.seasar.dao.impl.ResultSetHandlerFactorySelector"> <property name="restrictNotSingleResult">true</property> </component> プロパティをtrueにしましょうといわれても、初心者にはむずかしい。【参考】 http://s2dao.seasar.org/ja/daoDicon.html#ResultSetHandlerFactorySelector

DAO1件DIのやりかた

<component name="eq_common_eqsslgDao" class="jp.go.nta.hoge.dao.eq.common.EqsslgDao"> <aspect>dao.interceptor</aspect> </component>

Seasar2.3⇒2.4 S2Struts⇒SAStruts の移行記録

メモ。【1】Interceptorの記述方法が違う! S2Strutsでは、ActionImplを登録するdiconにインタセプタを記述していたのですが、 SAStrutsではcustomizer.dicon という専用のdiconがあってそこに書くようになっています。↓ <initMethod name="addCustomizer"> <arg> </arg></initmethod>

Sesar2 Dao実体化を2段階に分けるdiconファイル

メモ - <components namespace="dao"> <include path="j2ee.dicon"/> </include></components>

form.submit(); が出来ないとき!

form.submit()は、formの要素内に「submit」という名前のものがあると、動きません。 - <script> function changeList(value) { window.alert(value); var form = document.getElementsByTagName("form")[0]; form.action = value; form.submit(); } //--> </script> - これで…

クロージャー

Javaにはクロージャーがない。 Rubyにはある。 - a = [1,2,5] a.each{|x| p x*2}←この考え方、Javaだとすごい難しい!

Javaリフレクションを使ってみた

リフレクションって慣れないけれど面白い。 いくつかメモメモ。 こんな感じでクラスを作り、リフレクションで情報を取得してみました。 【作ったクラス】 - static class ADto implements BaseDto{ private static String q ="hoge"; public String s=null; …

S2StrutsでFormをSessionに格納する

Sessionへの格納は、 @ExportToSessionを書くと実行できます。 - ですがFormはこうかいても、Sessionに格納とはなりません。 下記S2Strutsリファレンスを元に、Actionクラスのアノテーション、 @StrutsActionの書き方を変えないといけません。 デフォルトで…

Seasarで、独自Interceptorを複数使用する

ログインチェックを行うInterceptorと、 実行Actionクラス名を開始と終了のタイミングで出力するTraceInterceptorを作成。TraceInterceptorは、プロパティファイルから該当する名前を取ってこれるようにしました。 【TraceInterceptor】--------------------…

Seasarでトランザクション制御

S2daoでは、どのタイミングでロールバックするのか調べてみました。 - ActionImpl内で、下記2つのSQLを続けて実行します。 2つ目でエラーが出る仕様ですが、 エラーが出た後も1つ目のUPDATEがロールバックされることはありません。 これでは困ってしまいます…

s2daoで、外部テーブルから値を取ってこれない!

一日くらい嵌っていました。【現象】 FKで結合している別表から値が帰ってこない (直にコマンドプロンプトでSQLを投げると実行できるが、 S2daoで実行すると別表のDTOがNULLで返ってくる) 【状態】 テーブル1はこんな感じ テーブル2はこんな感じ DEP_COD…

seasar2.4.41 とS2-struts1.2.12 を一緒に使う時の注意点

S2-struts1.2.12のブランクプロジェクトをDLして、そこにS2.4.41 を入れると色々問題がありました【1】 S2-struts1.2.12は2.3系 ⇒2.4系に変更すると色々エラーでる(Ⅰ)Servletは2.3⇒2.4に上げる必要があります (Ⅱ)javassist-3.0.jar⇒javassist-3.4.ga 【…

【発達心理学】読後メモ

子どもとことばの出会い◆子どもは下記の4点を満たしている物に特別に反応しやすい 1、結束性→ボールなど、1つに結合されかつ完全な全体となるもの。 「頭」は他の何かとくっついているのでこの例ではない。2、継続性→ある時点で消えて、ある時点でふたた…

勉強会での発表ネタ & 発表後の感想など

テーマはGAE00.そもそもGAEって何? ⇒グーグルが提供するアプリケーション実行サービス。 代表的なクラウドサービスであり、一番最初に提供されたPaaS型クラウド。開発者はウェブアプリケーションをクラウド経由で作成し、ユーザーはそれらをいつでもどこで…

GAEでQueueを使ってみよう!

GAEでQueueを使う方法・注意点など。【1】Queueを実行するServlet(TestQueue)を書く。 public class TestQueue extends HttpServlet{ private static final long serialVersionUID = 1L; public void doGet(HttpServletRequest req, HttpServletResponse r…

int[] から String への変換

Javaはこういうの、Rubyと違ってめんどくさいなぁ。。 //配列を文字に変換 private String printString(int[] a){ StringBuffer aa = new StringBuffer(); for(int s :a){ String ss = ((Integer)s).toString(); aa.append("/"); aa.append(ss); } return aa…

自動RTを行うTwitterBotを作るときの注意点

Twitterで特定の発言IDをDataStoreに保存し、 時間を置いてRTするBOTを作成したときの備考録です。【1】RTする時点で発言が消去されていた ⇒404エラー【2】同じ発言を繰り返しRTする ⇒403エラー - 自分がエラー処理をしたコードはこんな感じです。 try { // …

GAEでログが出ない ⇒logging.properties の設定が必要

GAEでログが出ない!【原因】 logging.propertiesの設定がデフォルトでは「WARNING」になっているため、 log.infoメソッドが読み取られなかった←INFOレベルのため。 - これが書いたソースです。 INFOレベルが2つ、WARNINGレベルが1つ出力されるはずですが、 …

NoClassDefFoundError: twitter4j/TwitterException

GAEでデプロイできたものの、エラーログが出ました。 NoClassDefFoundError: twitter4j/TwitterException【原因】 twitter4j-core-2.1.0.jar が正しくビルドされていない 【解決策】 下記のように、プロジェクト内で正しくjarファイルを参照していないとダメ…

勉強会での発表ネタ

テーマはGAE1.プロジェクトつくってみて空デプロイ ⇒URLアクセス実際に動いてるBotをみてもらう1.cron.xml ⇒タイマーだよ。Servletごとに設定できるよ2.Data格納の様子 ⇒SQL(違うけど)発行の様子⇒INSERT UPDATE ⇒ログを見てもらう⇒Keyが飛び飛び⇒分…