「SE業務」カテゴリーアーカイブ

Excelのデフォルトシート数を1にする

Excelで新しいブックを作成する時、初期設定だとシートが3つのExcelファイルになります。3シート以上使用する場合は、問題ないのですが、仕事の現場では1シートだけのブックがたくさんあります。

私は以下の理由からデフォルトシート数を1に変更しています。

  • 2シート目、3シート目に何か情報があるのか確認する手間が発生する。
  • 使ってないシート分のファイルサイズが削減できる。1シートだと7KBで、3シートだと8KBぐらいあって、だいたい1KBは削減できる。

設定は「Excelのオプション」の「ブックのシート数」で変更できます。

単純なことですが、やっておいて損はない!。。。と思います。


DB2ですべてのテーブルを一括削除するSQL

テーブル定義が結構大きく変わるときに、「全部DROP TABLE→CREATE TABLEするか!」っと思い立ったけど、DROP TABLEは複数のテーブルを指定できないみたいで↓のようにDROP文を生成してくれるSQLを作成しました。

SYSIBM.SYSTABLESの詳細はこちら
http://www.ibm.com/support/knowledgecenter/SSEPEK_11.0.0/sqlref/src/tpc/db2z_sysibmsystablestable.html

TYPE、NAME、CREATORなどをWHERE句に入れれば、いろんなパターンに対応できるかと。


TomcatのmaxParameterCountを設定する

Webアプリケーション自動生成ツールを使用して、JavaベースのWebアプリを開発をしていたときに直面した課題。ある日、以下のようなエラーログが出力された。

ざっくり和訳すると「リクエストパラメータの上限を超えました。超えた分のパラメータは無視されます。上限を変えるにはConnectorのmaxParameterCountを参照してください」とのこと。

catalina.outに出力されていたけど、特にTomcatとしてエラーになることなくこのログが出力されていた。しかし、パラメータが無視されたらまともに動かない。。。

これまでスクラッチで開発する場合は、パラメータの数は自分で把握できていたのですが、今回はある程度コーディングしなくてもいいWebアプリケーション自動生成ツールを使用したためにパラメータの数は自分で把握していませんでした。maxParamterCountのデフォルト値が10,000だったので、とりあえず20,000に変更したら解消しました。

また、これを機にmaxParamterCountに加えて、maxPostSizeも見直した方がよいことが分かりました。設定は、{Tomcatインストールディレクトリ}/conf/server.xml。それぞれの詳細は以下。

パラメータ 内容
maxParamterCount

The maximum number of parameter and value pairs (GET plus POST) which will be automatically parsed by the container. Parameter and value pairs beyond this limit will be ignored. A value of less than 0 means no limit. If not specified, a default of 10000 is used. Note that FailedRequestFilter filter can be used to reject requests that hit the limit.

→要約すると、「最大パラメータ数。超えた分は無視される。0以下をセットすると無制限。指定が無い場合はデフォルト値の10,000となる。」

maxPostSize

The maximum size in bytes of the POST which will be handled by the container FORM URL parameter parsing. The limit can be disabled by setting this attribute to a value less than zero. If not specified, this attribute is set to 2097152 (2 megabytes). Note that the FailedRequestFilter can be used to reject requests that exceed this limit.

→要約すると、「POSTリクエストの最大サイズ(バイト)。0以下を設定すると無制限になる。指定されていない場合は、2MBとなる。」

公式サイト→http://tomcat.apache.org/tomcat-7.0-doc/config/ajp.html

設定例