TIL

Today I Learned. 知ったこと、学んだことを書いていく

Scrapboxを使い始めてみた

最近はメモ帳の代わりとしてScrapboxを使ってる 使い方はよくわかってないけど、メモ代わりにはいい感じ https://scrapbox.io/tamago324-05149866/

【Hibernate】NativeQuery.setProperties でパラメータのセットにPOJOを使う

hibernate のSQL実行時のパラメータセットにPOJOが使えたのが便利そうだからメモっておく org.hibernate.query.NativeQuery.setProperties()を使うことでパラメータのセットにPOJOが使える // Dao.java @Override public void insert(People people) { Sessi…

【Java】Spring Bootで Java Config を使用し、Propertiesファイルを読み込む

SpringBootを使って、Propertiesファイルを読みたかったから、やってみた XML書きたくないから、Java Configで実装した 以下の2つのJavaクラスを作った sample/App.java sample/config/Config.java sample/config/Config.java package sample.config; impor…

【Java】lombokで自動生成されるsetter(getter)を上書きする

例えば、特定のプロパティのみ、自分で書いたsetterを使いたいときとか やることは ただ単にsetXxx()を作ればいいだけ だった 以下、サンプルコード サンプル People.java 以下のようなPeopleクラスを作成する package sample; import lombok.AllArgsConstru…

【GitHub】PullやPushでパスワードを聞かれないように設定する

~/.ssh/id_rsa(秘密鍵)と~/.ssh/id_rsa.pub(公開鍵)を作る > ssh-keygen -t rsa ~/.ssh/id_rsaと~/.ssh/id_rsa.pubが生成される GitHubに登録する Settings > SSH and GPG kers > SSH keys > New SSH keyに~/.ssh/id_rsa.pubの内容を貼り付ける 接続の確認 >…

【Python】typing.NamedTuple を使う

typing.NamedTuple: 型がついているcollection.namedtupleを定義できる 書き方 from typing import NamedTuple, Optional class Table(NamedTuple): name: str alias: str default値の設定 デフォルト値の設定されていないフィールドの後ろのみ書ける from t…

【Tomcat】localhost:8080/ で 404 になる

問題 EclipseでTomcat x Springのプロジェクトを使っているときに、localhost:8080/ が 404 になってしまった 原因 EclipseでTomcatを使うときには、Serversというプロジェクトが作成され、その中に設定がある Servers/server.xmlを見てみると、以下のように…

【Vim】gruvbox8でitalicを使わないようにする

問題 カラースキーマで lifepillar/vim-gruvbox8 を使っていて、ところどころ、italic(斜体)を使っているところがある。 なんかよくわからないけど、italicの部分が見切れてしまうため、OFFにしたかった 原因 g:gruvbox_italics と g:gruvbox_italicize_stri…

【MySQL】 TBL2のレコードの値によって、TBL1のレコードをUPDATEする

以下のようなデータを用意 CREATE TABLE table1(id int not null, name varchar (15)); CREATE TABLE table2(id int not null, gender char (1)); INSERT INTO table1 VALUES (1, 'takuya'); INSERT INTO table1 VALUES (2, 'taro'); INSERT INTO table1 VAL…

【MySQL】MySQLでのBooleanの扱い

Mysqlのboolean型について調べてみた - Qiita の内容を自分の手で確かめてみた 環境 > docker-compose exec mysql mysql --version mysql Ver 8.0.16 for Linux on x86_64 (MySQL Community Server - GPL) まとめ booleanとtinyint(1)のどちらともtinyint(1)…

【PHP】LaravelでのCSRF対策

LaravelにはCSRF対策が簡単にできるような仕組みが組み込まれている。また、必ずCSRF対策をしないといけない。 そのため、formを使うときには必ず<form>内に@csrfを記述する必要がある <form action="/create" method="POST"> @csrf ... </form> @csrfは以下のように展開される(Ub7ebV8XbFCTtZyenNoFYyK9ctDzaj0</form>…

【PHP】composer globalでのインストール先

composer globalでインストールされるディレクトリは composer global config home で確認できる > ls `composer global config home` Changed current directory to /Users/user_name/.config/composer composer.json composer.lock keys.dev.pub keys.tags…

【PHP】MacにPHPとComposerをインストール

MacにPHPとComposerをインストールした PHP brew install php Composer php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" php -r "if (hash_file('sha384', 'composer-setup.php') === '48e3236262b34d30969dca3c37281b3b4bbe322…

【MySQL】CONVERT関数

CONVERT(expr, type) 例)符号付き数値に変換する CONVERT(TBL.COL1, SIGNED) 以下のように暗号化されたカラムを復号化し、数値に変換するときに使う? CONVERT(AES_DECRYPT(TBL.COL1, 'key-code'), SIGNED) 暗号化されたデータがblobのカラムに入っていて、…

【PHP】DockerでPHPの環境を作る

PHP

仕事で使えそうなPHPというものを家で勉強したいと思ったから、環境を作ることにした。 環境構築につまづきたくないから、Dockerを使うことにした Docker で PHP の開発環境を構築する方法 - UPDATE をまんま実行したらできたけど、メモしておく。 Dockerfil…

2019/03 記録

今月の出来事 fish入れようとして失敗した gorilla.vimにいった ujihisaさんにあって、すごいってなった. 実践Vimを少しずつ読もうとして、やめちゃったこと Pythonチュートリアルの本を買って、一通り読んだ 実際にアウトプットするべき。そうしないと身に…

ゴリラ.vim#2に参加した

第2回ゴリラ.vimに参加してきました! ujihisaさんのライブコーディングが自分にとってはすごい参考になりました。 まず、関数のインターフェースを書く。呼び出しを書く。そして、「関数の実装、QuickRunで実行」を繰り返す。 書いていたのはVim scriptだっ…

ゴリラ.vim #1に参加してきました

昨日、ゴリラ.vim #1に参加してきました。 https://gorillavim.connpass.com/event/119276/ ゴリラさんのvimへの熱意が伝わってきました。 ゴリラさんが、 「mattnさんみたいになります」 と宣言していたのかすごい印象的でした! 自分も、ゴリラさんみたい…

文字列からクラスのインスタンスを生成 - VB.NET

例) ProjectName.Personのインスタンスを生成したい 生成対象のクラス(ProjectName.Person) Public Class Person Public name As String Public Sub New() Me.name = "hoge" End Sub Public Sub New(ByVal name As String) Me.name = name End Sub End Class…

頭に来てもアホとは戦うな! を読んで

頭に来てもアホとは戦うな! 人間関係を思い通りにし、最高のパフォーマンスを実現する方法作者: 田村耕太郎出版社/メーカー: 朝日新聞出版発売日: 2014/07/08メディア: 単行本この商品を含むブログ (5件) を見る 読み終わったから、アウトプットする Before …

Neovim内で使うpythonをpyenvのアクティブなものにする - Neovim

g:python3_host_progに値をセットする(Python3の場合) g:python3_host_progに値をセットすると、neovim内で実行するpython3を指定できる pyenvのアクティブなPythonを使うようにするには、以下のように~/.config/nvim/.init.vimに書く let g:python3_host_pr…

prompt-toolkitで検索ツールバーの実装と、インクリメンタル検索の実装した - Python

単純な検索機能を実装する 実装手順 実装するときにつまづいたこと 次の検索結果への移動の実装方法がわからなかった filters.is_searchingがなんなのかよくわからなかった search_linksを調べてみた nとNが検索文字列入力中に打てなくなってしまった インク…

ディレクトリパスをエイリアスで登録して簡単に移動できるgotoコマンドを使ってみる

ディレクトリのパスをエイリアスとして登録して簡単に移動できるgotoっていうコマンドを見つけたから使い方のメモ github.com インストール 使い方 移動 エイリアス登録(-r) エイリアス登録を解除(-u) カレントディレクトリをスタックにpushし、goto(-p) ス…

指定フォルダ以下のファイルをコピーする - Python

指定のフォルダの下にあるファイルをコピー 再帰的に見ていく 再帰的にファイルを見るのにpathlib.Path.glob()を使い、ファイルをコピーするのにshutil.copy()を使う 例)C:\sample以下のファイルで、ファイル名に"a"が含まれているファイルをカレントディレ…

nonlocal ネストした関数から変数にアクセスする - Python

ネストした関数で、上で定義された変数を使うにはnonlocalキーワードを使う def main(): a = 1 def child(): nonlocal a a += 1 print(a) print(a) child() print(a) main() 出力結果 1 2 2 ネストした関数から、アクセスできた!! これは、メモ化のための…

【Windows】フォルダをエクスプローラで開く - Python

subprocessモジュールのcallを使う import subprocess subprocess.call(f'explorer "{開くフォルダのパス}"') 参考文献 [python] エクスプローラをファイルに開く [windows] [explorer] | CODE Q&A 問題解決 [日本語]

CURDATE() 現在日付を取得 - MYSQL

SELECT CURDATE() 結果 2018/11/06 参考文献 現在の日付・時刻を取得する - MySQL 逆引きリファレンス

os.path.expanduser関数 - Python

カレントユーザのホームディレクトリのパスを取得することができる >>> os.path.expanduser('~/src/python/') '/Users/tamago324/src/python/' 使えるときあるのかな? 参考文献 Python Tips:カレントユーザのホームディレクトリのパスを取得したい - Life …

【IFNULL関数】 AがNULLだったら、B。AがNULLじゃなかったら、Aを返す関数 - MySQL

便利なのを知ったからメモ もし、第1パラメータがNULLだったら、第2パラメータを返し、 第1パラメータがNULLじゃなかったら、第2パラメータを返してくれる便利なやつ 第1パラメータがNULLではない時 SELECT IFNULL('AAA', 'BBB') FROM DUAL 結果 AAA 第1パラ…

keybindingに渡されるeventという引数は何者!? - Python

keybindingのメソッドに渡されるeventという引数は何者? prompt_toolkit.key_binding.key_processor.KeyPressEventというやつ https://github.com/prompt-toolkit/python-prompt-toolkit/blob/master/prompt_toolkit/key_binding/key_processor.py#L412 dat…