コンテンツへスキップ

こんばんは。

更新を怠っているとてぃです。

本日は業務でトランザクション関連の修正を行ったのでそれをアウトプットしたいと思います。

そもそも、トランザクション処理とは何かと言う人もいると思うので軽く説明したいと思います。

トランザクションとは、基本情報などの知識で例えると排他処理とよく言われています。

実際に一言で言って伝わる人もいれば自分みたいに全然分からない場合があるとおもいます。

そんな人のために例を上げるとしたら、

物語の始まり

おじいさんが食料確保のために川に向かいました。川には元気な魚が泳いでいます。魚を捕まえて食料にしたいと思っているのです。まず捉えた魚を新鮮に確保するには川で檻みたいなものを作成しました。

では本題に入ります。早速魚を捕まえました。

捕まえた魚を檻に入れます。

→コミットする(保存)

捕まえた魚を流す

→ロールバックする(保存せずに終了)

上記がトランザクションの流れになります。

一通りトランザクション処理の説明を終えたので【JavaEEで分散型トランザクション処理をさせたい場合】の処理を記載したいと思います。

分散型トランザクションと永続性コンテキスト

今回は永続性コンテキストを用いた実装で説明したいと思います。永続性コンテキストはこんな感じになります。該当するクラスでentityManagerの定義を作成していることを前提にします

こちらのメソッドにトランザクションを記述し、継続処理後にエラー判定したい場合を例に書きたいと思います。

エラー判定前にコミットしたい場合別トランザクションを貼ることになります。なぜかと言いますと想像すればわかると思うので解答は書きません。

別トランザクションを貼るために1つクラスを作成し、今度はメソッドの上ではなく、Class定義します。

こんな感じになります。

@Transactional(Transactional.TxType.REQUIRED)

これで複数のメソッドについてはトランザクション管理が別になるのでコミットできるようになります。

最後まで読んで頂きありがとうございました。

こんばんは。とてぃです。

本日のタイトルはios12について記載したいと思います。

9月18日からリリースから早速自分もアップデートしました。機種はiPhone7になります。

正直一言書くと何が変わったかわかりません。

一つだけいいなと思った機能を紹介したいと思います。


スクリーンタイム

自分がiPhoneで何にどれぐらい時間を割いているか分かる機能です。

これは、ある意味新鮮です。皆さんが何に時間割いているかお聞きしたいぐらいです。

早速見方を説明したいと思います。

設定からスクリーンタイムを選択

以下のような画面が表示されたと思います。

こちらで大まかなカテゴリで表示されます

さらに詳細で見たい場合はケータイにつけた名前をタップしてください

以上のように詳細に表示されます。

これで、1日スマホをどれぐらい触っているか把握できるようになりますね。

また、ケータイ依存性もこれにより、自覚できそうな気がします。

最後まで読んでいただきありがとうございました。

こんばんは。とてぃです。

久しぶりの投稿になりますね。最近業務が忙しい...と言い訳ですね。

 

本日のテーマは業務で多少触れたことを復習兼ねて記事に起こしたいと思い、このようなタイトルを付けました。

今回のDataBassはMySQLです。

一行記載するだけで処理が出来ます。

 

カラムの値を文字列置換する関数が存在します。

REPLACE(置換したカラム,キーになる文字,何の値に変更するか)


こちらで実際に例を例えると

カラム名 登録されている値
shohin カラフルな模様のシャツ

こちらでカラフルな模様って正直なんぞや

商品テーブルに関連していろいろつけたとします。そしたら1レコードごとに修正するのは面倒ですよね。

update 商品テーブル set shohin = REPLACE(shohin, カラフルな模様, 水玉模様)で実行します。

そうすると商品テーブルのカラフルな模様のシャツから水玉模様のシャツに変更します。

ほんとに便利ですよね。特定の文字列から動的にファイル名変えたいというときに便利です。

 

最後まで閲覧していただきありがとうございました。