業務システムでデータベースは必須と思います。
データベースといえば、SQLが必須と思います。
昔、Java始めた頃は、iBatisもMyBatisもなかったので、Javaに標準についてるjavax.sql使ってJDBC介して操作してましたので、SQLを直接ソースコードにべた書きしたり、プロパティファイルから読んだり、独自テキストファイルに記述されたのを読んだりしていて、
かなり統一性に欠ける、メンテナンス性の悪い、後で苦労することしてました。
iBatis (MyBatisの前身)を知ってから、
コードが大変短くなり、SQLをまとめて分類して置いておけ、やりたい事がJavaコードに制約されず、簡潔に速くできるようになりました。
MyBatisのxml内で、条件分岐、パラメータ以外のメタ文字も指定できるので、プログラム側で行うか、静的に行うかの選択肢が増えて、ケースバイケースな事がしやすくなります。
xml内if利用例
<!-- 商品マスタアップロードエクセル列マッピングリスト -->
<select id="selExcelMapList" parameterType="ParamMstMnt" resultMap="ExcelMapMap">
SELECT
ID, m.IDX_EXCEL,
fc_sel_columntitle('goodslist', m.NM_TBLFLD, #{cdLang}) AS NM_EXCELTXT,
m.NM_TBLFLD, 1 AS FLG_CHECKED,
fc_sel_columnfld('goodslist', m.NM_TBLFLD) AS NM_JAVAFLD,
c.NM_FORMATTER
FROM
m_defupldclms m
INNER JOIN m_jqcolumn c ON (m.NM_TBLFLD = c.NM_TBLFIELD AND c.ID_GRID = 'goodslist')
WHERE
1 = 1
<if test="!isSK">
AND c.IS_EDITABLE_CUST = 1 OR c.NM_TBLFIELD = 'CD_JAN'
</if>
ORDER BY ID
</select>
|