プログラマーの調べ物

プログラマーが調べ物をするときに役に立つサイトを作ります。

雑記

Git Workflowでspikeブランチやprototypingブランチを作るということ

複数人で開発を行っているときは、他の人に開発中のソースコードを見せるのが望ましい。 まだちゃんとテストしてないけど、とりあえずコミットしたソース、というのをコミットするブランチがspikeやprototyingと呼ばれるブランチだ。 このspikeに色々とコミ…

ファイルやフォルダのアイコンはopenclipartで見つけるといいと思う。

以下のサイトのアイコンがすごくよかったのでメモ。 openclipart.org

TypeScript+AngularでHelloWorldを表示する。

index.htmlはこんな感じ。 <html> <head> <script src="//unpkg.com/core-js/client/shim.min.js"></script> <script src="https://unpkg.com/zone.js@0.6.21"></script> </head></html>

TypeScriptでクラスやメソッドを定義する。

TypeScriptでクラスを作る構文は以下のとおりです。 class Person { firstName: string; lastName: string; age: number; ssn: string; constructor(firstName: string, lastName: string, age: number, ssn: string) { this.firstName = firstName; this.la…

Visual Studio CodeでTypeScript&Angular2の開発環境を準備する

まずはシェルが必要 Mac、Linuxの場合、ターミナル Windowsの場合は、Git Bashを利用する Node.jsをインストールする 既にインストール済の場合は、以下を参考にnodeの環境をすること。 npm必須。 14.04 - How do you update npm to the latest version? - A…

GradleでTomcatプロジェクトを実行する

gradle init --type java-library で雛形を作ります。 次に、build.gradleを以下のように書きます。 /* * This build file was generated by the Gradle 'init' task. * * This generated file contains a sample Java project to get you started. * For mo…

GradleをインストールしてEclipseに取り込む

Gradleのインストール brew install gradle を実行。 コマンド build.gradleに以下を記述。 task hello << { println 'Hello Gradle World!' } で、 gradle hello を実行すると、task helloが実行される。 taskの一覧表示は gradle tasks ビルドスクリプトに…

ThymeleafでListを繰り返して表示してみる。

Thymeleafのth:eachを使って、繰り返し表示してみます。 package com.example; import java.util.ArrayList; import java.util.List; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.…

Spring BootでThymeleafを使ってViewを実装してみる。

ThymeleafはWebアプリケーションと親和性の高いテンプレートエンジンです。 テンプレートエンジンとは、雛形となるドキュメントに対し、可変データを埋め込むことで動的にドキュメントを生成する仕組みのことです。 Themeleafを使ってViewを作ってみます。 p…

Spring Bootでフォームアプリケーションを作成する

Spring Bootでフォームアプリケーションを作ります。 テキストボックスに値を入力 ↓ それをコントローラーで受け取って、モデルオブジェクトに突っ込む ↓ モデルオブジェクトの内容を別のHTMLに表示する というありがちな流れを作ってみます。 まずは、フォ…

Spring Bootでフォームを送って結果を返す

とりあえずって感じですが、formタグで囲まれた情報をJava側に送りつけて、その結果をHTMLで返すサンプルです。 まずは、HTTP GETで情報を送信するHTMLです。 account.html <html xmlns:th="http://www.thymeleaf.org"> <head> <meta charset="utf-8" /> <title>SAMPLE</title> </head> <body> <form action="/result"> <fieldset> <input type="text" name="name" /> </fieldset></form></body></html>

とりあえずExpressを動かしてみる。

Node.jsのフレームワーク「Express」を動かしてみます。 package.jsonには以下のように記述します。 { "name" : "MEAN", "version" : "0.0.1", "dependencies" : { "express" : "latest", "glup" : "latest" } } で、server.jsを書きます。 var express = re…

NPMでGlobalモードでインストールしたパッケージはどこにインストールされるのか?

NPMには2つのインストールモードがあります。 ローカルモードとグローバルモードです。 Unixベースのシステムの場合、/usr/local/lib/node_modules/にインストールされます。 Windowsの場合、C:¥Users¥%USERNAME%¥AppData¥Roaming¥npm¥node_modules にイン…

Macで8080番ポートでLISTENしているプロセスをkillするコマンド

以下のコマンドで、8080番ポートでLISTENしているプロセスをkillすることができます。 $ kill $(lsof -t -i:8080) http://stackoverflow.com/questions/11583562/how-to-kill-a-process-running-on-particular-port-in-linux/11596144

Spring Bootで画面遷移型アプリケーションを作成する

Spring Bootを使えば画面遷移型のアプリケーションも簡単に作ることができます。 テンプレートエンジンとして、次のライブラリがサポートされています。 Thymeleaf FreeMarker Groovy templates Velocity Mustache JSPの利用はさまざまな制約があるため、推…

Spring BootでRESTfull Webサービスを作成する

RESTful Web サービス Spring Bootでは簡単にRESTful Webサービスを作成することができます。 RESTとは「REpresentational State Transfer」の略で、クライアントとサーバー間でデータをやりとりするアプリケーションを構築するためのアーキテクチャスタイル…

Spring Bootで作成したjarを8080以外のポートを指定して起動する

前回の記事ではSpring Bootで実行可能jarを作成する手順を紹介しました。 次は、作成したjarを起動させてみましょう。 jarはポータビリティが高いため、別環境でも動かせます。 その際、8080ポートだとJBossやtomcatなどと競合することがあるでしょう。 それ…

Spring Bootで実行可能jarを作成する

実行可能jarを作成する Spring Bootでは実行可能なjarを作成できます。 これはwarファイルをWebアプリケーションサーバにデプロイするといった面倒な作業を省き、java -jarでWebアプリが起動できることを意味します。 実行可能jarの作り方は簡単です。 以下…

Spring Bootを使い始めるためのチュートリアル

Spring Bootは2013年に開発が始まり、2014年4月にバージョン1.0がリリースされました。 Spring Bootを使えば最初からさまざまな機能を利用することができます。 アプリケーションサーバにデプロイするという面倒な作業を省き、mainメソッドを実行するだけでW…

Web開発環境を準備する

必要なツール Node.js Gulp Gulpがやってくれること GulpはSassやJSの圧縮などの作業を行ってくれる「タスクランナー」と呼ばれるツールのことです。 タスクランナーにはGulpの他に、GruntやBroccoliなどがあります。 Gulpがやってくれる作業は以下のような…

Spring BootでBasic認証を導入するpom.xml定義

Spring Bootで Basic認証を導入するのは非常に簡単でした。 pom.xmlに以下の定義を追加します。 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency> なんとこれだけで、basic認証が実現できます。 パスワードは起動時のログに設定されますが、明示的…

Spring Bootでデータベースにアクセスしてみる。

Spring BootではSpring JDBCが簡単に使えます。 DBアクセスが必要なアプリケーションも非常に簡単に作ることができます。 正直、拍子抜けするくらいに。 pom.xmlに以下を追記します。 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <dependency> <groupId>com.h2database</groupId> <artifactId></artifactid></dependency>…

Spring BootでテンプレートエンジンThymeleafを使って画面表示

テンプレートエンジンとしてThymeleafを使ってみます。 まず、pom.xmlに以下のように依存性を追加します。 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> 次に、Controllerを作成します。 package com.example; import org.springframework.ste…

全てのJSPでタグライブラリを自動設定する

JSPのタグライブラリをいちいち全てのJSPファイルに書き込むのが面倒な人もいると思います。 全部に書く場合は書き漏れも心配です。 そのような人はweb.xmlに定義を追加しましょう。 <jsp-config> <jsp-property-group> <url-pattern>*.jsp</url-pattern> <page-encoding>UTF-8</page-encoding> <include-prelude>/WEB-INF/include.jsp</include-prelude> </jsp-property-group> </jsp-config> この定義を追加して、/…

JSPのページエンコーディングを設定して文字化けを解消する

こんな感じで、文字化けが発生してしまった。 最初はこんな感じで書いていました。 これを変更していきます。」 <html> <body> <h2>Hello World!</h2> <ul> <li><a href="<c:url value='/echo' />">エコーアプリケーションへ</a></li> </ul> </body> </html> 上のJSPを以下のように変更しました。 <%@page pageEncoding="UTF-8"%> <html lang="ja"> <head> <meta charset="utf-8"> <title>Hello JSP!</title>…</meta></head></html>

MacにDockerをインストールする

HomebrewでDockerをインストールします。 インストールコマンド 以下のコマンドでDockerをインストールします。 $ brew cask install virtualbox $ brew install docker $ brew install docker-machine $ brew cask install docker-toolbox インストールの確…

MEANアプリケーションを構築する準備をする。

MongoDBをインストールする こちらの記事を参考にして、Homebrewでインストールします。 http://qiita.com/hajimeni/items/3c93fd981e92f66a20ce HomebrewでMongoDBをインストールするコマンド。 brew install mongodb MongoDBを起動します。 mongod --confi…

Sassを活用する以前の基礎知識

Sassのインポート機能 Sassでは、@importを使うことで、他のファイルを読み込むことができます。 importは読み込み元のファイルのある場所から読み込みたいファイルをたどれるようにしなければなりません。 たとえば、main.scssにcomponents/common/_header.…

Mac上HTML/CSSのコーディング環境を構築する

コンパイルとは、SassをCSSに変換することです。 Sassのコンパイルには、ソフトウェアを使ってGUIで実行する方法と、CUIで行う方法がありますが、一般的にはCUIを使います。 Node.jsをインストールする Homebrewを使ってインストールしましょう。 brew insta…

JBoss Application Server5をインストールしてみる。

brew install wgetでwgetコマンドをインストールします。 wgetでJBoss Application Server5をダウンロードします。 wget https://sourceforge.net/projects/jboss/files/JBoss/JBoss-5.1.0.GA/jboss-5.1.0.GA-jdk6.zip/download downloadという名前でwgetさ…