[4-C] CDI2.0アップデート&クックブック

Size: px
Start display at page:

Download "[4-C] CDI2.0アップデート&クックブック"

Transcription

1 Java Day Tokyo 2016/Java EE Session 4-C CDI2.0 アップデート & クックブック NTT コムウェア株式会社上妻宜人 ( あげつまのりと ) Copyright NTT COMWARE 2016

2 上妻宜人あげつまのりと SIer 技術部門でJavaトラブルシューティングの日々 Java EEについて調べて伝えることが好き コミュニティ講演 GlassFish.JP, JJUG CCC, Java Day Tokyo 2015 など

3 本日のコンテンツ 駆け足で振り返る CDI CDI2.0 CDI + α 最後に

4 CDI Context and Dependency InjecAon 2009/12 CDI1.0 - Java EE /5 CDI1.1 - Java EE /4 CDI1.2 (maintenance release) 2017/1 CDI2.0 - Java EE 8

5 CDI の目的 1. @Decorator, Event @ApplicaAonScoped EJB SessionBean と の統合

6 CDI 実装製品 Weld ( 参照実装 ) - jboss.org GlassFish, WildFly/JBossEAP, WebLogic OpenWebBeans - Apache So]ware FoundaAon WebSphere, Apache TomEE

7 Context and Dependency InjecAon: CDI 管理 Bean の定義 // ライフサイクル : デプロイ アンデプロイまで public class Controller { } // ライフサイクル : ユーザセッションごとに生成 ログアウトで破棄 public class ShoppingCart implements Cart {...}

8 Context and Dependency InjecAon: ランタイム例外を引き起こすコンテキスト操作 public class Controller {... HttpSession session = request.getsession(); session.setattribute( shoppingcart, new ShoppingCart());... Cart cart = (Cart)session.getAttribute( shopingcart );

9

10 Context and Dependency InjecAon: CDI 管理 Bean public class Controller { public class ShoppingCart implements Cart {...}

11 Context and Dependency InjecAon: CDI 管理 Bean public class Controller { @ConversaAonScoped public class ShoppingCart Cart {...}

12 Context and Dependency public class Controller Cart cart; CDIコンテナがインスタンスをセット public class ShoppingCart implements Cart {...}

13 Context and Dependency - タイプセーフなインターセプタ適用 Log target // public class LogInterceptor {...} // public class OrderService { public void submit(order order) {..} }

14 Context and Dependency - タイプセーフなインターセプタ適用 Log target // public class @Target({TYPE, Log {} // public class OrderService { public void submit(order order) {..} }

15 Context and Dependency - タイプセーフなインターセプタ適用 @Target({TYPE, Log {} public class LogInterceptor {...} Binding public class OrderService { public void submit(order order) {..} }

16 CDI1.1 の変更点 (Java EE 7) beans.xml のオプション化 beans.xml なしで CDI 有効化 スコープを持つクラスはすべて CDI スコープは明示的に付与が必要 // Java EE 7 public class DependentBean {...}

17 CDI1.1 の変更点 (Java EE 7) beans.xml 主にインターセプタ有効化 & 優先順位付けに使用 Interceptor の有効化に public class LoggingInterceptor public Object log(invocationcontext ic) throws Exception {...} }

18 CDI1.1 の変更点 (Java EE によるインターセプト順序の定義 Priority: Log Time out target 値が小さいほど早く起動 Priority.PLATFORM_BEFORE: = 200 Priority.LIBRARY_BEFORE: 1000 Priority.APPLICATION: 2000 アプリケーション向け有効範囲 @Priority(Interceptor.Priority.APPLICATION) public class @Priority(Interceptor.Priority.APPLICATION + 10) public class TimeoutInterceptor {...}

19 CDI1.1 の変更点 (Java EE 7) スコープ開始 終了イベント スコープの開始 終了タイミングでイベント発火 ApplicaAonScoped public class MasterDataCache { public ServletContext context) { // initilize code } }

20 CDI1.2 の変更点 (Java EE 7) JSR-330 をスキャン対象外へ は CDI 管理 Bean と見なされない を使う 背景は Guava を含む AP が CDI1.1 からデプロイエラーになったこと Guava cannot be deployed in a JEE7 Container #1433

21 本日のコンテンツ 駆け足で振り返る CDI CDI2.0 CDI + α 最後に

22 CDI2.0 (Java EE 8 / 2017) CDI 非同期イベント 仕様をサブセットに分割 Java SE Support Java SE 8 Alignment

23 public class AlertService AlertRepository } Alert Service public void handlealert(alert alert) { // 何らかのビジネスロジックを終えた後に... repo.persist(alert); } Alert Repository

24 public class AlertService AlertRepository Sender } Alert Service public void handlealert(alert alert) { // 何らかのビジネスロジックを終えた後に... repo.persist(alert); .send( test@test.com, alert); } Alert Repository Sender

25 public class AlertService AlertRepository Sender AlertCache } Alert Service public void handlealert(alert alert) { // 何らかのビジネスロジックを終えた後に... repo.persist(alert); .send( test@test.com, alert); cache.putifabsent(alert); } Alert Repository Sender Alert Cache

26 通常のメソッド呼び出し手続き型のデメリット 機能追加毎にクラス間依存性が増加 やがては蜘蛛の巣になる CDI 管理 Bean が持つ状態のロールバックが難しい 宣言的トランザクションがコミット失敗した場合 トランザクション中に変更したBeanのステートをどう戻すか catch 節で頑張れるが 長くなることも

27 CDI publilc class AlertService AlertRepository Event<Alert> event; public void handlealert(alert alert) { repo.persist(alert); event.fire(alert);... Alert Service CDI Event Alert Repository Sender Alert Cache

28 CDI publilc class AlertService AlertRepository Event<Alert> event; public void handlealert(alert alert) { repo.persist(alert); event.fire(alert);... Alert Service CDI public class AlertCache {... public void updatecache(@observes Alert alert) { cache.putifabsent(alert.getid(), alert); } } Alert Repository Sender Alert Cache

29 CDI publilc class AlertService AlertRepository Event<Alert> event; public void handlealert(alert alert) { repo.persist(alert); event.fire(alert);... Alert Service CDI Event Alert Repository Sender Alert イベントと同じ引数を持つ public class AlertCache { 全てのオブザーバに通知... public void updatecache(@observes Alert alert) { cache.putifabsent(alert.getid(), alert); } }

30 CDI イベントの振り返りイベントモデルの一般的な利点 Alert Service Alert Repository Alert Service Alert Repository Sender CDI Event Sender Alert Cache Alert Cache プラグイン構造 既存に手を入れずに Observer 追加で拡張 実行タイミング / 場所の分離 非同期実行 別マシンでの実行が理論上は可能となる

31 CDI Container Observer Observer #2 1.fire() 2.call back #1 3.call back #2

32 CDI1.2 までは同期呼び出しのみ CDI Container Observer #1 Observer #2 1.fire() 2.call back #1 3.call back #2 fire() の完了

33 CDI2.0 #1 CDI2.0 非同期イベント

34 CDI2.0 非同期 CDI publilc class AlertService Event<Alert> event; public void handlealert(alert alert) { event.fire(alert);...

35 CDI2.0 非同期 CDI publilc class AlertService Event<Alert> event; public void handlealert(alert alert) { event.fireasync(alert);...

36 CDI2.0 非同期 CDI イベント publilc class AlertService Event<Alert> event; public void handlealert(alert alert) { event.fireasync(alert);... CDI2.0 EDR1 では Observer 側スレッドはコンテナ実装依存 Weld Alpha16 の場合 : Weld 自体が持つスレッドプールを使用 (max-size -> CPU コア数 )

37 CDI2.0 非同期 CDI イベントコンテナ管理スレッドの利用 (Concurrency UAliAes for Java publilc class AlertService Event<Alert> ManagedExecutor executor; public void handlealert(alert alert) { event.fireasync(alert, executor);...

38 CDI2.0 非同期 CDI publilc class AlertService Event<Alert> ManagedExecutor executor; public void handlealert(alert alert) { CompletionStage<Alert> asyncevent = event.fireasync(alert, executor); // block until complete observes asyncevent.tocompletablefuture().join();...

39 CDI2.0 非同期 CDI イベント Observer publilc class AlertCache { ConcurrentMap<Long, Alert> cache =...; public void updatecache(@observes Alert alert) { cache.putifabsent(alert.getid(), alert); } }

40 CDI2.0 非同期 CDI イベント Observer publilc class AlertCache { ConcurrentMap<Long, Alert> cache =...; public void updatecache(@observeasync Alert alert) { cache.putifabsent(alert.getid(), alert); } }

41 Request thread Event thread CDI Container Observer Observer #2 fireasync() fireasync() は即座に return し 各 Observer は別スレッドで実行 call back call back

42 Request thread Event thread CDI Container fireasync() Subject transacaon #1 call Observer #1 transacaon Observer #2 トランザクション コンテキストはオブザーバに引き継がれない call back tx #3

43 CDI2.0 非同期 CDI イベント Observer publilc class AlertService Event<Alert> ManagedExecutor executor; public void handlealert(alert alert) { CompletionStage<Alert> stage = event.fireasync(alert, executor);

44 CDI2.0 非同期 CDI イベント CompleAonStage.excepAonally publilc class AlertService Event<Alert> ManagedExecutor executor; public void handlealert(alert alert) { CompletionStage<Alert> stage = event.fireasync(alert, executor).exceptionally(ex -> { // observer exception logging Arrays.stream(ex.getSuppressed()).forEach(e -> System.err.println(e)); return null; });

45 CDI2.0 非同期 CDI イベント CDI2.0 より非同期実行に対応 プラグイン ( 型依存の分離 ) 非同期実行 ( 実行タイミングの分離 ) CDI1.2 (Java EE 7) CDI2.0 (Java EE 8)

46 CDI2.0 非同期 CDI と CDI 非同期イベント CDI1.2 (Java EE 7) CDI2.0 (Java EE 8) JMS プラグイン ( 型依存の分離 ) 非同期実行 ( 実行タイミングの分離 ) メッセージ永続化 Observer の別マシン実行

47 CDI2.0 非同期 CDI と CDI 非同期イベント プラグイン ( 型依存の分離 ) 非同期実行 ( 実行タイミングの分離 ) メッセージ永続化 Observerの別マシン実行 CDI1.2 (Java EE 7) CDI2.0 (Java EE 8) JMS に付いてくる検討項目 JMS XA するならクラッシュリカバリ手順は? ポイズンメッセージ対策は? メッセージ永続化先は? ファイル or DB?

48 CDI2.0 非同期 CDI と CDI 非同期イベント CDI1.2 (Java EE 7) CDI2.0 (Java EE 8) JMS プラグイン ( 型依存の分離 ) 非同期実行 ( 実行タイミングの分離 ) メッセージ永続化 Observer の別マシン実行 考えるべきタスクの多さ

49 CDI2.0 非同期 CDI イベント CDI 非同期イベントが適するケース 順序性, 依存性のない処理の並列実行 例外時のCDI 管理 Bean 状態ロールバック トランザクション中に変更したステートを元に戻す メッセージ永続化が不要 例 : 朝からリクエスト時点までの業務統計レポート生成 障害復旧後に永続メッセージから実行しても 既に陳腐化

50 CDI2.0 #2 仕様をサブセットに分割

51 CDI2.0 仕様をサブセットに分割 CDI Lite 軽量なサブセットの抽出 CDI を Java EE 以外の世界で使ってもらいたい Android, 組込みデバイス 現状の CDI 仕様は Java EE 環境を前提 プロキシベースを前提としない軽量実装 AnnotaAon Processing によるコンパイル時依存性解決 (Android でよく使われる Dagger がモデル ) 省メモリ 低 CPU 使用率の実現

52 CDI2.0 仕様をサブセットに分割 CDI Lite 軽量なサブセットの抽出 CDI core DI Event 疑似スコープ ProgramaAc lookup Portable ExtenAon CDI Java SE Bootstraping API Scope in Java Packaging & deployment CDI Java EE Scope in EJB との連携

53 CDI2.0 #3 Java SE Support

54 CDI2.0 Java SE Support Java SE Bootstrap API CDI コンテナ初期化 public static void main(string... args) { try (CDI<Object> cdi = CDI.getCDIProvider().initialize()) { Service service = cdi.select(service.class).get(); service.dosomething(); } } InjectされたBeanの取得 public class ServiceImpl implements Service Repository repo; public void dosomething() {...} }

55 CDI2.0 Java SE Support 仕様 として含める背景 Java EE 仕様間での整合性 JAX-RS, JPA は Java SE でも利用可能な仕様設計 Weld, OpenWebBeans で既に実装されていた 実装間で類似 API が複数存在するのは Java EE 思想に反する

56 CDI2.0 #4 Java SE 8 Alignment

57 CDI2.0 Java SE 8 Alignment InterceptorBuilder: ラムダ or メソッド参照によるインターセプタ public class InterceptorBuilder { // デプロイ時にCDIコンテナよりコールバック void afterbeandiscovery(@observes AfterBeanDiscovery event) { event.addinterceptor() // return InterceptorBuilder

58 CDI2.0 Java SE 8 Alignment InterceptorBuilder: ラムダ or メソッド参照によるインターセプタ public class InterceptorBuilder { // デプロイ時に CDI コンテナよりコールバック void afterbeandiscovery(@observes AfterBeanDiscovery event) { event.addinterceptor().intercept(interceptiontype.around_invoke, this::log) } Object log(invocationcontext ic) { // interceptor impl 相当

59 CDI2.0 Java SE 8 Alignment InterceptorBuilder: ラムダ or メソッド参照によるインターセプタ public class InterceptorBuilder { // デプロイ時に CDI コンテナよりコールバック void afterbeandiscovery(@observes AfterBeanDiscovery event) { event.addinterceptor().intercept(interceptiontype.around_invoke, this::log).priority(priority.application).addbinding(log.instance); } Object log(invocationcontext ic) { // interceptor impl } }

60 CDI2.0 Java SE 8 Alignment InterceptorBuilder: ラムダ or メソッド参照によるインターセプタ public class InterceptorBuilder { // デプロイ時に CDI コンテナよるコールバック void afterbeandiscovery(@observes AfterBeanDiscovery event) { event.addinterceptor().intercept(interceptiontype.around_invoke, this::log).priority(priority.application).addbinding(log.instance); } Object log(invocationcontext ic) { // interceptor impl } }

61 CDI2.0 Java SE 8 Alignment InterceptorBuilder: ラムダ or メソッド参照によるインターセプタ event.addinterceptor()....addbinding(log.instance);

62 CDI2.0 Java SE 8 Alignment InterceptorBuilder: ラムダ or メソッド参照によるインターセプタ public void target() {...} 適用対象メソッドと繋ぐために アノテーションの インスタンス を渡す必要がある

63 CDI2.0 Java SE 8 Alignment InterceptorBuilder: ラムダ or TYPE}) Log {}

64 CDI2.0 Java SE 8 Alignment InterceptorBuilder: ラムダ or @Retention(RUNTIME) TYPE}) アノテーションの インスタンス を取得 Log { class Literal extends AnnotationLiteral<Log> implements Log { private Literal() {} } final Log INSTANCE = new Literal(); }

65 CDI2.0 Java SE 8 Alignment InterceptorBuilder: ラムダ or メソッド参照によるインターセプタ TYPE}) public void target() {...} Log { class Literal extends AnnotationLiteral<Log> implements Log { private Literal() {} } final Log INSTANCE = new Literal(); }

66 CDI2.0 Java SE 8 Alignment InterceptorBuilder のメリット 1 クラスで複数のインターセプタ定義が可能 クラスが冗長に増えるのを防ぐ Java EE の何でもアノテーション状態の改善 Java 5 から : アノテーションをスキャンしてコンテナ機能を付与 Java 8 から : ラムダを渡すとコンテナが機能付与

67 CDI2.0 ロードマップスケジュール 2015/6: Early Dra] Review 1 hmps://docs.jboss.org/cdi/spec/2.0.edr1/cdi-spec.html 2016/6: Early Dra] Review 2 予定 2016/ /1: CDI2.0 Final 予定 2017 上半期 Java EE 8 リリース予定

68 本日のコンテンツ 駆け足で振り返る CDI CDI2.0 CDI + α 最後に

69 DI/AOP が標準化され 非同期イベントが入るのはわかった でも まだ Spring より足りないのでは?

70 Spring Framework CDI (Java プロパティ管理 Java

71 CDI は 材料 のみ提供して 自作が必要なユースケースも多い Spring Framework CDI (Java による要自作 による要自作

72 CDI2.0(2017 年 ) に向けて議論中ではある その機能は本当に CDI か? 過去例 : Spring を CDI ではなく JTA へ やはり ConfigraAon JSR CDI Issue CDI-504 による要自作 Issue CDI-539 CDI-504: have a standard CDI annotaaon from deltapsike hmps://issues.jboss.org/browse/cdi-504 CDI-539: Support for 'profile' in CDI hmps://issues.jboss.org/browse/cdi-539

73 CDI2.0(2017 年 ) に向けて議論中ではある その機能は本当に CDI か? 過去例 : Spring を CDI ではなく JTA へ やはり ConfigraAon JSR では? CDI (Java EE) Issue CDI-504 による要自作 Issue CDI-539 CDI-504: have a standard CDI annotaaon from deltapsike hmps://issues.jboss.org/browse/cdi-504 CDI-539: Support for 'profile' in CDI hmps://issues.jboss.org/browse/cdi-539

74 あったらいいな は Deltaspike にある DI/AOP CDI (Java EE) @PropertySource Java org.apache.deltaspike.core.api.projectstage ProjectStage

75 Apache Deltaspike 便利な CDI 拡張ライブラリ CDI の Portable ExtenAon を活かしたライブラリ Seem3 + My Faces CODI + α を統合 2014/6: リリース (2016/4 現在 が最新 )

76 Apache によるパラメータ注入 デフォルトのプロパティファイル META-INF/apache-deltaspike.properAes remotehost= Deltaspike により public class defaultvalue="localhost:8080") private String remotehost;...

77 Apache Deltaspike public class MyAppFileConfig implements PropertyFileConfig public String getpropertyfilename() { return "META-INF/application.properties"; public boolean isoptional() { return false; } }

78 Apache Deltaspike 環境変数による値の差し替え private String remotehost; 優先順位 1. 環境変数 export remotehost= システムプロパティ java -Dremotehost= JNDI new InitialContext().bind( remotehost, ) 4. プロパティファイル

79 Apache Deltaspike #2 ProjectStage 起動オプションで有効な Bean を切り替える Service Repository development H2 producaon PostgreSQL META-INF/persistence.xml <?xml version="1.0" encoding="utf-8"?> <persistence> <persistence-unit name="h2 >...</persistence-unit> <persistence-unit name="postgresql >...</persistence-unit> </persistence>

80 Apache Deltaspike #2 ProjectStage 起動オプションで有効な Bean public class Repository = h2 or PostgreSQL?? ) private EntityManager em;... }

81 Apache Deltaspike #2 ProjectStage Development 環境向け EnAtyManager の Bean public class Repository = h2 or PostgreSQL?? ) private EntityManager em;... = public class = "h2") private EntityManager em; }

82 Apache Deltaspike #2 ProjectStage Development 環境向け EnAtyManager の Bean public class Repository private EntityManager em;... = public class = "h2") private EntityManager em; }

83 Apache Deltaspike #2 ProjectStage public class Repository private EntityManager em;... } Repository H2 = public class = "h2") private EntityManager em; } java -Dorg.apache.deltaspike.ProjectStage=Development

84 Apache Deltaspike #2 ProjectStage ProducAon public class Repository private EntityManager em;... } Repository H2 = public class = PostgreSQL") private EntityManager em; }

85 Apache Deltaspike #2 ProjectStage ProducAon public class Repository private EntityManager em;... } Repository H2 = public class ProdEntityManagerProducer { = PostgreSQL") private EntityManager em; }

86 Apache と ProjectStage 2つに共通するメリット 環境変数やJavaシステムプロパティで振る舞いを変更 テスト済 warを 修正なし で複数環境で動作させる 開発環境ステージング環境商用環境 myapp.war myapp.war Simurator myapp.war 関連システム AP Server DB

87 本日のコンテンツ 駆け足で振り返る CDI CDI2.0 CDI + α 最後に

88 CDI2.0 (Java EE 8 / 2017) CDI 非同期イベント 仕様をサブセットに分割 Java SE Support Java SE 8 Alignment

89 CDI2.0 をもっと知るには cdi-spec.org / JIRA / Weld3.0.0.Alpha ホームページ (CDI spec で検索 ) hmp:// JIRA hmps://issues.jboss.org/projects/cdi CDI2.0 EarlyDra]Review 1 の参照実装 Weld Alpha16 hmp://weld.cdi-spec.org/news/2016/04/28/weld-300alpha16/ WildFly10 に組込み可能な patch もリリース

90 最後に CDI2.0 ドラフト仕様は今すぐ WildFly10 で動きます ぜひ触ってみてください! Oracle と Java は Oracle CorporaAon 及びその子会社 関連会社の米国及びその他の国における登録商標です 文中の社名 商品名等は各社の商標または登録商標である場合があります

Make the Future Java FY13 PPT Template

Make the Future Java FY13 PPT Template Yoshio Terada Java Evangelist http://yoshio3.com, Twitter : @yoshioterada 1 以下の事項は 弊社の一般的な製品の方向性に関する概要を説明するものです また 情報提供を唯一の目的とするものであり いかなる契約にも組み込むことはできません 以下の事項は マテリアルやコード 機能を提供することをコミットメント ( 確約 ) するものではないため

More information

日本オラクル株式会社 Fusion Middleware 事業統轄本部 Java エバンジェリスト 寺 田佳央 Java Day Tokyo 2015 2015 年年 4 月 8 日 以下の事項は 弊社の 一般的な製品の 方向性に関する概要を説明するものです また 情報提供を唯 一の 目的とするものであり いかなる契約にも組み込むことはできません 以下の事項は マテリアルやコード 機能を提供することをコミットメント

More information

WEBシステムのセキュリティ技術

WEBシステムのセキュリティ技術 EJB (Enterprise Java Beans) 棚橋沙弥香 テーマ選定の背景 現在携わっている Java 開発案件で EJB が使われておりますが 私自身が EJB を扱うのが初めてで知らない技術でしたので 勉強してみたいと思い 今回はこのテーマを選定しました 目次 EJBとは 1 EJBの利点 2 EJBの歴史 3 EJBの開発環境の作成 4 5 Enterprise Bean 6 非同期処理の実装

More information

2

2 Yoshio Terada Java Evangelist http://yoshio3.com, Twitter : @yoshioterada 1 2 3 4 5 1996 6 JDK1.0 Thread Runnable 1997 1998 JDK1.1 J2SE1.2 2000 2002 J2SE 1.3 J2SE 1.4 2004 2006 Java SE 6 JSR-166x Java

More information

V8.1新規機能紹介記事

V8.1新規機能紹介記事 WebOTX V8.1 新規機能 EJB 3.0 WebOTX V8.1より Java EE 5(Java Platform, Enterprise Edition 5) に対応しました これによりいろいろな機能追加が行われていますが 特に大きな変更であるEJB 3.0 対応についてご紹介いたします なお WebOTX V7で対応したEJB 2.1についてもWebOTX V8.1で引き続き利用することが可能です

More information

Make the Future Java FY13 PPT Template

Make the Future Java FY13 PPT Template 1 Batch Application for the Java Platform JSR352 NTT コムウェア株式会社技術 SE 部 OSS AP 技術担当上妻宜人 2 自己紹介 上妻宜人 ( あげつまのりと ) NTT コムウェア株式会社勤務 社内の Java/AP サーバの技術サポートを担当しています 3 バッチってなんだろう? 4 月次締め処理 銀行勘定システム 在庫管理 深夜に起動 (

More information

1 JBoss Seam と Embedded EJB3 で見る 次世代の Java EE アプリケーション開発 株式会社カサレアルプロフェッショナルサービスセンター阿島哲夫岡本充洋

1 JBoss Seam と Embedded EJB3 で見る 次世代の Java EE アプリケーション開発 株式会社カサレアルプロフェッショナルサービスセンター阿島哲夫岡本充洋 1 JBoss Seam と Embedded EJB3 で見る 次世代の Java EE アプリケーション開発 株式会社カサレアルプロフェッショナルサービスセンター阿島哲夫岡本充洋 2 Agenda JBoss Seam とは JBoss Seam のコンテキスト管理 JBoss Seam と JSF JBoss Seam のその他の機能 JBoss Embeded EJB3 まとめ JBoss

More information

intra-mart Accel Platform — IM-Repository拡張プログラミングガイド   初版  

intra-mart Accel Platform — IM-Repository拡張プログラミングガイド   初版   Copyright 2018 NTT DATA INTRAMART CORPORATION 1 Top 目次 1. 改訂情報 2. はじめに 2.1. 本書の目的 2.2. 対象読者 2.3. サンプルコードについて 2.4. 本書の構成 3. 辞書項目 API 3.1. 最新バージョン 3.1.1. 最新バージョンの辞書を取得する 3.2. 辞書項目 3.2.1. 辞書項目を取得する 3.2.2.

More information

intra-mart Accel Platform — イベントナビゲータ 開発ガイド   初版  

intra-mart Accel Platform — イベントナビゲータ 開発ガイド   初版   Copyright 2013 NTT DATA INTRAMART CORPORATION 1 Top 目次 intra-mart Accel Platform イベントナビゲータ開発ガイド初版 2013-07-01 改訂情報概要イベントフローの作成 更新 削除をハンドリングするイベントフローを非表示にする回答を非表示にするリンクを非表示にするタイトル コメントを動的に変更するリンク情報を動的に変更するナビゲート結果のリンクにステータスを表示する

More information

Microsoft PowerPoint ppt

Microsoft PowerPoint ppt 独習 Java ( 第 3 版 ) 6.7 変数の修飾子 6.8 コンストラクタの修飾子 6.9 メソッドの修飾子 6.10 Object クラスと Class クラス 6.7 変数の修飾子 (1/3) 変数宣言の直前に指定できる修飾子 全部で 7 種類ある キーワード final private protected public static transient volatile 意味定数として使える変数同じクラスのコードからしかアクセスできない変数サブクラスまたは同じパッケージ内のコードからしかアクセスできない変数他のクラスからアクセスできる変数インスタンス変数ではない変数クラスの永続的な状態の一部ではない変数不意に値が変更されることがある変数

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション Java J2EE Spring Spring Dependency Injection AOP Java J2EE 2 4 Application Java Enterprise API 5 6 mod_jk2 AJP13 Coyote/JK2 Connector Session Apache2 Tomcat5-a AJP13 Coyote/JK2 Connector Session Tomcat5-b

More information

プレポスト【問題】

プレポスト【問題】 コース名 : サーブレット /JSP/JDBC プログラミング ~Eclipse による開発 ~ 受講日 氏名 1 JDBC の説明として 間違っているものを 1 つ選びなさい 1. JDBC を使用してデータベースへアクセスするときには JDBC API が必要である 2. JDBC API は java.lang パッケージとして提供されている 3. JDBC には JDBC API JDBC

More information

Javaセキュアコーディングセミナー2013東京第1回 演習の解説

Javaセキュアコーディングセミナー2013東京第1回 演習の解説 Java セキュアコーディングセミナー東京 第 1 回オブジェクトの生成とセキュリティ 演習の解説 2012 年 9 月 9 日 ( 日 ) JPCERT コーディネーションセンター脆弱性解析チーム戸田洋三 1 演習 [1] 2 演習 [1] class Dog { public static void bark() { System.out.print("woof"); class Bulldog

More information

IBM の Java 活用ガイド_rev2

IBM の Java 活用ガイド_rev2 Java 無償サポート終了でお悩みのお客様向けガイド IBM の Java ライフサイクルやサポートの仕組みさらに Java EE アプリの移 法など今知りたいことを 10 分でご理解頂けます いろいろ聞きたいことあります Oracle Java の無償サポート終了のニュースで気になることたくさんの A さん Java に詳しい IBM の 2 先ず ご存知かもしれませんが Java SE の仕様についておさらいしましょう

More information

Exam : 1z1-809-JPN Title : Java SE 8 Programmer II Vendor : Oracle Version : DEMO Get Latest & Valid 1z1-809-JPN Exam's Question and Answers 1 from Ac

Exam : 1z1-809-JPN Title : Java SE 8 Programmer II Vendor : Oracle Version : DEMO Get Latest & Valid 1z1-809-JPN Exam's Question and Answers 1 from Ac Actual4Test http://www.actual4test.com Actual4test - actual test exam dumps-pass for IT exams Exam : 1z1-809-JPN Title : Java SE 8 Programmer II Vendor : Oracle Version : DEMO Get Latest & Valid 1z1-809-JPN

More information

intra-mart Accel Platform — イベントナビゲータ 開発ガイド   初版   None

intra-mart Accel Platform — イベントナビゲータ 開発ガイド   初版   None クイック検索検索 目次 Copyright 2013 NTT DATA INTRAMART CORPORATION 1 Top 目次 intra-mart Accel Platform イベントナビゲータ開発ガイド初版 2013-07-01 None 改訂情報概要イベントフローの作成 更新 削除をハンドリングするイベントフローを非表示にする回答を非表示にするリンクを非表示にするタイトル コメントを動的に変更するリンク情報を動的に変更するナビゲート結果のリンクにステータスを表示する

More information

JBoss と Arquillian で実現する 究極のテスト環境 レッドハット株式会社 JBoss サービス事業部 コンサルタント 山 田義和

JBoss と Arquillian で実現する 究極のテスト環境 レッドハット株式会社 JBoss サービス事業部 コンサルタント 山 田義和 JBoss と Arquillian で実現する 究極のテスト環境 レッドハット株式会社 JBoss サービス事業部 コンサルタント 山 田義和 Who am I? Hi, I m glad to see you! 2 Arquillian??? インテグレーションテストのための テスティングプラットフォーム http://www.jboss.org/arquillian.html 3 テスティングプラットフォーム?

More information

Seasar.NET入門

Seasar.NET入門 2007 Spring Seasar.NET 入門 2007.5.27 Seasar.NET 杉本和也 2007 Spring Copyright 2004-2007 The Seasar Foundation and the others. All rights reserved. 1 杉本和也と申します 高知県の株式会社アイビスに勤務しています プログラミング歴 6 年 オープンソース歴 2 年

More information

Slide 1

Slide 1 Java EE 6 最新機能のご紹介 日本オラクル株式会社 以下の事項は 弊社の一般的な製品の方向性に関する概要を説明するものです また 情報提供を唯一の目的とするものであり いかなる契約にも組み込むことはできません 以下の事項は マテリアルやコード 機能を提供することをコミットメント ( 確約 ) するものではないため 購買決定を行う際の判断材料になさらないで下さい

More information

Javaセキュアコーディングセミナー東京 第3回 入出力(File, Stream)と例外時の動作 演習解説

Javaセキュアコーディングセミナー東京 第3回 入出力(File, Stream)と例外時の動作 演習解説 Java セキュアコーディングセミナー東京第 3 回入出力と例外時の動作 演習解説 2012 年 11 月 11 日 ( 日 ) JPCERT コーディネーションセンター脆弱性解析チーム戸田洋三 1 Hands-on Exercises コンパイルエラーに対処しよう ファイルからのデータ入力を実装しよう 2 Hands-on Exercise(1) サンプルコードの コンパイルエラーに対処しよう 3

More information

PowerPoint Presentation

PowerPoint Presentation ソフトウェア演習 B GUI を持つ Java プログラムの 設計と実装 4.1 例題 :GUI を持った電卓を作ろう プロジェクトCalculator パッケージ名 :example ソースファイル : Calculator.java GUI.java EventProcessor.java 2 4.2 GUI とイベント処理 GUI の構成 :Swing GUI の場合 フレーム JFrame:

More information

Microsoft PowerPoint - JavaFesta.ppt

Microsoft PowerPoint - JavaFesta.ppt DI コンテナ Spring Framework による 次世代 Java EE アプリケーション開発 河村嘉之 日立ソフト研究部技師 / ソリューションアーキテクト Copyright Hitachi Softweare 2005 Engineering Hitachi Co., Software Ltd. 2004 Engineering All rights reserved. Co., Ltd.

More information

Java知識テスト問題

Java知識テスト問題 Java 知識テスト SDAS プログラマ(Java 編 ) 運営事務局 このテストは J2EE プログラマとしての Java の知識を評価するものです 問題は 30 問, テスト時間は J2EE 知識テストとあわせて 90 分です 問題は全て択一式です 選択肢から 1 つだけ選択してください 資料の閲覧は禁止です テストが終わり次第 答案用紙を提出していただいてかまいません テスト終了後, 本テストの内容を他の方に話さないでください

More information

(Microsoft PowerPoint - \223\306\217KJAVA\221\346\202R\224\ ppt)

(Microsoft PowerPoint - \223\306\217KJAVA\221\346\202R\224\ ppt) 独習 JAVA 第 3 版 8.4 例外とエラークラス 8.5 throws ステートメント 8.6 独自の例外 Throwable コンストラクタ catch ブロックには Throwable 型のパラメータが必ず 1 つなければならない Throwable コンストラクタ Throwable() Throwable( String message ) message には問題を通知する文字列のメッセージ

More information

Microsoft PowerPoint - グリッド協議会GT4演習資料_2007_配布用

Microsoft PowerPoint - グリッド協議会GT4演習資料_2007_配布用 演習 1~6 Globus Toolkit Version 4 (Java WS Core) 演習 : WS-Resource の生成と機能拡張 目標 :GT4 Java Core WSRF 基本仕様のサポート確認 サーバー側の実装方法 サービス 各種設定ファイル ( の実装方法 ) 最低限 WSRF の標準的な機能は GT4 に含まれる標準で利用可能 GT4 標準の利用方法 wsrf-get-property

More information

intra-mart Accel Platform

intra-mart Accel Platform 目次目次 Copyright 2014 NTT DATA INTRAMART CORPORATION クイック検索検索 1 Top 目次 1. 改訂情報 2. はじめに 2.1. 本書の目的 2.2. 対象読者 2.3. 対象開発モデル 2.4. サンプルコードについて 2.5. 本書の構成 3. アクセスコンテキストの実装 3.1. アクセスコンテキストの実装例 3.2. アクセスコンテキストのキャッシュ機能の実装例

More information

コンテナでテストをまわせ! Java EE への自動テストの導入 1 小西高之 JBoss Technical Support Engineer Red Hat K.K.

コンテナでテストをまわせ! Java EE への自動テストの導入 1 小西高之 JBoss Technical Support Engineer Red Hat K.K. コンテナでテストをまわせ! Java EE への自動テストの導入 1 小西高之 JBoss Technical Support Engineer Red Hat K.K. コンテナでテストをまわせ! Twitter ハッシュタグ : #jt12_b202 小西高之 @leather_sole 2 とあるプロジェクトで... これからアプリケーションのテストを始める はい! まずはこのテストだ! 3

More information

intra-mart im-JavaEE Framework

intra-mart im-JavaEE Framework intra-mart im-javaee Framework Version 6.1 Seasar2 連携ガイド 第四版 2008 年 5 月 30 日 > 変更年月日変更内容 2007/7/31 初版 2007/8/31 第二版 2.1.1 jta.diconの設定誤字 脱字の修正 2007/10/19 第三版 2.1.1.3 UserTransactionの設定を追加 2008/5/30

More information

- i - org.t_engine.tenet.core.coreerrormessageexception org.t_engine.tenet.core Class CoreErrorMessageException java.lang.object +-java.lang.throwable +-java.lang.exception +-org.t_engine.tenet.core.coreexception

More information

PowerPoint Presentation

PowerPoint Presentation 1 Oracle WebLogic Server 12c: 開発を支援する新機能ご紹介 日本オラクル株式会社 Fusion Middleware 事業統括本部プリンシパルセールスコンサルタント二條智文 以下の事項は 弊社の一般的な製品の方向性に関する概要を説明するものです また 情報提供を唯一の目的とするものであり いかなる契約にも組み込むことはできません 以下の事項は マテリアルやコード 機能を提供することをコミットメント

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション 基本 Java プログラミング演習 第 13 回 担当 : 植村 今後の予定 7/15 第 13 回 今回 7/22 第 14 回 小テスト ( クラス ) 7/29 第 15 回 総まとめテスト レポート提出 期末テストの時間割に Java のテストの欄がありますが無視してください 再テストはまた別途連絡いたします 2 CHAPTER 11 はじめてのクラス前回の復習 クラスクラスを構成する要素

More information

JAVA とテンプレート

JAVA とテンプレート JAVA とテンプレート 序論 : コンテナ 他のクラスのオブジェクトを保存するものをコンテナ (Container) と呼ぶ 集合 リスト 表 コンテナに求められる機能 追加 削除 参照 要素の比較 並べ替え 要素のクラスが不明では 比較できない 要素が想定しているクラスのものかの判定 テンプレート以前の対応方法 コンテナ設計時に 保存されるクラスを特定してコンテナをコードする 保存されるクラスごとに作成しなければならない

More information

ただし 無作為にスレッドを複数実行すると 結果不正やデッドロックが起きる可能性がある 複数のスレッド ( マルチスレッド ) を安全に実行する ( スレッドセーフにする ) ためには 同期処理を用いるこ とが必要になる 同期処理は 予約語 synchronized で行うことができる ここでは sy

ただし 無作為にスレッドを複数実行すると 結果不正やデッドロックが起きる可能性がある 複数のスレッド ( マルチスレッド ) を安全に実行する ( スレッドセーフにする ) ためには 同期処理を用いるこ とが必要になる 同期処理は 予約語 synchronized で行うことができる ここでは sy オブジェクト指向プログラミング演習 2010/10/27 演習課題 スレッド ( その 2) 同期処理 結果不正 デッドロック 前回のスレッドの演習では 複数のスレッドを実行し 一つのプログラムの中の違う処理を同時に実行し た ただし 無作為にスレッドを複数実行すると 結果不正やデッドロックが起きる可能性がある 複数のスレッド ( マルチスレッド ) を安全に実行する ( スレッドセーフにする )

More information

SpringSecurity

SpringSecurity Spring Security 1/40 OUTLINE Spring Security Spring Securityを使った認証の仕組み Spring Securityを使った独自認証 認証エラーメッセージの変更 2/40 Spring Security 3/40 Spring Security とは アプリケーションのセキュリティを高めるためのフレームワーク 認証 認可機能 その他 多数のセキュリティ関連の機能を持つ

More information

11 ソフトウェア工学 Software Engineering デザインパターン DESIGN PATTERNS デザインパターンとは? デザインパターン 過去のソフトウェア設計者が生み出したオブジェクト指向設計に関して, ノウハウを蓄積し 名前をつけ 再利用しやすいようにカタログ化したもの 各デ

11 ソフトウェア工学 Software Engineering デザインパターン DESIGN PATTERNS デザインパターンとは? デザインパターン 過去のソフトウェア設計者が生み出したオブジェクト指向設計に関して, ノウハウを蓄積し 名前をつけ 再利用しやすいようにカタログ化したもの 各デ 11 ソフトウェア工学 Software Engineering デザインパターン DESIGN PATTERNS デザインパターンとは? デザインパターン 過去のソフトウェア設計者が生み出したオブジェクト指向設計に関して, ノウハウを蓄積し 名前をつけ 再利用しやすいようにカタログ化したもの 各デザインパターンの主な内容 そのデザインパターンの目的と効果 どのような役割の部品 ( クラス, インタフェース

More information

プログラミング基礎I(再)

プログラミング基礎I(再) 山元進 クラスとは クラスの宣言 オブジェクトの作成 クラスのメンバー フィールド 変数 配列 メソッド メソッドとは メソッドの引数 戻り値 変数の型を拡張したもの 例えば車のデータベース 車のメーカー 車種 登録番号などのデータ データベースの操作 ( 新規データのボタンなど ) プログラムで使う部品の仕様書 そのクラスのオブジェクトを作ると初めて部品になる 継承 などの仕組みにより カスタマイズが安全

More information

intra-mart WebPlatform/AppFramework

intra-mart WebPlatform/AppFramework intra-mart WebPlatform/AppFramework Ver.7.2 ポータルシステム管理者操作ガイド 2010/04/01 初版 i 変更履歴 変更年月日 変更内容 2010/04/01 初版 ii 第 1 章ポートレット管理 1 1.1 ポートレット管理とは 2 1.2 ポートレットアプリケーション一覧 3 1.2.1 概要 3 1.3 ポートレットアプリケーションの登録 4

More information

[HO-2] NetBeansとGlassFishではじめるJava EE7ハンズオン

[HO-2] NetBeansとGlassFishではじめるJava EE7ハンズオン Java EE 7 ハンズオン概要 日本オラクル株式会社 Oracle University 野邊 哲男 Java Day Tokyo 2016 2016 年 5 月 24 日 Copyright 2016, Oracle and/or its affiliates. All rights reserved. Safe Harbor Statement The following is intended

More information

Microsoft PowerPoint Java基本技術PrintOut.ppt [互換モード]

Microsoft PowerPoint Java基本技術PrintOut.ppt [互換モード] 第 3 回 Java 基本技術講義 クラス構造と生成 33 クラスの概念 前回の基本文法でも少し出てきたが, オブジェクト指向プログラミングは という概念をうまく活用した手法である. C 言語で言う関数に似ている オブジェクト指向プログラミングはこれら状態と振る舞いを持つオブジェクトの概念をソフトウェア開発の中に適用し 様々な機能を実現する クラス= = いろんなプログラムで使いまわせる 34 クラスの概念

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション オブジェクト指向 プログラミング演習 第 4 回継承 オーバーライド ポリモルフィズム 今日のお題 継承 オーバーライド ポリモルフィズム 継承 (inherit) あるクラス c のサブクラス s を定義する : このとき s は c を継承していると言う 何かの下位概念を表すクラスは その上位概念を表すクラスの属性や機能を ( 基本的には ) 使える 継承の例 大学生 長崎県立大学の学生 大学生を継承する概念

More information

intra-mart Accel Platform

intra-mart Accel Platform セットアップガイド (WebSphere 編 ) 第 4 版 2014-01-01 1 目次 intra-mart Accel Platform 改訂情報 はじめに 本書の目的 前提条件 対象読者 各種インストール 設定変更 intra-mart Accel Platform 構成ファイルの作成 WebSphereの設定 Java VM 引数の設定 トランザクション タイムアウトの設定 データベース接続の設定

More information

Spring Frameworkに対するオラクルのサポート

Spring Frameworkに対するオラクルのサポート Spring Framework に対するオラクルのサポート Oracle ホワイト ペーパー 2007 年 5 月 Spring Framework に対するオラクルのサポート はじめに ソフトウェア開発という独自の世界では 選択の自由も抽象的な概念ではありません 要件に合った方法でのアプリケーション構築を可能にするテクノロジーやフレームワークを選ぶ自由は 絶対不可欠なものです オラクルはこの要求を理解しており

More information

1 Copyright 2013, Oracle Corporation Japan, all rights reserved.

1 Copyright 2013, Oracle Corporation Japan, all rights reserved. 1 Copyright 2013, Oracle Corporation Japan, all rights reserved. エスケイプ フロム レガシー J2EE 大橋勝之 日本オラクル株式会社コンサルティングサービス 以下の事項は 弊社の一般的な製品の方向性に関する概要を説明するものです また 情報提供を唯一の目的とするものであり いかなる契約にも組み込むことはできません 以下の事項は マテリアルやコード

More information

WebOTX V6 J2EEアプリケーションのトラブルシューティング

WebOTX V6 J2EEアプリケーションのトラブルシューティング WebOTX V6 J2EE アプリケーションのトラブルシューティング ( リソース参照 EJB 参照 ) 2006 年 11 月初版 改版履歴 i 目次 1 はじめに...1 2 リソース参照 EJB 参照について...1 3 リソース参照 EJB 参照の設定に問題がある時のエラーと対処方法について...2 4 設定方法...2 4.1 リソース参照...3 4.1.1 WebOTX 配備ツールを使用する場合...3

More information

PowerPoint Presentation

PowerPoint Presentation Java EE 7 および GlassFish Server 概要と最新情報 Fusion Middleware, Principal Product Manager John Clingan / ジョン クリンガン 1 Copyright 2012, Oracle and/or its affiliates. All rights reserved. 2 Copyright 2012, Oracle

More information

1.SqlCtl クラスリファレンス SqlCtl クラスのリファレンスを以下に示します メソッドの実行中にエラーが発生した場合は標準エラー出力にメッセージを出力します (1)Connect() メソッド データベースへ connect 要求を行います boolean Connect(String

1.SqlCtl クラスリファレンス SqlCtl クラスのリファレンスを以下に示します メソッドの実行中にエラーが発生した場合は標準エラー出力にメッセージを出力します (1)Connect() メソッド データベースへ connect 要求を行います boolean Connect(String 目次 1.SqlCtl クラスリファレンス 2 (1)Connect() メソッド 2 (2)DisConnect() メソッド 3 (3)Commit() メソッド 3 (4)Rollback() メソッド 4 2.SqlStm クラスリファレンス 5 (1)Prepare() メソッド 5 (2)Execute() メソッド 6 (3)Release() メソッド 6 (4)Immediate()

More information

Android Layout SDK プログラミング マニュアル

Android Layout SDK プログラミング マニュアル プログラミングマニュアル Version 1.3.0 用 更新履歴 年月日 バージョン 履歴 2014.09.08 1.2.0.0 新規 (Layout Utilities ユーザーズ ガイド ) 2016.08.16 1.3.0.0 モバイル端末用レイアウトで直線部品と矩形部品に対応 モバイル端末用レイアウトファイルを CLFX から XML へ変更 Layout Print Engine から

More information

WebアプリケーションサーバJBoss入門

WebアプリケーションサーバJBoss入門 Web アプリケーションサーバ JBoss 入門 ~JBoss 移行時の注意点 ~ 2012/9/7 株式会社日立ソリューションズ OSS ソリューションビジネス推進センタ Web アプリケーションサーバ JBoss 入門 ~JBoss 移行時の注意点 ~ Contents 1. 章はじめに 2. 章 JBoss 移行手順 3. 章 JBoss 移行時の注意点 4. 章 JBoss 移行アセスメントサービスのご紹介

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション オブジェクト指向 プログラミング演習 第 4 回継承 オーバーライド ポリモルフィズム 今日のお題 継承 オーバーライド ポリモルフィズム 継承 (inherit) あるクラス c のサブクラス s を定義する : このとき s は c を継承していると言う 何かの下位概念を表すクラスは その上位概念を表すクラスの属性や機能を ( 基本的には ) 使える 継承の例 大学生 長崎県立大学の学生 大学生を継承する概念

More information

データアダプタ概要

データアダプタ概要 データベース TableAdapter クエリを実行する方法 TableAdapter クエリは アプリケーションがデータベースに対して実行出来る SQL ステートメントやストアドプロシージャで TableAdapter で型指定されたメソッドと仕て公開される TableAdapter クエリは 所有るオブジェクトのメソッドと同様に 関連付けられたメソッドを呼び出す事に依り実行出来る TableAdapter

More information

メソッドのまとめ

メソッドのまとめ メソッド (4) 擬似コードテスト技法 http://java.cis.k.hosei.ac.jp/ 授業の前に自己点検以下のことがらを友達に説明できますか? メソッドの宣言とは 起動とは何ですか メソッドの宣言はどのように書きますか メソッドの宣言はどこに置きますか メソッドの起動はどのようにしますか メソッドの仮引数 実引数 戻り値とは何ですか メソッドの起動にあたって実引数はどのようにして仮引数に渡されますか

More information

intra-mart Accel Platform — アクセスコンテキスト 拡張プログラミングガイド   第2版  

intra-mart Accel Platform — アクセスコンテキスト 拡張プログラミングガイド   第2版   Copyright 2014 NTT DATA INTRAMART CORPORATION 1 Top 目次 1. 改訂情報 2. はじめに 2.1. 本書の目的 2.2. 対象読者 2.3. 対象開発モデル 2.4. サンプルコードについて 2.5. 本書の構成 3. アクセスコンテキストの実装 3.1. アクセスコンテキストの実装例 3.2. アクセスコンテキストのキャッシュ機能の実装例 3.3.

More information

S2DaoでもN:Nできます

S2DaoでもN:Nできます S2Dao でも N:N できます 1 自己紹介 名前 : 木村聡 ( きむらさとし ) Seasarプロジェクトコミッタ : S2Struts S2Mai 舞姫 仕事 ( 株 ) フルネス フレームワーク 自動生成ツール 2 これまで書いたものとか 書籍 : Eclipse で学ぶはじめての Java Seasar 入門 ~ はじめての DI&AOP~ 雑誌 Web 記事 CodeZine DB

More information

JavaプログラミングⅠ

JavaプログラミングⅠ Java プログラミング Ⅰ 12 回目クラス 今日の講義で学ぶ内容 クラスとは クラスの宣言と利用 クラスの応用 クラス クラスとは 異なる複数の型の変数を内部にもつ型です 直観的に表現すると int 型や double 型は 1 1 つの値を管理できます int 型の変数 配列型は 2 5 8 6 3 7 同じ型の複数の変数を管理できます 配列型の変数 ( 配列変数 ) クラスは double

More information

— intra-mart Accel Platform セットアップガイド (WebSphere編)   第7版  

— intra-mart Accel Platform セットアップガイド (WebSphere編)   第7版   Copyright 2013 NTT DATA INTRAMART CORPORATION 1 Top 目次 intra-mart Accel Platform セットアップガイド (WebSphere 編 ) 第 7 版 2016-12-01 改訂情報はじめに本書の目的前提条件対象読者各種インストール 設定変更 intra-mart Accel Platform 構成ファイルの作成 WebSphereの設定

More information

OpenRulesモジュール

OpenRulesモジュール リリースノート初版 2014-09-01 1 改訂情報 変更年月日 変更内容 2014-09-01 初版 目次 2 はじめに 本書の目的 本書では OpenRules を intra-mart で利用するためのモジュールのリリース内容について記載されています なお OpenRules 製品本体のリリースについては OpenRules のリリースノートをご確認ください 製品の利用対象 次の利用者を対象としています

More information

サーブレット (Servlet) とは Web サーバ側で動作する Java プログラム 通常はapache 等のバックグラウンドで動作する Servletコンテナ上にアプリケーションを配置 代表的な Servlet コンテナ Apache Tomcat WebLogic WebSphere Gla

サーブレット (Servlet) とは Web サーバ側で動作する Java プログラム 通常はapache 等のバックグラウンドで動作する Servletコンテナ上にアプリケーションを配置 代表的な Servlet コンテナ Apache Tomcat WebLogic WebSphere Gla サーブレット 1 オブジェクト指向プログラミング特論 サーブレット (Servlet) とは Web サーバ側で動作する Java プログラム 通常はapache 等のバックグラウンドで動作する Servletコンテナ上にアプリケーションを配置 代表的な Servlet コンテナ Apache Tomcat WebLogic WebSphere GlassFish 2 オブジェクト指向プログラミング特論

More information

デザインパターン第一章「生成《

デザインパターン第一章「生成《 変化に強いプログラミング ~ デザインパターン第一章 生成 ~ 梅林 ( 高田明宏 )@ わんくま同盟 デザインパターンとは何か (1) デザインパターンの定義 ソフトウェア開発におけるデザインパターンとは 過去のソフトウェア設計者が発見し編み出した設計ノウハウを蓄積し 名前をつけ 再利用しやすいように特定の規約に従ってカタログ化したもの (Wikipedia) 参考書籍 オブジェクト指向における再利用のためのデザインパターン

More information

Agenda SPARC Enterprise T シリーズのご紹介 Java Concurrency Utilities のご紹介 Java SE 7 新機能のご紹介 まとめ 2

Agenda SPARC Enterprise T シリーズのご紹介 Java Concurrency Utilities のご紹介 Java SE 7 新機能のご紹介 まとめ 2 SPARC Enterprise T-シリーズで 実力を発揮する Javaコンカレンシーユーティ リティ サン マイクロシステムズ株式会社 Java エバンジェリスト 寺田 佳央 http://blogs.sun.com/yosshi 1 Agenda SPARC Enterprise T シリーズのご紹介 Java Concurrency Utilities のご紹介 Java SE 7 新機能のご紹介

More information

5-1- 応開発フレームワークに関する知識 開発フレームワークを利用した Web アプリケーションの実装方法を理 Ⅰ. 概要解する MVC や OR マッピング DIxAOP といった技術を理解する Ⅱ. 対象専門分野職種共通 Ⅲ. 受講対象者 本カリキュラムの 5-1- 基開発フレームワークに関す

5-1- 応開発フレームワークに関する知識 開発フレームワークを利用した Web アプリケーションの実装方法を理 Ⅰ. 概要解する MVC や OR マッピング DIxAOP といった技術を理解する Ⅱ. 対象専門分野職種共通 Ⅲ. 受講対象者 本カリキュラムの 5-1- 基開発フレームワークに関す 5-1- 応開発フレームワークに関する知識 1 5-1- 応開発フレームワークに関する知識 開発フレームワークを利用した Web アプリケーションの実装方法を理 Ⅰ. 概要解する MVC や OR マッピング DIxAOP といった技術を理解する Ⅱ. 対象専門分野職種共通 Ⅲ. 受講対象者 本カリキュラムの 5-1- 基開発フレームワークに関する知識 を受講受講前提済みであること または 同等の知識を有すること

More information

WAS V9 アナウンスメント・セミナー資料

WAS V9 アナウンスメント・セミナー資料 WebSphere Application Server V9 アナウンスメント セミナー V9 への移行 日本アイ ビー エム株式会社クラウド ソフトウェア事業部アプリケーション プラットフォーム田中孝清 アジェンダ この章では WAS V8.5 Full プロファイルや WAS 8.0 以前から,WAS V9.0 traditional へのマイグレーションを扱います Liberty プロファイルへの移行は扱いません

More information

intra-mart Accel Platform

intra-mart Accel Platform intra-mart Accel Platform IM- 共通マスタスマートフォン拡張プログラミングガイド 2012/10/01 初版 変更年月日 2012/10/01 初版 > 変更内容 目次 > 1 IM- 共通マスタの拡張について...2 1.1 前提となる知識...2 1.1.1 Plugin Manager...2 1.2 表記について...2 2 汎用検索画面の拡張...3

More information

JavaプログラミングⅠ

JavaプログラミングⅠ Java プログラミング Ⅱ 11 回目スレッド課題 確認 問題次の各文は正しいか誤っているか答えなさい (1) スレッドは 1 つの実行箇所をもつ一連の処理の流れである (2) マルチスレッドで各スレッドの処理は並行して実行される (3) Java はマルチスレッド処理を記述できない (4) 新たにスレッドを生成する場合 Thread クラスを拡張し かつ Runnable インタフェースを実装する必要がある

More information

Oracle9i JDeveloperによるWebサービスの構築

Oracle9i JDeveloperによるWebサービスの構築 Oracle9i JDeveloper Web Web Web Web Web Web EJB Web EJB Web Web Oracle9iAS Apache SOAP WSDL Web Web Web Oracle9i JDeveloper Java XML Web Web Web Web Simple Object Access Protocol SOAP :Web Web Services

More information

Prog2_10th

Prog2_10th 2017 年 12 月 7 日 ( 木 ) 実施 効果音の付加 SoundPool とは Android には音を処理するクラスが複数用意されているが, その中で SoundPool は, 予め音のデータをメモリ上に読み込んで再生するため, 長い音楽よりも短い音を扱うのに適している また,SoundPool では遅延が無いので, 効果音を付加したい場面で用いられる 授業の準備 1)Android Studio

More information

Java の ConcurrentHashMap における同期化 バッドケースとその対処法 2013 年 9 月湊隆行 1. はじめに表 1.1 に示すように Java の Collections Framework には 3 つの世代があります バージョン 1.0 から存在するレガシー API バ

Java の ConcurrentHashMap における同期化 バッドケースとその対処法 2013 年 9 月湊隆行 1. はじめに表 1.1 に示すように Java の Collections Framework には 3 つの世代があります バージョン 1.0 から存在するレガシー API バ Java の ConcurrentHashMap における同期化 バッドケースとその対処法 2013 年 9 月湊隆行 1. はじめに表 1.1 に示すように Java の Collections Framework には 3 つの世代があります バージョン 1.0 から存在するレガシー API バージョン 1.2 で追加されたロック機構を使わない API および バージョン 5.0 で追加された同期化コストが低い

More information

IronPython による柔軟なゲーム開発 筑波大学 AmusementCreators

IronPython による柔軟なゲーム開発 筑波大学 AmusementCreators IronPython による柔軟なゲーム開発 筑波大学 AmusementCreators 自己紹介 Amusement Makers ではありません 注意 IronPython って?.Net Framework および Mono 上で動作する Python.NetFramework Mono は共通中間言語 (CIL) のための仮想マシン CIL が動く仮想マシンの仕様は共通言語基盤 (CLI)

More information

intra-mart Accel Platform — 外部ソフトウェア接続モジュール 仕様書   第3版  

intra-mart Accel Platform — 外部ソフトウェア接続モジュール 仕様書   第3版   Copyright 2012 NTT DATA INTRAMART CORPORATION 1 Top 目次 改訂情報はじめに本書の目的対象読者本書の構成概要外部ソフトウェア接続モジュールとは仕様外部ソフトウェア接続モジュールの構成サンプルプログラムサンプル内容動作に必要な環境構築プログラムソースログイン セキュリティ環境の構築外部ソフトウェア連携時の認可設定 2 改訂情報 変更年月日 変更内容 2012-12-21

More information

Microsoft PowerPoint - prog09.ppt

Microsoft PowerPoint - prog09.ppt プログラミング言語 3 第 09 回 (2007 年 11 月 26 日 ) 1 今日の配布物 片面の用紙 1 枚 今日の課題が書かれています 本日の出欠を兼ねています 2/40 今日やること http://www.tnlab.ice.uec.ac.jp/~s-okubo/class/java06/ にアクセスすると 教材があります 2007 年 11 月 27 日分と書いてある部分が 本日の教材です

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション 5 月 Java 基礎 1 タイトル Java 基礎 2 日間 概要 目的 サーバサイドのプログラミング言語で最もシェアの高い Java SE の基本を習得します 当研修ではひとつの技術ごとに実用的なアプリケーションを作成するため 効果的な学習ができます Java SE の多くの API の中で 仕事でよく利用するものを中心に効率よく学びます 実際の業務で最も利用される開発環境である Eclipse

More information

AWS Lambda で変わるバッチの世界 ~ CPU 時間トータル 100 時間の処理を 10 分で終わらせるには~

AWS Lambda で変わるバッチの世界 ~ CPU 時間トータル 100 時間の処理を 10 分で終わらせるには~ AWS Lambdaで変わる バッチの世界 ~ CPUトータル100時間を10分で終わらせるには ~ 株式会社ワークスアプリケーションズ 東 卓弥 プロフィール 氏名 会社 所属 役職 東 卓弥 株式会社ワークスアプリケーションズ Site Reliability Engineering Div. Manager 対象の処理 画面の高速描画のための前処理 HTML, JS, CSSの最適化 HTMLテンプレートの事前コンパイル

More information

Prog2_9th

Prog2_9th 2013 年 11 月 21 日 ( 木 ) 実施例外処理 Java 言語では, 作成したプログラムを実行する際に, 記述した処理が想定しない事態によって実行できなくなる場合を例外と呼び, その例外への対処, 即ち例外処理が求められる これまでの教材に登場した例外の中で,IOException はコンパイラがチェックするため, 例外処理を必ず記述しなければコンパイルが出来ないものであるのに対して,ArithmeticException

More information

intra-mart Accel Platform — IM-共通マスタ スマートフォン拡張プログラミングガイド   初版  

intra-mart Accel Platform — IM-共通マスタ スマートフォン拡張プログラミングガイド   初版   Copyright 2012 NTT DATA INTRAMART CORPORATION 1 Top 目次 1. 改訂情報 2. IM- 共通マスタの拡張について 2.1. 前提となる知識 2.1.1. Plugin Manager 2.2. 表記について 3. 汎用検索画面の拡張 3.1. 動作の概要 3.1.1. 汎用検索画面タブの動作概要 3.2. 実装の詳細 3.2.1. 汎用検索画面タブの実装

More information

Java EE 7 アプリケーション設計ガイド - JSF(JavaServer Faces) 2.2 入門編

Java EE 7 アプリケーション設計ガイド - JSF(JavaServer Faces) 2.2 入門編 Java EE 7 アプリケーション設計ガイド - JSF(JavaServer Faces) 2.2 入門編 日本アイ ビー エムシステムズ エンジニアリング株式会社 1 Disclaimer この資料は日本アイ ビー エム株式会社ならびに日本アイ ビー エムシステムズ エンジニアリング株式会社の正式なレビューを受けておりません 当資料は 資料内で説明されている製品の仕様を保証するものではありません

More information

OpenRulesモジュール

OpenRulesモジュール 目次目次 Copyright 2014 NTT DATA INTRAMART CORPORATION クイック検索検索 1 Top 目次 1. 改訂情報 2. はじめに 3. 機能 4. システム要件 5. 検証済み環境 6. サードパーティライセンス一覧 7. 著作権および特記事項 2 改訂情報 変更年月 日 2014-09- 01 変更内容 初版 3 はじめに 本書の目的 本書では OpenRules

More information

Javaと マルチスレッド

Javaと マルチスレッド Javaとマルチスレッド 2016/7/30 湯川敦 目次 1. きっかけ 2. マルチスレッド対応が必要になる場面とは? 3. Javaのプロセスとスレッドについて 4. Javaのメモリ構成について 5. スレッドセーフについて 6. スレッド間競合における問題の回避策あれこれ 7. まとめ きっかけ 現場の新人 SE より Web アプリケーションサーバに関して 以下の質問を受けた ConcurrentModificationException

More information

ガイダンス

ガイダンス プログラムの 1 行目に以下を入れること // vm12345 杉崎えり子 情報科学 B 第 14 回課題作成 3 情報科学 B Info2/3 info14 今日のフォルダー作成 情報科学 B 第 14 回課題作成 3 Report14_1.java 1 教科書 資料 過去のプログラムを見ながらで OK 課題 3( 提出 ) ボタンとアニメーション ( 第 13 回 ) を組み合わせて オリ ジナルのウィンドウを作成する

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション Oracle Application Server 10g (10.1.2) Oracle Application Server10g(10.1.2) : data-sources.xml WAR (Web ) : orion-web.xml JAR (Enterprise JavaBeans) : orion-ejb-jar.xml EAR ( ) : orion-application.xml

More information

Microsoft PowerPoint - prog09.ppt

Microsoft PowerPoint - prog09.ppt プログラミング言語 3 第 09 回 (2007 年 11 月 26 日 ) 1 今日の配布物 片面の用紙 1 枚 今日の課題が書かれています 本日の出欠を兼ねています 2/40 1 今日やること http://www.tnlab.ice.uec.ac.jp/~s-okubo/class/java06/ にアクセスすると 教材があります 2007 年 11 月 27 日分と書いてある部分が 本日の教材です

More information

intra-mart Accel Platform — Slack連携モジュール 利用ガイド   初版  

intra-mart Accel Platform — Slack連携モジュール 利用ガイド   初版   Copyright 2018 NTT DATA INTRAMART CORPORATION 1 Top 目次 intra-mart Accel Platform Slack 連携モジュール利用ガイド初版 2018-12-01 1. 改訂情報 2. はじめに 3. システム要件 3.1. intra-mart Accel Platform 3.2. 検証済み環境 3.2.1. サーバ環境 3.2.2.

More information

About me! 足立昌彦 / +Masahiko.Adachi )! バイドゥ株式会社技術顧問 (Simeji)! 株式会社カブク Co-Founder! Google Developer Expert (Android)

About me! 足立昌彦 / +Masahiko.Adachi )! バイドゥ株式会社技術顧問 (Simeji)! 株式会社カブク Co-Founder! Google Developer Expert (Android) Discover Support Library Masahiko Adachi @adamrokcer / +Masahiko.Adachi 28 th Sep, 2013 About me! 足立昌彦 ( @adamrocker / +Masahiko.Adachi )! バイドゥ株式会社技術顧問 (Simeji)! 株式会社カブク Co-Founder! Google Developer Expert

More information

Real-Time Java ~ 組み込みからエンタープライズまで ~ サン マイクロシステムズ株式会社ソフトウェア OEM 営業本部草薙昭彦

Real-Time Java ~ 組み込みからエンタープライズまで ~ サン マイクロシステムズ株式会社ソフトウェア OEM 営業本部草薙昭彦 Real-Time Java ~ 組み込みからエンタープライズまで ~ サン マイクロシステムズ株式会社ソフトウェア OEM 営業本部草薙昭彦 本日のトピック リアルタイムシステムとは Java リアルタイム仕様とは Sun Java Real-Time System 2.0 2 リアルタイム Java @ JavaOne 2007 3 リアルタイム Java @ JavaOne 2007 4 リアルタイムシステムとは

More information

Prog2_10th

Prog2_10th 2016 年 12 月 8 日 ( 木 ) 実施 効果音の付加 SoundPool とは Android には音を処理するクラスが複数用意されているが, その中で SoundPool は, 予め音のデータをメモリ上に読み込んで再生するため, 長い音楽よりも短い音を扱うのに適している また,SoundPool では遅延が無いので, 効果音を付加したい場面で用いられる 授業の準備 1)Android Studio

More information

HashMapからConcurrentHashMapへの移行

HashMapからConcurrentHashMapへの移行 HashMap から ConcurrentHashMap への移行 レガシー アプリケーションにおける注意点 2012 年 1 月 4 日橋口雅史 1. はじめにアプリケーションでは キーと値のマッピングが多用されます 例えば ユーザー名 というキーにユーザーの 情報 をマッピングするといった用途で java.util.map インタフェースは広く使われています 特に ハッシュテーブルに基づいて高速にマップを検索

More information

Javaの作成の前に

Javaの作成の前に メディアプロジェクト演習 1 参考資料 Javaとは JavaScript と Java 言語の違い オブジェクト指向 コンストラクタ サーブレット 本資料内のページ番号は, 以下の参考書のページを引用している 高橋麻奈 : やさしい Java, ソフトバンククリエイティブ (2,625 円 ) はじめに プログラミング言語とは? オブジェクト指向とは? Java 言語とは? JavaとJavaScriptの違いとは?

More information

開発・運用時のガイド JDK11への移行に伴う留意点

開発・運用時のガイド JDK11への移行に伴う留意点 開発 運用時のガイド JDK11 への移行に伴う留意点 2019.10 O c t o b e r はじめに 本書は 開発 運用フェーズで使用するドキュメントとして Java TM Development Kit 8 から Java TM Development Kit 11 への移行に伴う留意点について記述しています 1. 対象とする読者 本書は Java TM Development Kit 11

More information

ORACLE FUSION MIDDLEWARE Tech Topic Meeting

ORACLE FUSION MIDDLEWARE  Tech Topic Meeting Java Persistence 2.0 と EclipseLink について 日本オラクル株式会社 Agenda Java Persistence API(JPA) DB アクセス技術の変遷 JPA 概要 JPA アーキテクチャ EclipseLink EclipseLink JPA 拡張機能 Java Persistence 2.0 Oracle TopLink

More information

Microsoft PowerPoint - chap10_OOP.ppt

Microsoft PowerPoint - chap10_OOP.ppt プログラミング講義 Chapter 10: オブジェクト指向プログラミング (Object-Oriented Programming=OOP) の入り口の入り口の入り口 秋山英三 F1027 1 例 : 部屋のデータを扱う // Test.java の内容 public class Test { public static void main(string[] args) { double length1,

More information

Gartner Day

Gartner Day J2EE 1 J2EE C AP 2 J2EE AP DD java *.class java *.class java *.class *.class DD EAR, WAR, JAR orionapplicationclient.xmweb.xmapplication.jar.xml orion- orion-ejb- ml Oracle Application Server 10g *.jsp

More information

ガイダンス

ガイダンス プログラムの 1 行目に自分の名前を入れること // vm12345 杉崎えり子 情報科学 B 第 14 回課題作成 3 情報科学 B Info2/3 info14 今日のフォルダー作成 情報科学 B 第 14 回課題作成 3 Report14_1.java 1 教科書 資料 過去のプログラムを見ながらで OK 課題 3( 提出 ) ボタンとアニメーション ( 第 13 回 ) を組み合わせて オリ

More information

intra-mart WebPlatform/AppFramework

intra-mart WebPlatform/AppFramework intra-mart WebPlatform/AppFramework Ver.7.0 Seasar2 連携プログラミングガイド 2010/11/30 第 3 版 > 変更年月日変更内容 2008/07/07 初版 2009/02/27 第 2 版 3.1.2.1.1 im_hotdeploy.diconの設定 を追加 2010/11/30 第 3 版 3.1.2.2 Hot deploy

More information

Java言語 第1回

Java言語 第1回 Java 言語 第 2 回簡単な Java プログラムの作成と実行 知的情報システム工学科 久保川淳司 kubokawa@me.it-hiroshima.ac.jp 簡単な Java プログラム Java プログラムのファイル名 Java プログラムのファイル名命名ルール ファイル名とクラス名は同じでなければならない HelloJava.java public class HelloJava { public

More information

Javaセキュアコーディングセミナー東京 第2回 数値データの取扱いと入力値の検証 演習解説

Javaセキュアコーディングセミナー東京 第2回 数値データの取扱いと入力値の検証 演習解説 Japan Computer Emergency Response Team Coordination Center 電子署名者 : Japan Computer Emergency Response Team Coordination Center DN : c=jp, st=tokyo, l=chiyoda-ku, email=office@jpcert.or.jp, o=japan Computer

More information

基本情報STEP UP演習Java対策

基本情報STEP UP演習Java対策 トレーニング編 1. 予約語 extends アクセスレベル class サブクラス名 extends スーパクラス名 { (1) スーパクラス ( 既存のクラス ) を拡張して, サブクラス ( 新しいクラス ) を定義する場合に extends を利用する (2) extends の後ろには, スーパクラスの名前を一つだけ指定できる (3) サブクラスからインスタンスを生成すると, スーパクラスに定義されたインスタンス変数やメソッドがこのインスタンス内部に引き継がれる

More information

Spring Framework Web Web Web DB AOP DI Java EE 3 Web WebMVC Web Java 4 DB H2 Database Java H2 Database http://www.h2database.com/ Version 1.0 Zip 5 H2 > cd $H2_HOME/bin > java cp h2.jar org.h2.tools.server

More information

untitled

untitled Java EE EJB SOA 2007 11 2 Java Java Java (JJUG) Java http://www.java-users.jp/ Java JJUG 2007 Fall 11 6 ( ) http://www.javausers.jp/contents/events/ccc2007fall/ EJB SOA EJB SOA IT EoD IT X-Over Development

More information

目次 はじめに... 2 無料トライアルのサインアップ方法... 3 トライアル環境へのアクセス 参考情報

目次 はじめに... 2 無料トライアルのサインアップ方法... 3 トライアル環境へのアクセス 参考情報 2018 年 11 月 日本オラクル株式会社 目次 はじめに... 2 無料トライアルのサインアップ方法... 3 トライアル環境へのアクセス... 11 参考情報... 14 1 はじめに このガイドは Oracle Cloud の無料トライアルを利用登録 ( サインアップ ) するための手順書です 本お申込みでご利用いただけるサービスについては 以下サイトの [ ご利用可能な Oracle サービス

More information

メディプロ1 Javaプログラミング補足資料.ppt

メディプロ1 Javaプログラミング補足資料.ppt メディアプロジェクト演習 1 Javaプログラミング補足資料 l Javaとは l JavaScript と Java 言語の違い l オブジェクト指向 l コンストラクタ l 継承 抽象クラス 本資料内のページ番号は, 以下の参考書のページを引用している高橋麻奈 : やさしい Java, ソフトバンククリエイティブ (2,625 円 ) はじめに l プログラミング言語とは? l オブジェクト指向とは?

More information

Microsoft Word - Android_SQLite講座_画面800×1280

Microsoft Word - Android_SQLite講座_画面800×1280 Page 24 11 SQLite の概要 Android にはリレーショナルデータベースである SQLite が標準で掲載されています リレーショナルデータベースは データを表の形で扱うことができるデータベースです リレーショナルデータベースには SQL と呼ばれる言語によって簡単にデータの操作や問い合わせができようになっています SQLite は クライアントサーバ形式ではなく端末の中で処理が完結します

More information

WTM2019SingleSignOn

WTM2019SingleSignOn [Java 開発者向け ] シングルサインオンへの対応 - Java カスタマイズコードの書き方 1/45 OUTLINE Spring Security Spring Security を使った認証の仕組み Spring Security を使ったシングル サインオン 2/45 Spring Security 3/45 Spring Security とは アプリケーションのセキュリティを高めるためのフレームワーク

More information