際際滷
Submit Search
干温厩温て?1から10まて?慕いた三(壊温稼庄岳庄噛艶糸)
?
55 likes
?
12,369 views
Tokuhiro Matsuno
Follow
JJUG CCC 2014 Fall
Read less
Read more
1 of 164
Download now
Download to read offline
More Related Content
干温厩温て?1から10まて?慕いた三(壊温稼庄岳庄噛艶糸)
1.
Javaで1から10まで いた tokuhirom
2014 JJUG FALL
2.
または?Java でウェブ 塁が_kした
tokuhirom 2014 JJUG FALL
3.
云セッションの坪否は 繁の盾であり?侭 奉する睫紊箸ovS
です?
4.
徭芙サ`ビスの ウェブエンジニア
5.
Perl を嶄伉に Ruby,Python,PHP,C,C++
など
6.
瀏鉾鉾鉾鉾鉾鉾烹 勝〕使擦Java Y^Y^Y^Y^Y^Y
7.
なぜ?
8.
けるエ ンジニア が謹い
9.
冱Z碧が 芦協している
10.
堀い
11.
參和待?
12.
で?どういう 撹でやるの?
13.
念戻訳周
14.
徭芙サ`ビスの _k\喘
15.
LL いていた繁でも きやすい撹
16.
なにはダメか?
17.
壅軟咾砲瓩辰舛rg かかる?
18.
h廠Bが 广しく寄笋任△?
19.
えることが謹い
20.
どうするか?
21.
どういうh廠で_kす るか?
22.
Java のバ`ジョン
23.
Java 8
24.
lambda Stream API
interface default methods
25.
LL しかやってない繁 にもとっつきやすい?
26.
しがらみがないなら匯桑 あたらしいやつ聞いたい
27.
Java8 + lombok
28.
Java8 + lombok
なら LL と d弼ない
29.
もはやJavaダサ いと房ってる圭 がダサい
30.
フレ`ムワ`ク
31.
ライブラリ僉協児
32.
Web Application システム撹
Java Web Application Framework O/R Mapper Router Template Engine MySQL HTTP Client HTTP Server Apache2 JSON Serialiser
33.
X楚
34.
互堀
35.
酒g
36.
メンテナンスが唯峭し た栽に恷徭蛍たち でメンテナンスできる
こと
37.
または?メンテナンス 唯峭したらlかが fork
する
38.
で?
39.
Java EE ?
40.
エンタ`プライズ_kの栽には掲械にマッ チすると房うのですが?厘?のニ`ズにマッ チしていなかったというだけであり?
干温厩温掘掘に諒籾があるわけではありません?
41.
}が軟きた rにIでき ない
42.
Java EE 7
鬉 晩云Z云がない
43.
エンタ`プライズ_kの栽には掲械にマッ チすると房うのですが?厘?のニ`ズにマッ チしていなかったというだけであり?
干温厩温掘掘に諒籾があるわけではありません?
44.
Dropwizard
45.
fat-jar + JAX-RS
+ embed-jetty
46.
これならW たちにも聞 えそうだ!
47.
Dropwizard Jersey(JAX-RS) Hibernate
Embedded Jetty Freemarker
48.
これらをYぶ Glue が
Dropwizard
49.
Dropwizard は くない
50.
ちょっとしたつなぎを やってくれる?
51.
くないが? この Glue
いる?
52.
Guava の Optional
を Jersey で鞭け函れる Hack
53.
Java 8 だと音勣
54.
噫柴なことをする??
55.
カスタマイズしようと すると吭翌と中宜
56.
Dropwizard の Glue
にあたる何蛍は 徭蛍たちでg廾するこ とにした
57.
コ`ドジェネレ`タ` でg廾すればいいよね~
58.
Oreore-Generator Jersey(JAX-RS) Hibernate
Embedded Jetty Freemarker
59.
テンプレ`トエンジン
60.
勣周
61.
互堀
62.
侏ベ`スの 徭咼┘好羽`プ
63.
XSS 貨
64.
[% var %]
String なら徭咼┘好羽`プ
65.
エスケ`プしたくなければ new EscapedString(str)
66.
勣周を困燭垢發里 ほとんどない?
67.
恬るか!
68.
2嶽窃恬った?
69.
nanotmpl
70.
托めzみ干温厩温
71.
JSP + 徭咼┘好羽`プ
+ g匯佩崙s
72.
@ String name
こんにちは!<?= name ?> さ ん!
73.
Java コ`ドにQ コンパイル
g佩
74.
Java で VM
をg廾 VM 喘コ`ドに テンプレ`トをQ
75.
[% FOR x
IN items %] X: [% x %] [% END %]
76.
Perl で聞っていた Xslate
というテンプ レ`トエンジンと揖じ 隈を駻
77.
ボツ?
78.
なぜ?
79.
テンプレ`ト エンジンの_ kは中宜
80.
_kコストが 栽わない
81.
ベンチマ`クしたY惚? Java のテンプレ`ト
エンジン?だいたい堀 い?
82.
徭咼┘好羽`プは劣ほ ど嶷勣ではない?
83.
CSP (content security
policy)
84.
JS でHTML Bするケ`スが
えた
85.
じゃあ?mustache 聞う か??
86.
音得!
87.
JS のテンプ レ`トとかぶり
がち??
88.
?FreeMarker ○ 埴にQめた!
? Mustache ? etc.
89.
Oreore-Generator Jersey(JAX-RS) Hibernate
Embedded Jetty Freemarker
90.
O/R Mapper
91.
Hibernate?
92.
L1 キャッシュ俳りた いのに俳れなくて伎孵
93.
もう干禽京遺岷俊で´´
94.
それはさすがにつらい?
95.
シンプルな O/R Mapper
を慕いた?
96.
JOIN とかは サポ`トしない?
97.
クエリビルダで JOIN伏撹すると }盾Qが是yになる
98.
}jなSQLを伏撹できな いように崙sを紗える
99.
繁は崙sがあっ た圭がきやす く湖じる?
100.
あたたかみのある 返き SQL
101.
@Table("member") @Data //
lombok @EqualsAndHashCode(callSuper = false) public MemberRow extends Row<MemberRow> { @PrimaryKey private long id; @Column private String name; }
102.
Optional<MemberRow> member =
db.single(MemberRow.class) .where("id=?", 1) .execute();
103.
db.insert(MemberRow.class) .value("name", "John")
.execute();
104.
Optional を旋喘 したわかりやすい
インタ`フェ`ス
105.
Oreore-Generator Jersey(JAX-RS) TinyORM
Embedded Jetty Freemarker
106.
そんなある晩
107.
Jersey で_kを Aけていると??
108.
つのる音
109.
アノテ`ショ ンが庇L
110.
アノテ`ションベ`スな POJO にこだわりすぎている?
111.
アノテ`ション で咾鰆酉し ているために
恬を弖いづらい
112.
テンプレ`トや JSONのレンダリン グがコントロ`ラ
の翌で佩われる
113.
Java にTれて ない繁には
ちょっとつらい
114.
シンプルな MVC フレ`ム
ワ`クを恬撹
115.
avans
116.
サ`ブレットAPIの院 いラッパ`
117.
もともと聞われていた Sledge/Amon2 とい
う Perl のフレ`ムワ` クを歌深に_k
118.
卞佩しやす くなった?
119.
コントロ`ラ は@覚ベ`ス
120.
public class HelloWorld
extends ControllerBase { @GET("/") public WebResponse hello() { return this.renderJSON("Hello, world!"); } }
121.
コントロ`ラ 軟泣でデバッガ で弖いやすい
122.
アノテ` ションに よる
123.
Y蕉アノ テ`ショ ンかよ??
124.
@BeforeDispatchTrigger public void
preprocess() { // ´ }
125.
Java 8 interface
default method によるMix-in
126.
Jackson ControllerBase Session
Freemarker
127.
Oreore-Generator avans TinyORM
Embedded Jetty Freemarker
128.
塰喘貧の脅栽により??
129.
Oreore-Generator avans TinyORM
Tomcat 7 Freemarker
130.
Oreore-Generator avans TinyORM
Tomcat 7 Freemarker
131.
rgがあれば? テストの
132.
モデルのテスト
133.
DB は MySQL
g縞に蝕kサ`バ`につなぐ
134.
ストレ`ジとの やりとりがサ` バ`サイドの故?
135.
MySQL をデ`タセン タ`の
dev サ`バ`に おいてやる?
136.
コントロ`ラのテスト
137.
JSON API の岬^
138.
テストし やすい?
139.
コストは 芦い?
140.
ブラウザで_Jとかし たくないでござる?
141.
モッキング は どうするか?
142.
Java レベルで の
モッキングは やらない
143.
サ`ビスはHTTP JSON API
でつなぐ
144.
(Jetty|Tomcat) でモッ ク
httpd を羨ち貧げて そこにアクセスする?
145.
@BeforeClass で tomcat-embed
を軟強
146.
Tomcat tomcat =
new Tomcat(); tomcat.setPort(0); org.apache.catalina.Context webContext = tomcat.addWebapp("/", new File("src/main/ webapp").getAbsolutePath()); webContext.getServletContext().setAttribute(Glob als.ALT_DD_ATTR, "src/main/webapp/WEB-INF/ web.xml"); tomcat.start(); int port = tomcat.getConnector().getLocalPort(); String url = "http://127.0.0.1:" + port; // url をつかってなにかI尖する
147.
Apache HttpClient でアクセス
148.
テストh廠は 吭翌と酒g?
149.
參貧です? ご賠ありがとうございまし た?(2指朕)
150.
まとめ
151.
Java 8 r旗は
ライブラリを くチャンス
152.
lambda
153.
Java 8 Date
and Time API
154.
Optional は屡贋のものの
嫖では佃しい
155.
屡贋のライブラリは Java 7
鬉鯒个譴 いために Java 8 を 頼畠に伏かし俳れな いケ`スも
156.
Maven Central に
ライブラリをアッ プロ`ドするチャ ンスですよ!
158.
參貧です? ご賠ありがとうございまし た?
159.
Maven central に
アップロ`ドするのは yしいのでは?
160.
Maven central 伽くないよ
161.
干鴛檎粥にサインアップ
162.
JIRA でチケットを k佩する
163.
mvn release:prepare release:perform
164.
參貧です? ご賠ありがとうございまし た?(3指朕)
Download