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

daria公開

遂に公開、Excel → Database のツールhttps://github.com/yipuran/daria

main/resources に配置するテキストファイルの扱い

開発 project の main/resources に、UTF-8 で書いたテキストファイルを用意して ビルドのクラスPATH target/classes などに配置されて 読込み実行して、 それを Windows でコマンドプロンプトで実行して、文字化けしないように標準出力する。 変な要件かも…

gradle クラスパスが長すぎて bootRun が動かない時、

build.gradle task pathingJar(type Jar){ dependsOn confogirations.runtime appendix = "pathing" doFirst { manifest { attributes "Class-Path": configurations.compile.files.collect { it.toURI().toURL().toString().replaceFirst("file:/", '/') }.…

任意のリポジトリのJARをGradle で実行するコンパイルで指定

Git-Hub に置いた maven リポジトリの場合を参考に、、build.gradle repositories { mavebCentral() maven { url 'https://github.com/yipuran/yipuran-core/mvn-repo' } } dependencied { testCompile group: 'junit' , name: 'junit' , '4.12' compile 'or…

Maven ファイルのコピー

Maven で、ファイルコピーを実行するには、 Ant plugin で実行する。 <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-antrun-plugin</artifactId> <version>1.5</version> <configuration> <target> <echo message="copy files"/> <copy file="target/daria.jar" tofile="dist/daria.jar"/> </target> </configuration></plugin></plugins>

うんざりする東京五輪の影響。。。

東京五輪の影響で2020年の「山の日」が変わるだけではなかった! 「海の日」と「体育の日」も、2020年だけ変わるのか!!2020年7月23日「海の日」 2020年7月24日「スポーツの日」← 名称も変わる!しかたなく、10年以上前に作成した …

Class の getPackageName() は、Java9 からであることに注意

ある程度の規模のプロジェクトまたは会社では、Java で開発といっても 未だに、Java 8 のままである。だから以下のようなコードを書いても使うことができない。自クラスと同じ場所(クラスパッケージ階層)に読込みたいリソースファイルを配置する設計の時、…

InteliJ 複数プロジェクトを1つのウィンドウで開く

1つのプロジェクトを1つの InteliJ ウィンドウで作業するのが基本みたいで、 Eclipse や、STS に慣れしたんでた者には、さらに怒り心頭。。。InteliJ 複数プロジェクトを1つのウィンドウで開くようにするには、・作業開始するのに開くプロジェクトを予め…

月末日までの日付ストリーム

任意の日付に対する月末日までの日付ストリームの生成は、 以下、2通り考えられる。Stream.iterate で、+1 days する方法 LocalDate d = LocalDate.now(); Stream<LocalDate> s = Stream.iterate(d, e->e.plusDays(1)) .limit(d.lengthOfMonth() - d.getDayOfMonth() +</localdate>…

Windows ディレクトリワイルドカードで削除するbatファイル

ネットで探すとよく見かけるサンプルは、、 for /F %%a in ('dir /AD /B /W *') do rd /S /Q %%aこれは、カレントディレクトリでのワイルドカードであって、そうでなく、他の場所に bat ファイルを用意するには、、、 @echo off set parent=C:\User\uran\aaa…

BeanUtils の copyProperties に喧嘩を売るつもりはないけど。。。

Apache の commons-beanutils 今更、BeanUtils の copyProperties と張りあうつもりもないし、Entity DTO Form などで属性値渡すような アーキテクチャ(アプリ構成)には、とっくに興味がないのだが、、、 原始的には、面白いところなので、書いてみた。公…

Vue.js v-model で参照

oboe2uran.hatenablog.comモーダルで表示する input の値を参照するのに、 jQuery で書いてしまったが、 Vue.js としては、v-model で指定した名称で 参照するのが正しいのだろう。。モーダルの中で書いた、input に、v-model で参照キーを指定⇒ "uname" <input type="text" name="userName" id="userName" v-model="uname" class="col-3 form-control"> Vu…

Vue.js で Bootstrap のモーダル

bootstrap-vue.js を使わずに、Vue.js で動かす Bootstrap のモーダル でも、、bootstrap-vue.min.css を使う。。head タグに書くもの (サンプルなのでCDN) <link type="text/css" rel="stylesheet" href="https://unpkg.com/bootstrap/dist/css/bootstrap.min.css" /> </link>

BOM付きCSV書込み読込み Python

以前書いたけど、、BOM付きCSV書込み # -*- coding: UTF-8 -*- import csv import codecs with codecs.open('sample.csv', 'w', 'UTF-8') as f: f.write(u'\ufeff') cf = csv.writer(f) cf.writerow(['A','B','C']) cf.writerow(['あ', 'い', 'う' ]) cf.wri…

STS (Spring Tool Suite)でのエディタの水平分割

Eclipse 4.8.0(Photon)以降では、ソースの編集において 行数が多い長いソースは、エディタを水平分割して作業する機能があって便利です。 ctrl + _ (アンダースコア) のショートカットが便利でよく使います。しかし、STS (Spring Tool Suite)では、この…

Python Excel PDF変換

Python で、PDF 書込みといえば、reportlab や、pdfrw を使うのだが、 Excel ファイルをPDFに変換する、Excel がファイル保存時にPDF保存できるように、 Python で、 Excel VBA を実行して Excel ファイルをPDF変換する方法がある。 当然、、 Windo…

Apache POI でExcel 日付読込み(2)

先日書いた oboe2uran.hatenablog.com よりも、 やはり、org.apache.poi.ss.usermodel.DateUtil#isCellDateFormatted(Cell cell) を使うべきで、 セルの日付の値取得はこうすべきだ。(例) XSSFWorkbook book = new XSSFWorkbook(inputstream); XSSFSheet s…

Java 動的に複数ソートを書くためのクラス

結局、、 複数要素ソートを動的(ダイナミック)にする。 - Oboe吹きプログラマの黙示録これは、git-hub の方に入れました。。 yipuran-core/DyComparator.java at master · yipuran/yipuran-core · GitHubsorting · yipuran/yipuran-core Wiki · GitHub

複数要素ソートを動的(ダイナミック)にする。

前回投稿の Java 複数要素ソートのおさらい - Oboe吹きプログラマの黙示録 は、どうしてもソート対象の要素が、、、 ・要素の数、優先順位 の指定はコーディングに依存が強い、、 ・昇順のみ でした。 list.stream().sorted( Comparator.comparing(Fieldgett…

Java 複数要素ソートのおさらい

1つの要素ソートであれば、単純な例 public class Foo{ public Integer width; public Integer height; public Integer depth; } List<Foo> list; // list 生成後、、 list.stream().sorted((a, b)->a.width.compareTo(b.width)) width -> height -> depth の順</foo>…

mybatis xml設定ファイル使わない場合の補足

mybatis xml設定ファイル使わない場合の方法として まとめたが、、 mybatis XML設定を使わない場合 - Oboe吹きプログラマの黙示録接続設定をXMLに記述しないとしても、 やはり複雑なSQLをアノテーションに記述しては読みにくいので、 SQL文は、SQL Map…

Java Bean のコピー(2)、 Snake case ⇔ Camel case

昨日投稿の、Java Bean のコピー(1)、 Snake case ⇔ Camel case - Oboe吹きプログラマの黙示録 は、コピー先に Camele ⇔ Snale 対応の同じ型フィールドが存在しなくても属性値コピー生成する方法だ。 でも、厳しく、機能上より優れてる以下の属性値コピー…

Java Bean のコピー(1)、 Snake case ⇔ Camel case

Field 属性が、Snake case で記述された Java のオブジェクト(Bean)と Camel case で記述された Java のオブジェクト(Bean) 相互に値をコピー生成する方法、 つまり、Snake case で記述されたフィールド属性値を対応する Camel case で記述されたフィー…

Java で、Snake case ⇔ Camel case

先日、Python で処理する Snake case ⇔ Camel case を書いた。 Python で snake case → camel case - Oboe吹きプログラマの黙示録Python で camel case → snake case - Oboe吹きプログラマの黙示録では、Java の場合、これもネット検索すると沢山いろんな方…

DB用のツール入手先

DBeaver 今まで使ったことなかったけど、各種DBに接続できて良いかも。。 ZIP版ダウンロードして使える。 Community 版で充分。 dbeaver.io

Excel VBA から Python 実行で、Snake case ⇔ Camel case

Python インストールしてないPCでは動作しない。 xlwings のインストールも必要。 ということで、Python インストールしている人にしかお奨めしない Excel VBA から実行するもの。 Excel VBA は、筆者はまったく理解していない≒初心者≒素人です。今回、Exc…

Python で camel case → snake case

Python で camel case → snake case もネット検索するとたくさん方法が紹介されてる。 しかし、よく紹介されてる方法は、本当に期待どおりか疑問がのこる。 # -*- coding: UTF-8 -*- import re str = "abcDefGhi2j" str2 = "AbcDefGhi2j" res = re.sub("([A-…

Python で snake case → camel case

仕事で、snake case 文字列/単語を、camel case にする作業はかなりあって、 たいへん面倒くさい作業になる。 Python で実行する方法をネット検索すると結構いろんなコーディングに出くわす。よく見かける方法。。。 import re str = "abc_def_ghi_2j" res =…

mybatis snake case to camel case

mybatis テーブル列名が、snake case の場合、Java Object の属性名 camel case に マッピングさせる場合、configuration XMLファイルに記述する設定は、、、 mapUnderscoreToCamelCase を True で設定する。 <settings> <setting name="mapUnderscoreToCamelCase" value="true"/> </settings> デフォルトは、False である。 これは、ty…

Online Python

ちょっと出先で、Python コードメモっておいたり便利そうなWebサイトtrinket.io