ksino's diary

覚えたことを忘れないように、小さなことでも書いていく。

Selenideでclickに失敗するのを回避

Selenideで↓のようにclickを実行しようとすると、失敗するケースがありました。 $(By.id("id1")).click(); sendKeysを試したらうまくいきました。 $(By.id("id1")).sendKeys(Keys.ENTER); 原因はきちんと追っていないのですが、、、id1に紐づくのがsubmitボ…

組み込みのSQLiteを利用する

createの例 import sqlite3 connection = sqlite3.connect('test.db') # 無い場合は新規作成される cursor = connection.cursor() cursor.execute('create table kokyaku (id int, name varchar(64))') connection.commit() connection.close() insertの例 i…

ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD の除去

Eclipseに導入したSpotBugsで、「インスタンスメソッドからstaticフィールドへの書き込み」がエラー検知されました。↓こんなコードです。 public class WriteStatic { private static String s; public void method(String value) { s = value; } } 諸事情に…

JavaScriptメモ(随時更新)

変数はletで宣言すべき varは古い機能である。 let a; 文字列と数値の演算 "+"だけが文字列として演算される。 console.log("12" + 3); // "123" console.log("12" - 3); // 9 console.log("12" * 3); // 36 console.log("12" / 3); // 4

書籍「みんなのJava」を読みました

書籍「みんなのJava OpenJDKから始まる大変革期!」を読みました。 Javaを使い始めて20年以上が経ちますが、ここ数年の大きな変革にはついていけてなかったので、大変参考になりました。 今後も定期的にこのような本が出ると嬉しいですね。。みんなのJava Op…

Baldur's Gate: Enhanced Editionの画面が小さい場合の対処

問題 SteamのセールでBaldur's Gate: Enhanced Editionを買いました。 store.steampowered.com 喜び勇んで起動すると、画面が小さい。。。 ディスプレイ中央部に小さく表示され、余白が黒くなっています。 これでは辛いので対処方法を調べました。 設定ファ…

財布を買い替えました

2年ほど、アブラサスの小さい財布を使っていました。グッドデザイン賞受賞 小さい財布 abrAsus(アブラサス)メンズ財布 小銭入れ付き三つ折り財布 極小財布。携帯性、機能性、デザイン性のバランス追及 男性へのプレゼント、ギフトに 極小財布/ミニ財布/薄…

PMD

ソースコードアナライザ pmd.github.io

gradleでのビルド時に、特定のクラス名を取得し、設定ファイル中の文字列を置換する

特定のネーミングルールに則ったクラス名の一覧を取得し、設定ファイルに書き込みたいことってありますよね。 build.gradle task genConfig { StringBuilder sb = new StringBuilder(); FileTree tree = fileTree(dir: 'src/main/java', include: '**/*Maste…

移動

VSCodeで覚えたこと(随時更新予定)

ウィンドウ操作 サイドバー表示/非表示 Ctrl + B パネル表示/非表示 Ctrl + J 高速スクロール Alt押下しながらスクロール クイックオープン Ctrl + P 指定行へ移動 Ctrl + P, :番号 行折返しのオンオフ Alt + Z ナビゲーション ヒストリ Ctrl + Tab 次のエ…

Thymeleafの式

変数式 ${...} 選択変数式 *{...} メッセージ式 #{...} リンクURL式 @{...} フラグメント式 ~{...}

bluetooth マウスの接続が切れる問題の解決

突如、bluetoothマウスの接続がブチブチ切れて使い物にならなくなりました。 そのタイミングでWi-Fiも不安定に…、ということで、原因はWi-Fiとの干渉のようでした。 普段の接続先は802.11n(a or g)だったのに、bluetoothが切れたタイミングで確認すると何故…

インデックス投資を始めました

会社が確定拠出年金に移行して早数年。 よくわからないまま、なんとなく積み立てていたら、思いがけず増えていた。 これが確定拠出年金の説明会で講師の方が言っていた 長期 分散 の効果かと実感。自分でも証券会社の口座を開いてインデックス投資をはじめて…

propertiesファイルの読み込み

大した内容じゃないけど、すぐに忘れるのでメモ。 LoadProperties.java package jp.gr.java_conf.ksino.sample; import java.io.FileInputStream; import java.io.InputStreamReader; import java.util.Properties; public class LoadProperties { public st…

全角文字列を半角文字列に変換する

package com.example.normalize; import java.text.Normalizer; public class Zenkaku2Hankaku { public static void main(String[] args) { String zenkaku = "H20181226"; String hankaku = Normalizer.normalize(zenkaku, Normalizer.Form.NFKC)…

JavaSE 6 西暦で与えられた日付文字列を和暦に変換する

package com.example.era; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Locale; public class EraMain { public static void main(String[] args) { Strin…

Commons FileUploadを試す

https://commons.apache.org/proper/commons-fileupload/ index.html <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> </body></html>

Ubuntu 18.04 LTSで任意のパスにおいたアプリケーションをランチャーから検索できるようにする

例えば、eclipseを/home/user/optとかに配置した場合、下記のようなファイルを用意してあげれば良いです。 配置パス /home/user/.local/share/applications/eclipse.desktop 設定ファイル [Desktop Entry] Type=Application Name=eclipse Icon=/home/user/op…

Ubuntu でCtrlキーとCaps Lockキーを入れ替える

/etc/default/keyboardに以下を定義する。 XKBOPTIONS="ctrl:swapcaps" XKBOPTIONS="caps:ctrl_modifier"caps:ctrl_modifierも定義しておかないと、Shift + Caps Lockを押下したときに入れ替えが無効(Caps LockキーがCaps Lockキーとして動作)となってしまう…

jedi-vimでPygameの補完がうまくいかない

"pygame"直下までは補完できる。(ただし、その先がMissingModuleでエラーになっている) その下の階層からは補完できない。 調べてみると、どうやらjedi-vimとPygameを組み合わせた場合の仕様?らしい。 jedi-vim作者のdavidhalterさんによると、修正予定はな…

Ubuntu 16.04 LTSにPyCharmをインストールする

Snapパッケージが提供されているので簡単に導入できました。 $ sudo snap install pycharm-community --classic

Pythonで書いたプログラムをUbuntuからmicro:bitへ書き込む

Web上のエディタでなく、ローカル端末上で開発したかったので調べました。 前提 以下の手順でPythonを導入済みであること。(まぁ、必要なものが入っていればどんな手順であっても良いのでしょうけど、実際に試した前提ということで。) ksino.hatenablog.com …

Ubuntu 16.04にpyenvを導入し、Pythonを切り替えられるようにする

勉強しようしようと思いつつ長らく手がついていなかったPython。一念発起して勉強することにしました。とりあえず書籍を購入。みんなのPython 第4版作者: 柴田淳出版社/メーカー: SBクリエイティブ発売日: 2016/12/22メディア: 単行本この商品を含むブログ (…

あるポートを使用しているプロセスを調べる

lsof -i:<ポート番号>

ハンドスピナー買ってみました。

巷で人気とのことで、いろいろ見てたらほしくなってしまい…。 amazonで各商品のレビューを調べてみても、怪しげな中華コメントが氾濫していて、どれを買えばいいものやら。 悩んだ末に、若干お高めのものを選びました。 金属製で重厚感があり、回転もなめら…

飯盒でオイルサーディン飯を作る

見た目は悪いけど美味しく作れたのでとりあえずメモ。 もう一度作ったら写真も載せる。。。 使用した用具 炊飯に使用 Rothco ハンゴウ G.I. Type Stainless Steel Canteen Cup with Lid[並行輸入品]メディア: その他この商品を含むブログを見る 具材の調理に…

Ubuntu 16.04 LTSにMySQLをインストールする

インストール sudo apt update sudo apt install mysql-server mysql-clientインストール中にrootユーザのパスワード入力を求められる。 DBの作成 $ mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL…

canvasをクリアする

var canvas = document.getElementById('canvas'); var context = canvas.getContext('2d'); context.clearRect(0, 0, canvas.width, canvas.height);

半年ほど前に流行ったズンドコキヨシをJSで

遅ればせながら、いまごろ知ったのでやってみる。 var array = []; for (var i = 0; ; i++) { var s; var random = Math.round(Math.random()); if (random == 0) { s = 'ズン'; } else { s = 'ドコ'; } console.log(s); array.push(s); if (array.length > …