1. เพิ่มวิธีการแปลงแผนที่เป็น userInfo ใน UserInfo.java
สาธารณะ userinfo toobject (แผนที่) {userInfo userInfo = ใหม่ userInfo (); userInfo.SetId ((จำนวนเต็ม) map.get (id)); userInfo.setUname ((string) map.get map.get (Unumber)); userinfo.seturegistertime ((วันที่) map.get (UREGISTER_TIME)); return userInfo;} รายการคงที่สาธารณะ toobject (รายการ> รายการ) {userinfos = new ArrayList () สำหรับ (แผนที่: รายการ) {userinfos.add (userInfo);}} ส่งคืน userInfos;}การใช้เลเยอร์ DAO:
รายการสาธารณะ findall () {string sql = select * จาก user_info; รายการ <map <string, object >> list = jdbctemplate.QueryForList (SQ); ส่งคืน userinfo.toobject (รายการ); -สรุป: วิธีนี้สามารถนำไปใช้งานได้ แต่ความเร็วช้ามาก
2. ใช้ jdbcTemplate.query(sql,RowMapper) เพื่อนำไปใช้:
การใช้งานเลเยอร์ Dao
jdbctemplate.Query (SQL, ใหม่ RowMapper <UserInfo> () {@Override Public UserInfo MAPROW (ResultSet RS, int rownum) พ่น sqlexception {userInfo userInfo = ใหม่ userInfo (); userInfo.SetUname userInfo.SetUnumber (Rs.getInt ("Unumber"));สรุป: ไม่สามารถนำกลับมาใช้ใหม่ในวิธีการค้นหาอื่นได้
3. ใช้ RowMapper เพื่อใช้วิธีการอินเทอร์เฟซและแทนที่วิธี MAPROW:
ระดับสาธารณะ UserInfo ใช้ RowMapper, serializable {@Override public userinfo maprow (ผลลัพธ์ RS, int rownum) พ่น sqlexception {userInfo userInfo = ใหม่ userInfo (); userInfo.SetId (rs.getInt (id)); userInfo.SetUname (Rs.getString (Uname)); userInfo.SetUnumber (Rs.getInt (Unumber)); userInfo.SetUnumber (Rs.getInt (Unumber)); userInfo.Seturegistertime (Rs.getDate (UREGISTER_TIME)); ส่งคืน userinfo; -การใช้เลเยอร์ DAO:
public userInfo getById (ID จำนวนเต็ม) {string sql = เลือก * จาก user_info โดยที่ id =?; userInfo userInfo = jdbctemplate.QueryForObject (SQL, ใหม่ userInfo (), วัตถุใหม่ [] {id}); ส่งคืน userinfo; } รายการสาธารณะ findall () {string sql = select * จาก user_info; รายการ userInfos = jdbctemplate.query (SQL, userInfo ใหม่ ()); ส่งคืน userinfos; -4. ใช้เลเยอร์ Dao
jdbctemplate.Query (sql.toString (), ใหม่ BeanPropertyRowMapper <ผู้ใช้ userInfo> (QSFYMXB.CLASS));
ฤดูใบไม้ผลิให้การใช้งาน Rowmapper ที่สะดวกสบาย ---- BeanPropertyRowMapper
สามารถแมปแถวข้อมูลโดยอัตโนมัติกับอินสแตนซ์ของคลาสที่ระบุ มันเป็นครั้งแรกที่สร้างคลาสจากนั้นแมปกับแอตทริบิวต์โดยจับคู่ชื่อ
ตัวอย่างเช่น: ชื่อแอตทริบิวต์ (Vehicleno) ตรงกับคอลัมน์ชื่อเดียวกันหรือคอลัมน์ชื่อเดียวกัน (Vehicle_no) กับคอลัมน์ที่ขีดเส้นใต้ (Vehicle_no) หากคุณสมบัติไม่ตรงกันค่าของคุณสมบัติจะเป็นโมฆะ
ข้างต้นเป็นเนื้อหาทั้งหมดของบทความนี้เกี่ยวกับการใช้แบบสอบถาม JDBCTEMPLATE เพื่อส่งคืนตัวอย่างรหัสการรวบรวมวัตถุที่กำหนดเอง ฉันหวังว่ามันจะเป็นประโยชน์กับทุกคน เพื่อนที่สนใจสามารถอ้างถึงหัวข้ออื่น ๆ ที่เกี่ยวข้องในเว็บไซต์นี้ต่อไป หากมีข้อบกพร่องใด ๆ โปรดฝากข้อความไว้เพื่อชี้ให้เห็น ขอบคุณเพื่อนที่ให้การสนับสนุนเว็บไซต์นี้!