技術向上

プログラミングの学び、気になるテクノロジーやビジネストレンドを発信

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

MySQL - invalid memory address or nil pointer dereference【Go】

複数の関数で、DBコネクションを使い回す場合には、注意が必要です。 dbだけでなく、sql.Open()の返り値に含まれるerrもpackageグローバルに定義して、 sql.Open()の返り値のアサインは「:=」ではなく、「=」を使用します。 var db *sql.DB var err error //…

MySQL【Go】

インストール sql-Driverごとにpackageをインストールする必要があります。 $ go get -u github.com/go-sql-driver/mysql import database/sqlは、コード中で使用するものの、mysqlについてはプログラムの起動処理には使われますが、コード中では使用しない…

Linuxコマンド

著者が初めて使用する度に書き加えていくもので、網羅しているわけではありません。 ファイル 作成 $ touch mymemo.txt 編集 $ nano mymemo.txt // nanoはviより使いやすい 削除 $ rm mymemo.txt 移動 $ mv mymemo.txt Memos // ファイル名を変更しない場合 …

コマンド【Go】

著者が初めて使用する度に書き加えていくもので、網羅しているわけではありません。 単一ファイルの実行 $ go run main.go package mainが複数ファイルに分かれている場合の実行 $ go build $ ./<exe-name > // デフォルトのexe名は、project名 もしくは $ go build -o </exe-name>…

nano(使いやすいCUIエディタ)

nanoは、CUI(Character User Interface、コマンドラインなど。↔︎ GUI)環境における、使いやすいエディタです。 標準搭載のvi等に比べ、覚えるキー操作も少なく、簡単に扱うことができます。 ファイルの作成 $ nano または $ nano mymemo.txt // mymemo.txt…

Sessionの期限更新と清掃【Go】

Go

処理を実行するごとにsessionの有効期限を更新し、ログアウト時に、他のユーザーに関するsession情報も含めて、 一定時間を超えたsessionを削除する機能を用意します。 過去の記事を基にしています。 Session【Go】 - 技術向上 bcryptでパスワードをhash化【…