開発Blog

iSeries上での開発注意点

投稿日:

iシリーズとはいえ、普通のwindows系のサーバと取扱いは変わりません。
インストールも通常のインストーラで可能です。ただし下記の注意点があります。

1.iシリーズのDB2はEBCDICコード
APはJVMで稼動するので意識は必要ないのですが、いざDBにインサートする時にEBCDICコードへの変換が JDBCドライバにより実施されます。
例えば、ある項目で半角文字と全角文字が混在している場合、全角文字が登場する度に前後にshift-in、 shift-outコードが1バイトづつ自動的に付与されます。つまり全角文字の登場回数×2バイトの余裕を持ってテーブル構築しないとDBインサート時にエラーが発生します。(レングスエラー)

2.iシリーズのDB2の方言
標準的なSQLはOKですが、やはり方言があります。例えば「RUN」という文字列はiシリーズのDB2にて予約語扱いの為、テーブル名や項目名には使用できません。

3.Java プログラミングの注意

動作上は問題無いのですが、負荷試験等をやると下記のようなプログラミングは性能が出ません。

a.StringBuffer の推奨
Stringの文字列結合を大量に使ってるString.concat()などで文字列結合をすると内部的に大量のオブジェクト生成がされるのでオーバーヘッドとなります。そのような場合はStringBuffer.appendで対応します。

b.SQLの大量発行
SQLのコンパイルもオーバーヘッドとなるので、無駄なSQLは発行しない。
Statementではなく、PreparedStatementを極力使う。
以上です。

-開発Blog
-

執筆者:

関連記事

no image

intra-mart Advent Calendar 2013 第10日:認可サブジェクトの拡張方法

この記事は、intra-mart Advent Calendar 2013 第10日の記事です。 今回は「認可サブジェクトの拡張方法」をご紹介したいと思います。 intra-mart Accel Pl …

no image

業務スケルトンのバージョンアップ

初めまして。開発本部の齊藤悠です。 本日、eBuilderに組み込まれております「業務スケルトン」のバージョンアップを行ないましたので更新内容をご紹介させて頂きます。 今回の更新では、JavaEE開発 …

no image

新ワークフロー移行ガイド

  ※下記内容は、過去のintra-mart(Ver4.3以前)に関する内容です。最新のintra-martでは、異なる情報であることがありますので、ご注意ください。   「新ワー …

no image

Resin利用時の安定運用について

intra-mart Accel Platformにて、Resin4.0を利用されている場合は、以下のスライドを参考に、弊社推奨の対応の実施をお願いします。 実施してない場合 システムの予期せぬ運用停 …

no image

弊社の社内システムについて

こんにちは、開発本部の大西です。 さすがに、まだ、外部に公開できるAccelPlatformの導入事例がないので、皆さんお困りだと思いますので、参考になるかはわかりませんが、弊社の社内システムで利用し …

まだデータがありません。

RSSRSSRSSRSS