ラベル Java の投稿を表示しています。 すべての投稿を表示
ラベル Java の投稿を表示しています。 すべての投稿を表示

2014年9月6日土曜日

Androidアプリ開発 - 電卓(1)

●開発環境構築
android studioを使用
https://developer.android.com/sdk/installing/studio.html

インストール後、SDKマネージャーから
・必要なバージョンのSDK
・Intel用のエミュレーションアクセラレータ
を追加インストール


仮想マシンにGenymotionを使用
http://qiita.com/Sam/items/8d551f575b617fa0be7e

とりあえず、hello worldを作ってみた。

電卓はとりあえずガワだけ。
作り方はこの辺を参考に。
http://www.macs123.dtdns.net/algo/android/android009.html

2014年5月9日金曜日

KakeiWeb開発日記(2)

プログラミングスキル維持のため、家計簿システム(KakeiWeb)を作ろうという試み。

●JPAにおけるトランザクション実装
EJBにして、@TransactionAttributeアノテーションを使うのがよさげ。

public void insert(CreditCard e) throws Exception {
    UserTransaction utx = (UserTransaction)new InitialContext().lookup("java:comp/UserTransaction");
    utx.begin();
    em.persist(e);
    utx.commit();
}
JNDI(InititalContext)やJTA(UserTransaction)がやたらExceptionを投げてくるので
どのレイヤで吸収させるべきかの検討が必要であった。

@Named
@SessionScoped
@Stateful
public class Ejb implements Serializable {
    ...
    @TransactionAttribute(TransactionAttributeType.REQUIRED)
    public void insert(CreditCard e) {
        em.persist(e);
    }
}

例外キャッチ不要。トランザクションの開始終了の宣言不要。
これは楽!
ちなみに@RequestScopedにするなら、@Statelessのほうがおそらくよい。

参考
http://stackoverflow.com/questions/4294680/transaction-not-created-automatically-even-if-transactionattributetransactiona

http://otndnld.oracle.co.jp/document/products/wlw/docs103/guide/controls/conControlTransactions.html

●今後(短期課題)
(1)一覧画面のページング処理実装
(2)環境をRaspberry Piに移行する。

KakeiWeb開発日記(1)

プログラミングスキル維持のため、家計簿システム(KakeiWeb)を作ろうという試み。

●構成
OS:Linux(Raspbian)
Web/AP:GlassFish
アプリケーションフレームワーク:Java EE(JFS+JPA)
バッチ処理:Java+cron
DB:MySQL

●現時点の状況
永続化、画面遷移、その他もろもろ理解を目的として
マスターメンテ画面(クレジットカードマスター)を作成中。
リスト表示、メンテ画面表示、永続化まで一応動く状態。

●今後(短期課題)
(1)一覧画面のページング処理実装
(2)トランザクション開始・終了のスマートな実装
 JTAでトランザクションを実装しているが投げてくるexceptionが多くcatch実装が面倒。
 スマートなやり方を検討する
(3)環境をRaspberry Piに移行する。