Java8、FWはSpring。DB接続にはMy Batisでmapperを使用します。
この時、AからDまで4つのテーブルが存在しそれぞれを
Java
1List<AClass> resutA = mapper.selectA(); 2List<BClass> resutB = mapper.selectB(); 3List<CClass> resutC = mapper.selectC(); 4List<DClass> resutD = mapper.selectD();
として取得させています。
※AClass、BClass、CClass、DClassはそれぞれ独自に作ったエンティティです。
mapperクラス、mapper.xmlは以下の通りです(カラム等は一部抜粋です)
Java
1public interface mapper { 2 List<AClass> selectA(); 3 List<BClass> selectB(); 4 List<CClass> selectC(); 5 List<DClass> selectD(); 6}
xml
1<?xml version="1.0" encoding="UTF-8"?> 2<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> 3<mapper namespace="mapper"> 4 <resultMap id="AResultMap" type="AClass"> 5 <result collumn="NO" jdbcType="CHAR" property="no" /> 6 </resultMap> 7 <resultMap id="BResultMap" type="BClass"> 8 <result collumn="NO" jdbcType="CHAR" property="no" /> 9 </resultMap> 10 <resultMap id="CResultMap" type="CClass"> 11 <result collumn="NO" jdbcType="CHAR" property="no" /> 12 </resultMap> 13 <resultMap id="DResultMap" type="DClass"> 14 <result collumn="NO" jdbcType="CHAR" property="no" /> 15 </resultMap> 16 <select id="selectA" parameterType="map" resultMap="AResultMap"> 17 select * 18 from A 19 </select> 20 <select id="selectB" parameterType="map" resultMap="BResultMap"> 21 select * 22 from B 23 </select> 24 <select id="selectC" parameterType="map" resultMap="CResultMap"> 25 select * 26 from C 27 </select> 28 <select id="selectD" parameterType="map" resultMap="DResultMap"> 29 select * 30 from D 31 </select> 32</mapper>
これが4つであれば、別メソッドに渡すときに1つずつ書いても冗長化しないかなとは思いますが15~16個となった場合には可読性も悪くなってしまうかなと思います。
そこで、別の変数に代入して別メソッドに引数として渡すようにしようと思うのですがなにかいい方法はありますでしょうか?
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。