タグ

javaとhigayasuoに関するsuusukeのブックマーク (4)

  • App Engineでバージョンによる楽観的排他制御 - ひがやすを技術ブログ

    Song of Cloudで送金のトランザクション処理パターンが紹介されていました。 http://songofcloud.gluegent.com/2009/11/blog-post_18.html 同様のpython版がこちら Distributed Transactions on App Engine - Nick's Blog 上記のやり方で基的には問題はないのですが、バージョン管理による楽観的排他制御を行っていないので、送金だけを考えるなら、残高を差分で更新しているので大丈夫ですが、これを一般的なパターンに拡張しようとすると、楽観的排他制御は必要になります。 楽観的排他制御とは、エンティティにバージョン番号を持たせておいて、メモリ読み込んだときのバージョン番号と書き込むときのバージョン番号が等しいことを確認する方法で、RDBMSの場合は、次のようなSQLを実行することで実現しま

    App Engineでバージョンによる楽観的排他制御 - ひがやすを技術ブログ
  • Slim3 for Google App Engine/Java - ひがやすを技術ブログ

    Slim3をGAE/Jに対応させました。 デモサイトはこちら。 http://higayasuo.appspot.com/ ソースコードをチェックアウトしたい場合はこちら。 http://code.google.com/p/slim3/source/checkout https://slim3.googlecode.com/svn/を指定してチェックアウトできます。デモ用のプロジェクトは、slim3-demoです。 SAStrutsのチュートリアルをやったことのある人なら、デモサイトが、そっくりだということがわかるでしょう。Slim3 Struts(SAStruts相当)がGAE/Jで動くわけです。 素のStrutsだとGAEではファイルアップロードに失敗しますが、Slim3 Strutsはその辺も対応してます。 やってみて感じたのは、GAE/Jは、制限が結構厳しいので、高度なフレームワー

    Slim3 for Google App Engine/Java - ひがやすを技術ブログ
  • 式言語を気軽に使おう - ひがやすを技術ブログ

    Javaの開発者にとって、式言語として最も身近なのは、JSPのELでしょう。 ${aaa} みたいにして、JSPの中に埋め込んでいる式のことです。上記の場合、aaaは変数になります。このELをプログラムの中から自由に呼び出せるといろんなことができるようになりますよね。 commons-elを使うとELを簡単に呼び出せるようになります。 キーとなるクラスは、ELParser。ELParser#ExpressionString(String expression)を呼び出すことにより、文字列をコンパイルします。 コンパイルした結果は、${}で囲まれている場合Expression型、そうでないばあいにはStringがそのまま返されます。 Expressionで重要なのは、Expression#evaluate(VariableResolver, FunctionMapper, Logger)のメ

    式言語を気軽に使おう - ひがやすを技術ブログ
  • 最初のアクセスで;jsessionidを表示させない方法 - ひがやすを技術ブログ

    URLの一部にセッションIDを埋め込むのは、アプリケーションサーバが、クライアントがクッキーをサポートしているかわからない場合です。 最初のアクセスで、アプリケーションサーバは、クッキーを設定してクライアントに返します。二度目以降のアクセスで、クッキーが返ってきた場合は、クッキーを通じてセッション管理ができるので、;jsessionidはURLに埋め込みません。 携帯の端末のようにクッキーが帰ってこない場合、二度目以降も;jsessionidをURLに埋め込みます。 クッキーがサポートされているブラウザで、最初のアクセスでURLに;jsessionidを表示させたくない場合、最初にindex.jspにアクセスしてもらうようにし、index.jspから物の最初のページにリダイレクトします。 <html> <head> <meta http-equiv="Content-Type" cont

    最初のアクセスで;jsessionidを表示させない方法 - ひがやすを技術ブログ
  • 1