NetBeansでLombokが動かない(Maven Project)
lombokなる便利なライブラリを教えてもらったので早速NetBeansの依存性に追加してみたけど動かなかった話。
lombokとは
いわゆるBeanは通常privateなフィールドを作ってgetter/setterを作る。
多分一般にIDEの自動生成を使うと思う。
フィールドが増えたら増えた分だけ生成するとかね。
lombokはこの自動生成すら不要になる便利+ソース見やすい!
他にも色々機能あるけど一番簡単なのがコレ。classに@Dataつけるだけというお手軽系ですよ。
PJに依存性を追加(Maven)
追加の手順は簡単。
- PJの依存性右クリック > 依存性の追加 で lombokを検索
- org.projectlombokの最新を追加
で、ちゃんとjarもインストールされて万々歳のはずが動かない!
privateフィールド2つを定義しただけのclassに@Data付けただけのテストクラスなのに!
確認すること
ネットで調べると色々出てくる。
maven-compiler-pluginが2.2以上じゃないとダメとか。(自分のは3.1だった)
lombokのバージョンによってはNetBeans7だとうまく動かないとか。(自分のは8だった)
裁量労働制についての云々とか
非常に興味深い事件だったので地裁の判決文全文読みふけってしまった。
地裁判決が有名になったようで、控訴したのかどうかすらなかなか調べがつかず…。
結局のところ、控訴したようだけど特に判決に大きな変更はなかったようで、無料の判例データベースでは判決文が掲載されていなかった。無念。
地裁の結果は最高裁判所のデータベースにも載ってるのにね。
なお、第1078号2013年12月15日発行の労働判例付録によると確定となっているので上告はしなかった模様。
後でまとめるかもしれないのでメモメモ。
通称 エーディーディー割増賃金請求
一審 京都地裁 平21(ワ)2300
控訴審 大阪高判 平23(ネ)3329
それにしても、司法関係の情報はもうちょい検索しやすくならないもんかね。
膨大すぎて大変なのは分かるんだけど、いつまでに整備する計画とかあるんだろうか。
PDFを1つのPDFにしたい、更に2in1にしたい(Java)
ざっくりやりたいこと
色んなファイル形式で作った資料をまとめて印刷したいです。
保存するのに面倒だから印刷した紙のサイズは統一したい。
試行錯誤の結果
資料はWordだったりExcelだったりPowerPointだったりするけどPDFに統一。
さらに1つのPDFにまとめた。(PDFSAMを愛用している)
困っていること
資料によって大きさが違うんですよねー
A4の資料とA3の資料があると一度には印刷できない。
いや、できるけど結局印刷された紙がA4だったりA3だったりするわけで(当然だけど)面倒。
理想型
- 紙のサイズは大きい方に合わせてA3にする
- A3はそのままA3サイズとして印刷する
- A4は縮尺は変えずにA3に2枚並べて印刷する
つまり、こんな感じ。
p.1とp.2はA4、p.3はA3のPDFがある。
これをp.1とp.2を並べて1枚のA3にしたページと元のp.3で2枚のA3資料にしたい。
作ってみた
iText 5.5.0 を使用。 iText, Programmable PDF software | iText Software
A4 2ページをA3 1ページにするにはこんな感じ。
偶数の時に改ページせずに隣に並べるという荒技。
ちゃんとするならもう少しマシな判定を書く必要がある。
ここまでできたらA3の時はそのままとか追加して完成。
さらなる進化
人間欲しいものを手にすると更に良いものが欲しくなるもので…
縦と横も自動で判別してとりあえず全部A3にしてくれよ! と思ったりするのです。
縦向きと横向きが混ざってたりするとRotateする必要があります。
そうなるとaddTemplateの引数が厄介。説明してるところがあまり見つからない。
ただの90度回転ならともかく縮尺が1倍じゃなかったりすると途端に面倒になる。
こちらiText Tutorialに細かい仕様が載っているので助かりました。
また、同じ横向きでもPDFを作成するときに横向きだったものと、PDFSAMなどで回転したものはプロパティが異なるため注意が必要。
Adobe Readerで見ると違いが分からないから上手くいったりいかなかったりで嵌った。
例1)A3横の資料を作ってPDF保存 → PdfReader#getPageRotation = 0
例2)A3縦の資料を作ってPDF保存、PDFSAMで横向きに回転 → PdfReader#getPageRotation = 270
結論
資料は最初から印刷のことも考えて作るべき。
auスマートパスの不具合(犯人はau ID設定)
先月からauスマートパスが動かず。
といっても私はかなりのライトユーザーでATOKと乗換案内のためだけに入ってる鴨なのであまり気にしていなかった。
きっかけはスマートパスのPush通知。
通知を止めようとしたが認証通らず…
試行錯誤してたら乗換案内も使えなくなった。
ネットで検索→サポートに電話→auショップ持ち込み でも解決せず、ショップからは初期化を勧められる始末。なんてこった\(^o^)/
結局自力で解決…
現象
auマーケット or auスマートパスアプリを実行し、ブラウザを開く。
ログインでかんたんログインしようとする→au ID設定開いて画面→au ID設定開いて閉じる→ログインボタン押す→au ID設定開いて画面 (以下無限ループ)
なお、かんたんログインではなくIDとパスワードを直接入れるとログインできる。
ログイン後、マイアプリを開くとなぜか電波がないとか言われる
EclipseLinkを使ってみる~初めてのORM
O/Rマッパーとやらはとても便利だそうなのであんまり概念とか分かってないけど使ってみる。
エンティティ・クラスを作る
その名のとおりエンティティ。
- プロジェクト右クリック 新規 > データベースからのエンティティ・クラス
- ウィザードが出てくるのでデータベース接続を選択し、クラスを作りたいテーブルを追加する
- 次へ > 次へ で完了
SampleTable.java と SampleTablePK.java が作成された。
できたてはエラーになっていたけどバックグラウンドで eclipselink が依存性に追加され、勝手にエラーが解消した。
コントローラ・クラスを作る
エンティティだけじゃ何もできないのでコントローラ・クラスを追加してみる。
SampleTableJpaController.java が作成された。
ついでに同列にexceptionsパッケージが追加され、例外クラスが生成されている。
persistence.xmlを編集
スキーマがPUBLICのせいかテーブルが見つかりませんエラーが出るので少し修正。
persistence.xml に propertyを追加する。
<property name="eclipselink.ddl-generation" value="drop-and-create-tables"/>
更に、接続の時の名前が自動生成だとアレな感じなので変えておく。
とりあえず test と・・・(余計悪い名前になった感)
<persistence-unit name="test" transaction-type="RESOURCE_LOCAL">
接続
では実行してみる。とりあえず動いた。
実行結果
Key1: KEY_1 Key2: KEY_2 Att VChar:Sample Text Att Dec: 1 Att Date: Sat Apr 26 19:37:20 JST 2014 Att Time: 19:37:20
NetBeans Mavenプロジェクトでライブラリの追加
NetBeansからH2 DBに接続する
調べてもちょうど良いサイトが見つからなかったから自分でメモ。
正しいやり方なのかどうかは分からないけど接続はできた。
前提
- H2 DBファイルが生成されていること
*2014/4/19追記
生成されてない場合は新しいファイルが作成される - ドライバjarがあること
ドライバの登録
- サービスタブの データベース > ドライバ を右クリック > 新規ドライバ...
- H2のjarファイル(h2-x.x.xxx.jar)を選択
- ドライバ・クラスは検索を押すと勝手に出てくる
- 名前は自分が認識できれば何でも良い