かずきのBlog@hatena

すきな言語は C# + XAML の組み合わせ。Azure Functions も好き。最近は Go 言語勉強中。日本マイクロソフトで働いていますが、ここに書いていることは個人的なメモなので会社の公式見解ではありません。

2015-07-01から1ヶ月間の記事一覧

Blend for Visual Studio 2015の小さな新機能 VSMのSetter対応

Windows 10 TPのUAPのVisualStateManagerの新しい機能 - かずきのBlog@hatenaokazuki.hatenablog.com VisualStateManagerで値をさくっと変えるときはStoryboardじゃなくてSetterで可能になりました。便利!これで手書きXAMLがはかどるというのもありますが、…

Blend for Visual Studio 2015の小さな新機能 RelativePanel対応

Windows 10 TPのUAPのRelativePanel - かずきのBlog@hatenaokazuki.hatenablog.com 新しいレイアウト用のPanelとしてRelativePanelが登場しました。これは、プレビュー段階では手書きこそ至高!デザイナなんて甘え!そしてインテリセンスも助けてくれないと…

Blend for Visual Studio 2015の小さな新機能 StateTrigger対応

Windows 10 TPのUAPのVisualStateManagerの新しい機能 - かずきのBlog@hatenaokazuki.hatenablog.com 上記記事で紹介してるAdaptiveTriggerですがPreview段階では手書き!手書きXAMLこそ至高という状態でした。ですが、正式版のBlend for Visual Studioを入…

#devcussion でがっこうぐらしを読んだ

正確にはdevcussionのあとのごはんタイムに読みました。 アニメしてるところなのでネタバレは置いといてせんせー…。 私は、ツインテールの子(5巻まで読んでみんなの名前を覚えてない)が好きです。一番強いよね!

Spring Bootで未入力項目をNullにする(バリデーション時に未入力のときはスルーするようにする)

Spring Bootのバリデーションは属性つけるだけで簡単にできます。 5.5. 入力チェック — TERASOLUNA Global Framework Development Guideline 1.0.0.publicreview documentation 上記のページの最後に書いてある内容なのですが、このアノテーションはnull値は…

UWPで電話だけにアプリバーを出したい

UWP

【Win10 Pre】 UWP アプリで Windows Phone 向けだけメニューを画面下部に表示したい - しっぽを追いかけてmatatabi-ux.hateblo.jp に乗っかりネタです。その上、VS2015RTMを入れちゃったので29日までWin10SDK入れれないので妄想で書いてます(重要) 別画面…

ReactiveProperty v2.2.2をリリースしました

FilteredReadOnlyObservableCollectionでインデックスの管理にバグがあったため修正しました。 NuGetからインストールできます。 ReactivePropertywww.nuget.org ついでに更新したところ NuGetのパッケージの記述内容を更新しています。 .NET Framework 4.6…

Spring BootでToDoアプリを作ってみた

こんな感じで作ってみた。 画面はしょっぱいですが、TODOアプリです。 pomの準備 とりあえずmavenでプロジェクトを作成したら、pomを編集します。お約束ですね。最近みないで打てるようになってきました。

Spring Bootでファイルダウンロードをする

Spring Bootでファイルのダウンロードを試してみました。HttpServletResponseを引数に受け取ってServlet時代と同じように書き込みをする方法もあるみたいなのですが、今回はResponseEntityというクラスを使ってみました。 こいつを使ってContent-Typeなんか…

Spring BootのThymeleafのテンプレート内でJavaScriptを書く

Thymeleafのテンプレート内でJavaScriptを書くときは以下のように書きます。おまじないだと思って <scrpit type="text/javascript"> /**/ </script> JavaScriptの<や>などがXMLのタグの開始なんかとして見られないためですね。

Spring Boot小ネタ ModelAttributeで名前を指定しなかったときのデフォルトの名前

@ModelAttribute("hoge") FooForm a みたいにしたらhogeという名前でThymeleafからアクセスできるようになります。このとき @ModelAttribute FooForm a のように名前を省略することもできます。そのときはクラス名の最初を小文字にした名前でアクセスできま…

Spring Bootでファイルをアップロードする

Spring BootでファイルアップロードをするにはMultipartFileインターフェースを受け取るようにするといいみたいです。 こんなクラスを定義して package okazuki.fileupload.simple.controllers; import org.springframework.web.multipart.MultipartFile; pu…

Spring Bootでファイルアップロード/ダウンロードのことが書いてあるページのメモ

Getting Started · Uploading Files Spring boot service to download a file - Stack Overflow あとで、このページをもとに試してみて記事にしよう。

Spring Bootでコントローラの単体テスト

Spring Bootは単体テスト機能もついてます。 35. Testing Spring Bootでコントローラの単体テストをするには、まず単体テストのクラスをアノテーションでいろいろ飾ってやる必要があります。 package okazuki.validationEdu; import org.junit.After; import…

Spring BootでバリデーションのメッセージをValidationMessages.properties以外にする

Spring Bootはデフォルトで検証エラーのメッセージをValidationMessages.propertiesから取得します。これを変えたい!って思ったら以下のようにします。 手順としては LocalValidatorFactoryBeanを作成する messageSourceを任意のものにする WebMvcAutoConfi…

Spring Bootで入力値の検証(バリデーション)の順番を制御する

Spring Bootで入力値の検証 - かずきのBlog@hatenaokazuki.hatenablog.com 基本的に上の記事の通りでいいんですが、複数の属性を同じプロパティにつけた場合に、一気にバリデーションが実行されてエラーメッセージがうざいことになってしまいます。例えば以…

Spring Bootを使って実行時にロケールを切り替える

実行時に相手に言語を選択させて表示言語を切り替えるっていうことがあると思います。 Spring Bootでもそういった機能があります。 まず、Appクラスで以下のBeanを公開します。 SessionLocaleResolver LocaleChangeInterceptor そしてWebMvcAutoCOnfiguratio…

MessageSourceのもとになるプロパティファイルを複数設定する方法

Spring Bootのメッセージはデフォルトでmessages.propertiesから取得されます。Thymeleafからは <span th:text="#{hogehoge}">XXX</span> のように取得します。 このmessages.propertiesが気に入らなければapplication.propertiesでカスタマイズすることができます。 以下の設定項目を使います。…

Universal Windows Platform appでタイトルバーに戻るボタンを出す方法 その2

Universal Windows Platform appでタイトルバーに戻るボタンを出す方法 - かずきのBlog@hatenaokazuki.hatenablog.com 先日、UWP appのタイトルバーに戻るボタンを出す方法を書きましたが、ストアのアプリを見てると戻れないときは戻るボタン出さないように…

Universal Windows Platform appでタイトルバーに戻るボタンを出す方法

UWP appで一部アプリにタイトルバーに戻るボタンが出てるものがあります。 例えばストアのアプリとかそうなってます。 これをやるには、SystemNavigationManagerクラスを使います。 Appクラスの起動処理のどこかにこの1行を足します。 SystemNavigationMana…

Prism for UWP(仮)を見てみた

Prismの中でうごめいているUniversal Windows Platform app対応版Prismについてちょっとリポジトリをのぞいてみました。基本的に、Prism for Windows Runtimeの流れを汲む感じで、使い方に差は無さそうです。 大きな変更点 一番大きな変更点は、MvvmAppBase…

Spring Bootをparentをセットせずに使いたい

Spring Bootってpom.xmlのparentを設定するんですが既存のプロジェクトだと既にparentって使われてたりしたりするケースもあると思います。そんなときどうするか? ということで、以下のpom.xmlでいけました。

Spring BootでigGridを使ってハイパーリンクの列を作りたい

ハイパーリンクの列を作りたい!ということもあります。そんな時には、igGridの列の定義にunbound: true, template: "ここにリンクのHTML"という感じの追加してやります。 igGridのサンプル的には以下のようにやります。 列テンプレート サンプル - Grid コ…

Spring BootでInfragistics IgniteUIのLayoutManagerを使う

IgniteUIにはLayoutManagerなる機能がついています。こいつを使うとJavaのSwingのBorderLayoutみたいなレイアウトが簡単にできるようになっています。因みに、Bootstrapみたいなグリッドレイアウトもサポートしています。 ここでは、お試しとしてBorderLayou…

Spring BootでIgniteUIを使ってみる その2

Spring BootでIgniteUIを使ってみる - かずきのBlog@hatenaokazuki.hatenablog.com 上記記事では、REST APIを呼び出してigGridにバインドしてました。今回はJSONをHTMLに埋め込む形でやってみようと思います。 こんな感じにModelに適当にListを突っ込みます…

Spring BootでIgniteUIを使ってみる

先ほどJSONを返すサービスの作り方がわかったのでIgniteUIのGridにバインドしてみました。 Spring BootでJSONを返すAPIを作る - かずきのBlog@hatenaokazuki.hatenablog.com IgniteUIのLoaderを使って必要なファイルは読み込んでもらうようにしてもらってま…

Spring BootでJSONを返すAPIを作る

超簡単でした。@RestControllerで戻り値がオブジェクトでOKっぽいです。 package okazuki.igniteui.controllers; import java.util.ArrayList; import java.util.List; import org.springframework.web.bind.annotation.RequestMapping; import org.springfr…

Spring BootでapplicationContext.xmlのような自前の構成ファイルを読み込ませるには

src/main/resourcesに適当な名前(ここではapplicationContext.xml)でSpringの構成ファイルを作成します。そして、Appクラスに以下のようにImportResourceアノテーションをつければOKです。 @SpringBootApplication @ImportResource("classpath:application…

おでコン協賛企業がついてて凄いことになってます

Windows Phoneの熱狂的なファンのおでさんが個人ではじめたおでコンですが、しばらく目をはなしてたら企業の協賛がついてました。 Windows Phone非公式アプリコンテスト - おでコンodecon.azurewebsites.net これは、参加する人景品に期待ができるのでは?と…

Spring BootでSessionを扱う(SessionAttribute版)

SessionAttributeを使うと同じコントローラ内でオブジェクトを持ちまわることが出来ます。 詳細は全部こっちに書いてあります。 5.8. セッション管理 — TERASOLUNA Server Framework for Java (5.x) Development Guideline 5.0.0.RELEASE documentation 試し…