i trying execute query returns data related 2 tables name user , device database.i've used mybatis in folowing way:
<resultmap id="usermap" type="com.motilink.server.user"> <result property="company" column="user_company" /> </resultmap> <resultmap id="devicemap" type="com.motilink.server.device"> <result property="deviceid" column="device_id" /> <result property="userid" column="user_id" /> </resultmap> <select id="selectdeviceuser" resultmap="usermap,devicemap"> select device.deviceid device_id, user.company user_company, device.userid user_id device,user user.id = device.userid </select> when try access object value java , cannot values resultmap placed first (usermap) values can obtained. please tell me doing wrong.
code access result map:
sqlsession session = mybatissqlsessionfactory.getsqlsessionfactory() .opensession(); list<user> urs = (list<user>) session.selectlist("selectdeviceuser", null); (user u : urs) { system.out.println("company: " + u.getcompany()); } // list<device> devices = (list<device>) session.selectlist( // "selectdeviceuser", null); // (device d : devices) { // system.out.println("device id: " + d.getdeviceid()); // }
you set resulttype="hashmap" , result list<hashmap<string, object>> result;. can access fields result.get("device_id"), result.get("user_company") etc.
Comments
Post a Comment