Submit Search
Upload
Java ee6 with scala
•
0 likes
•
1,049 views
Satoshi Kubo
Follow
#wlstudy #glassfishjp
Read less
Read more
Technology
Report
Share
Report
Share
1 of 15
Download now
Download to read offline
Recommended
(続) Effective SQLite for Android
(続) Effective SQLite for Android
Shinobu Okano
2011年2月9日第130回FxUG勉強会@東京第一打者空振り三振
2011年2月9日第130回FxUG勉強会@東京第一打者空振り三振
Sadao Tokuyama
jQuery勉強会#3
jQuery勉強会#3
Ryo Maruyama
Google Dev Fest 2010 Japan LT: OpenSocial JavaScript API is good, Lightweight...
Google Dev Fest 2010 Japan LT: OpenSocial JavaScript API is good, Lightweight...
Nobuhiro Nakajima
[JavaDo] JAX-RS ハンズオン 第2部
[JavaDo] JAX-RS ハンズオン 第2部
haruki ueno
テストって何がしたいんですか?
テストって何がしたいんですか?
Satoshi Kubo
Advent calendarを作ってみた
Advent calendarを作ってみた
Satoshi Kubo
泥沼の中のパフォーマンスチューニング #JJUG
泥沼の中のパフォーマンスチューニング #JJUG
Satoshi Kubo
Recommended
(続) Effective SQLite for Android
(続) Effective SQLite for Android
Shinobu Okano
2011年2月9日第130回FxUG勉強会@東京第一打者空振り三振
2011年2月9日第130回FxUG勉強会@東京第一打者空振り三振
Sadao Tokuyama
jQuery勉強会#3
jQuery勉強会#3
Ryo Maruyama
Google Dev Fest 2010 Japan LT: OpenSocial JavaScript API is good, Lightweight...
Google Dev Fest 2010 Japan LT: OpenSocial JavaScript API is good, Lightweight...
Nobuhiro Nakajima
[JavaDo] JAX-RS ハンズオン 第2部
[JavaDo] JAX-RS ハンズオン 第2部
haruki ueno
テストって何がしたいんですか?
テストって何がしたいんですか?
Satoshi Kubo
Advent calendarを作ってみた
Advent calendarを作ってみた
Satoshi Kubo
泥沼の中のパフォーマンスチューニング #JJUG
泥沼の中のパフォーマンスチューニング #JJUG
Satoshi Kubo
Heroku java
Heroku java
Kazuyuki Kawamura
Gradle布教活動
Gradle布教活動
Nemoto Yusuke
Springでdao 20070413
Springでdao 20070413
Funato Takashi
Seasarプロジェクト徹底攻略
Seasarプロジェクト徹底攻略
takezoe
pi-15. カプセル化, MVCモデル, オブジェクトのマッピング
pi-15. カプセル化, MVCモデル, オブジェクトのマッピング
kunihikokaneko1
Alfresco勉強会20120829: やさしいShareダッシュレットの作り方
Alfresco勉強会20120829: やさしいShareダッシュレットの作り方
linzhixing
Scala.jsはじめました?
Scala.jsはじめました?
K Kinzal
Introduction to JShell #JavaDayTokyo #jdt_jshell
Introduction to JShell #JavaDayTokyo #jdt_jshell
bitter_fox
TDC20111031_Groovy_Geb
TDC20111031_Groovy_Geb
Nobuhiro Sue
Best practice laravel
Best practice laravel
Risa Ohnishi
scala-kaigi1-sbt
scala-kaigi1-sbt
Kenji Yoshida
Rails3.1rc4を試してみた
Rails3.1rc4を試してみた
Takahiro Hidaka
Google App Engine for Java
Google App Engine for Java
Takuya Tsuchida
イマドキの現場で使えるJavaライブラリ事情
イマドキの現場で使えるJavaライブラリ事情
takezoe
React Native GUIDE
React Native GUIDE
dcubeio
fanscala1 3 sbt
fanscala1 3 sbt
Toshiki Shinozaki
Scala EE 7 Essentials
Scala EE 7 Essentials
tnoda
Play framework 2.0のちょっとした紹介
Play framework 2.0のちょっとした紹介
Ryo RKTM
ScalaMatsuri 2016
ScalaMatsuri 2016
Yoshitaka Fujii
Let's build a simple app with .net 6 asp.net core web api, react, and elasti...
Let's build a simple app with .net 6 asp.net core web api, react, and elasti...
Shotaro Suzuki
Jakarta CDI 4.0
Jakarta CDI 4.0
Satoshi Kubo
Jakarta EE/MicroProfileの世界をひろげるRed Hat Application Fundations
Jakarta EE/MicroProfileの世界をひろげるRed Hat Application Fundations
Satoshi Kubo
More Related Content
Similar to Java ee6 with scala
Heroku java
Heroku java
Kazuyuki Kawamura
Gradle布教活動
Gradle布教活動
Nemoto Yusuke
Springでdao 20070413
Springでdao 20070413
Funato Takashi
Seasarプロジェクト徹底攻略
Seasarプロジェクト徹底攻略
takezoe
pi-15. カプセル化, MVCモデル, オブジェクトのマッピング
pi-15. カプセル化, MVCモデル, オブジェクトのマッピング
kunihikokaneko1
Alfresco勉強会20120829: やさしいShareダッシュレットの作り方
Alfresco勉強会20120829: やさしいShareダッシュレットの作り方
linzhixing
Scala.jsはじめました?
Scala.jsはじめました?
K Kinzal
Introduction to JShell #JavaDayTokyo #jdt_jshell
Introduction to JShell #JavaDayTokyo #jdt_jshell
bitter_fox
TDC20111031_Groovy_Geb
TDC20111031_Groovy_Geb
Nobuhiro Sue
Best practice laravel
Best practice laravel
Risa Ohnishi
scala-kaigi1-sbt
scala-kaigi1-sbt
Kenji Yoshida
Rails3.1rc4を試してみた
Rails3.1rc4を試してみた
Takahiro Hidaka
Google App Engine for Java
Google App Engine for Java
Takuya Tsuchida
イマドキの現場で使えるJavaライブラリ事情
イマドキの現場で使えるJavaライブラリ事情
takezoe
React Native GUIDE
React Native GUIDE
dcubeio
fanscala1 3 sbt
fanscala1 3 sbt
Toshiki Shinozaki
Scala EE 7 Essentials
Scala EE 7 Essentials
tnoda
Play framework 2.0のちょっとした紹介
Play framework 2.0のちょっとした紹介
Ryo RKTM
ScalaMatsuri 2016
ScalaMatsuri 2016
Yoshitaka Fujii
Let's build a simple app with .net 6 asp.net core web api, react, and elasti...
Let's build a simple app with .net 6 asp.net core web api, react, and elasti...
Shotaro Suzuki
Similar to Java ee6 with scala
(20)
Heroku java
Heroku java
Gradle布教活動
Gradle布教活動
Springでdao 20070413
Springでdao 20070413
Seasarプロジェクト徹底攻略
Seasarプロジェクト徹底攻略
pi-15. カプセル化, MVCモデル, オブジェクトのマッピング
pi-15. カプセル化, MVCモデル, オブジェクトのマッピング
Alfresco勉強会20120829: やさしいShareダッシュレットの作り方
Alfresco勉強会20120829: やさしいShareダッシュレットの作り方
Scala.jsはじめました?
Scala.jsはじめました?
Introduction to JShell #JavaDayTokyo #jdt_jshell
Introduction to JShell #JavaDayTokyo #jdt_jshell
TDC20111031_Groovy_Geb
TDC20111031_Groovy_Geb
Best practice laravel
Best practice laravel
scala-kaigi1-sbt
scala-kaigi1-sbt
Rails3.1rc4を試してみた
Rails3.1rc4を試してみた
Google App Engine for Java
Google App Engine for Java
イマドキの現場で使えるJavaライブラリ事情
イマドキの現場で使えるJavaライブラリ事情
React Native GUIDE
React Native GUIDE
fanscala1 3 sbt
fanscala1 3 sbt
Scala EE 7 Essentials
Scala EE 7 Essentials
Play framework 2.0のちょっとした紹介
Play framework 2.0のちょっとした紹介
ScalaMatsuri 2016
ScalaMatsuri 2016
Let's build a simple app with .net 6 asp.net core web api, react, and elasti...
Let's build a simple app with .net 6 asp.net core web api, react, and elasti...
More from Satoshi Kubo
Jakarta CDI 4.0
Jakarta CDI 4.0
Satoshi Kubo
Jakarta EE/MicroProfileの世界をひろげるRed Hat Application Fundations
Jakarta EE/MicroProfileの世界をひろげるRed Hat Application Fundations
Satoshi Kubo
2022年7月JJUGナイトセミナー「Jakarta EE特集」MicroProfile あらためてのおさらい
2022年7月JJUGナイトセミナー「Jakarta EE特集」MicroProfile あらためてのおさらい
Satoshi Kubo
今のJava
今のJava
Satoshi Kubo
できる!Pmdカスタマイズ
できる!Pmdカスタマイズ
Satoshi Kubo
Javaの速度比較
Javaの速度比較
Satoshi Kubo
Java EEの話(仮)
Java EEの話(仮)
Satoshi Kubo
Strutsから移行する人のためのjsf基礎
Strutsから移行する人のためのjsf基礎
Satoshi Kubo
Junitを使ったjavaのテスト入門
Junitを使ったjavaのテスト入門
Satoshi Kubo
Glass fishで作ったアプリをweblogicに移植してみた
Glass fishで作ったアプリをweblogicに移植してみた
Satoshi Kubo
金魚本に載ってないJpqlの話 #glassfishjp
金魚本に載ってないJpqlの話 #glassfishjp
Satoshi Kubo
JavaEE6 First Application #glassfishjp
JavaEE6 First Application #glassfishjp
Satoshi Kubo
More from Satoshi Kubo
(12)
Jakarta CDI 4.0
Jakarta CDI 4.0
Jakarta EE/MicroProfileの世界をひろげるRed Hat Application Fundations
Jakarta EE/MicroProfileの世界をひろげるRed Hat Application Fundations
2022年7月JJUGナイトセミナー「Jakarta EE特集」MicroProfile あらためてのおさらい
2022年7月JJUGナイトセミナー「Jakarta EE特集」MicroProfile あらためてのおさらい
今のJava
今のJava
できる!Pmdカスタマイズ
できる!Pmdカスタマイズ
Javaの速度比較
Javaの速度比較
Java EEの話(仮)
Java EEの話(仮)
Strutsから移行する人のためのjsf基礎
Strutsから移行する人のためのjsf基礎
Junitを使ったjavaのテスト入門
Junitを使ったjavaのテスト入門
Glass fishで作ったアプリをweblogicに移植してみた
Glass fishで作ったアプリをweblogicに移植してみた
金魚本に載ってないJpqlの話 #glassfishjp
金魚本に載ってないJpqlの話 #glassfishjp
JavaEE6 First Application #glassfishjp
JavaEE6 First Application #glassfishjp
Java ee6 with scala
1.
Java EE 6
with Scala @megascus
2.
自己紹介 • twitter
id: @megascus • 仕事では銀行常駐してC#な案件やってます。 • Java EE Advent Calendarぜひ見て下さい! http://atnd.org/events/33783
3.
Java以外でJava EE 6
4.
Scalaってなんだ Object指向型言語と関数型言語を統合した言語で最近注 目されている。 Twitter社も採用。
5.
実際のコード
6.
Entity(Java) @Entity public class EntityClass
implements Serializable { @Id @GeneratedValue(strategy = GenerationType.AUTO) private Long id; public Long getId() { return id; } public void setId(Long id) { this.id = id; } }
7.
Entity(Scala) @Entity @serializable class EntityClass {
@Id @GeneratedValue (strategy = GenerationType.AUTO) @BeanProperty // GetterとSetterの自動生成 var id: Long = _ }
8.
EJB(Java) @Stateless @LocalBean public class CrudEJB
{ @PersistenceContext(unitName = "default") protected EntityManager manager; public EntityClass create(EntityClass entity) { manager.persist(entity); return entity; } public List<EntityClass> readAll() { return manager.createNamedQuery("findAll").getResultList(); } public EntityClass read(Long id) { return manager.find(EntityClass.class, id); } public EntityClass update(EntityClass entity) { return manager.merge(entity); } public void delete(EntityClass entity) { manager.remove(entity); } }
9.
EJB(Scala) @Stateless @LocalBean class CrudEJB {
@PersistenceContext(unitName="default") protected var manager: EntityManager = _ def create(entity: EntityClass): EntityClass = { manager persist entity entity } def readAll()(entity: EntityClass) = manager createNamedQuery ("findAll") getResultList def read(id: Long) = manager find classOf[EntityClass] id def update(entity: EntityClass) = manager merge entity def delete(entity: EntityClass): Unit = manager remove entity }
10.
Build 今回はMavenを使うので pom.xmlに設定を追記していきます。
11.
repository <repositories> <repository>
<id>scala-tools.org</id> <name>Scala-tools Maven2 Repository</name> <url>http://scala-tools.org/repo-releases</url> </repository> </repositories> <pluginRepositories> <pluginRepository> <id>scala-tools.org</id> <name>Scala-tools Maven2 Repository</name> <url>http://scala-tools.org/repo-releases</url> </pluginRepository> </pluginRepositories>
12.
dependency <dependency> <groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId> <version>2.9.2</version> </dependency>
13.
plugin <plugin>
<groupId>org.scala-tools</groupId> <artifactId>maven-scala-plugin</artifactId> <version>2.15.2</version> <executions> <execution> <goals> <goal>compile</goal> </goals> </execution> </executions> </plugin>
14.
フォルダ構成 . ├ pom.xml └ src
└ main ├ java ├ resources │ └ META-INF ├ scala //ここにScalaのソースを入れていく └ webapp
15.
ソースコード • https://github.com/megascus/JavaEE6Scala
Download now