2016-01-01から1年間の記事一覧

プログレスバー、画像を使わずに。

画像を使わないでCSSで描画させるプログレスバーを探したらありました。red-team-design.comこれを jQuery の $.ajax で通信した時に、進捗率を表示させます。これに、バーの中央に(%)進捗率を表示させたいので、以下のようにHTMLを書いて、 <div id="preogress_bar" class="progress-bar stripes"> <span style="width: 0%"></span><p>0 %</p> </div> 次…

groupingBy で chunk

grouping by のメモ Map<String, Long> countmap = authors.stream().collect(Collectors.groupingBy(t->t.level, Collectors.counting())); Map<String, List<Author>> mapAuthors = authors.stream().collect(Collectors.groupingBy(t->t.level, Collectors.mapping(u->u, Collectors.toList()</string,></string,>…

mybatis foreach の index を使う

MyBatis の foreach の index を使えば、Multiple INSERT を実行するとき foreach のカウンタを挿入する行の 列の値にすることができる。 <insert id="insertEmployee" parameterType="map"> INSERT INTO employees ( employee_name , employee_no ) VALUES <foreach collection="e_list" item="e" separator="," index="index"> ( #{e.dummy}, #{index} ) </foreach></insert>

リストから順序を維持した Pair を作成する

文字列でもなんでも良いのだが、"a","b","c"... リストの順序に従った「ペア」を順序にしたがって作りたい要求があったとする。"a" と "b" "b" と "c" "c" と "d"のように順にペアを作る。ペアは、AbstractMap.SimpleEntry を継承したクラスとする。 public …

コレクションの比較→ BiConsumer に index と比較結果

先日、2つのオブジェクトの比較、equals がそのまま使えること、"" 空文字=すなわち存在しないことと null を同義とみた処理で書いてた。 ・・・・実質、String と Integer にしかそのまま使えないけど、それしか目的にしてなかったのでそういうつもりで …

Wicket セッションに格納できる最大サイズ

Wicket のセッションに格納できるサイズのMaxを調べてみる。WebApplication のメソッドより、getStoreSettings() を WebApplication の中で実行する。 単位は、キロバイトか、MBで確認、double型で返ってくる。 double kilobyte = getStoreSettings().g…

BiConsumer を比較処理の記述で使う

2つのオブジェクトを比較処理するものが大量にある時、if 文をたくさん書くのが嫌になり if文を隠ぺいして差がある時の処理を Consumer と Biconsumer で書くことを考えた。 public static <T, U> boolean parse(T t, U u, Consumer<T> delete, Consumer<U> add, BiCons</u></t></t,>…

Stream でインデックスを求める

リストに存在するオブジェクトが何番目=インデックスを求める方法、Java8 Stream で求める。 見つからない場合は、-1 が返れば良しとする。という要求で、サンプルを書くと。。。 List<String> list = Arrays.asList("a", "b", "c", "d", "e", "f"); /* このリス</string>…

CSS の nth-child

CSS

CSS の nth-child の書き方、解ってるんだけど、ちょっとパターンが複雑になると 迷うことがあるのでメモ td:nth-child(odd){ background-color: #ffffcc; } 奇数 1 2 3 4 5 6 7 8 9 10 11 td:nth-child(even){ background-color: #ffffcc; } 偶数 1 2 3 4 5…

Wicket ListView のイテレータ を無理やり Stream で処理してみる

Wicket の ListView が提供する itarator メソッドは、以下のような使い方もできる。無理やり、イテレータを Stream に変換して処理してみた。 final WebMarkupContainer listViewContainer = new WebMarkupContainer("listview_container"); listViewContai…

AjaxTabbedPanel 内に配置した入力フィールド値をタブ切り替え時に受け取る

Wicket の AjaxTabbedPanel を使った時に、タブの中に配置した入力フィールドの値をフォーム送信ボタンによる受信ではなく、 タブのクリック=タブ切り替えのタイミングで受け取る方法に悩んだ。org.apache.wicket.extensions.markup.html.tabs.TabbedPanel …

Apache POI Excel 入力規則の読み込み(2)

Apache POI Excel の入力規則を参照するのに、前の記事、 Apache POI Excel入力規則の読み込み(1) - Oboe吹きプログラマの黙示録 このように毎回書いてはいられない。そこで、XSSFSheetオブジェクトを渡して後から何回でも問い合わせするクラスを書いてみ…

Apache POI Excel入力規則の読み込み(1)

Apache POI で Excel の入力規則によるプルダウンの情報を読み取る場合、同じシート内のセルで入力規則の値を格納していないと読み取れない。このように同じシート内にある入力規則の情報を参照するコードサンプルを書いてみた。 (ただし、このサンプルは縦…

リストを作る時の fromJson 書式

Google gson でリストを復元する時の fromJson の書き方をよく忘れるのでメモ Gson gson = new GsonBuilder().serializeNulls().create(); List<Foo> list = gson.fromJson(string, new TypeToken<Collection<Foo>>(){}.getType());</collection<foo></foo>

Reloading this page will cause modal window to disappear を回避

Wicket の モーダルウィンドウを閉じる時に、ページ遷移 setResponsePage を何も対処せずに実行すると、、 Reloading this page will cause modal window to disappear が発生してしまう。 これを回避するには、モーダルウィンドウを設置するページで初期処…

GSON でjson生成時の null を処理する(2)

先日書いたGSON使用時の String型のNULLパターン { "aaa": "null" } でなくて、 { "aaa": "" } にするための TypeAdapterFactory を書き直しました。 import java.io.IOException; import com.google.gson.Gson; import com.google.gson.TypeAdapter; import…

GSON でjson生成時の null を処理する場合、

google GSON でJSONを生成する場合、そのままだと、nullオブジェクトは無視(出力されない)なので、GsonBuilder の serializeNulls() を呼び出して、 { "a": "null" } のように出す。 しかし、String オブジェクトの結果として、{ "a": "" } が欲しい場合が…

Wicket AjaxButton onSubmit の前に JavaScript を差し込む

Wicket の AjaxButton onSubmit の実行前に処理したいJavaScript がある場合、 わざわざ jQuery で $( ボタンセレクタ ) .click( function(){ ...} ); のソースを用意して JavaScriptHeaderItem.forReference で読み込ませる方法にするか、 生成したAjaxButt…

GSON と LocalDate / LocalDateTime のシリアライズ・デシリアライズ

Java7をやめてJava8で開発するようになり、java.util.Dateを使わなくなり、 Google gson で LocalDate / LocalDateTime をシリアライズ・デシリアライズするのに 簡単に書ける方法を探すのに苦労したのでその過程と結果です。 GsonBuilder の registerTypeAd…

Wicket のタブで、フォーム入力を保持した切り替え

1年半くらい前、Wicket のTab ・・・org.apache.wicket.extensions.markup.html.tabs パッケージの一連のタブを使用する時のデザインを書いたことがある。 Wicket のタブページ作成作業 - Oboe吹きプログラマの黙示録 この時デザインの事しか書かなかった、…

MySQLワークベンチでエラーコード=2013 の場合

SQL

MySQL ワークベンチで、時間かかるプロシジャなどを実行していると Error Code: 2013 Lost connection to MySQL server during query 600.135 sec となってしまうことがある。 こういう場合、設定でSQLEditer の中のMySQL Session のDBMS connection keep-al…

コンテキストメニューのアイコンをカスタマイズ

jQuery context menu https://swisnl.github.io/jQuery-contextMenu/ これを使ったコンテキストメニューのアイコンの変更の方法、 items オプションを指定する時に記述する icon キーワードに沿って、以下のクラス名で CSSを用意しないとならない。 .context…

文字列区切り→リスト

Java7 では、数字がカンマなどで区切られた文字列を split して List<Integer> にするのに、 こんなコードを書いていた。。。 String str = "1,2,,4,5"; List<Integer> list = new ArrayList<Integer>(); for(String s: str.split(",") ){ if ( ! "".equals(s) ){ list.add(Integer.pars</integer></integer></integer>…

ブログの引っ越し終わり。

とりあえず、ブログをここに引っ越し作業完了。 いくつか画像は持ってこなかったけど。 カテゴリも全部までは振り直していない、そのうち、やるつもりです。 相変わらずたいしたものは書かない、時代とともにどうでもいいものになるのもあるでしょう。ただの…

テスト:ブログから引っ越し作業中

はじめての投稿テスト 元のブログから引っ越しを作業中です。

SQLアノテーションで動的SQL

mybatis のSQLアノテーションで動的SQLを書くには、SQLMap XMLで書いていた <if> 等を <script> で囲んで書く。 (例) @Select("<script>SELECT * FROM shops WHERE delete_flg = 0 " + "<if test=\"branch_id != null\"> AND branch_id = #{branch_id}</if>" + " </script></if>…

methods on autocomplete prior to initial

Wicket モーダルウィンドウに Autocompleteや Datepicker を配置した時、選択の前にウィンドウを閉じた場合に残る Autocompete やカレンダー表示などが残ってしまう問題、 これを回避するために、、 $('div[class="w_caption"]').mouseover(function(){ $('i…

Wicket 7 で DateTimeFormatterがエラー

Java8 、 Wicket 7 で開発していたら、Page 生成で 以下のように、java.time.LocalDate を DateTimeFormatter でフォーマット化して表示しようとすると、 error delegating to writeObject : java.time.format.DateTimeFormatter org.apache.wicket.WicketRu…

tbody scroll と jQuery ui の Selectable

テーブルのスクロールを tbody で出現するようにCSSで指定して、 jQuery ui の Selectable を この tbody に適用させて行選択をできるようにしたところ、、、 スクロールはきちんと表示されてマウスホイールの操作で問題なくスクロールはできるが、、 ス…

Map.Entryの実装は用意しておく。

import java.util.Map の Entry は、汎用的に実装を作っておくと良いかもしれない。 import java.util.Map; /** * Map.Entry実装. */ public class Pair<K, V> implements Map.Entry<K, V>{ public K key; public V value; public Pair(){} public Pair(K k, V v){ key =</k,></k,>…