在使用spring框架的系統中,增刪改查操作是經常頻繁的使用,也就是像我這樣的新手經常做的crud操作,我經常使用到的是hibernatetemplate和jdbctemplate來操作。對於oracle資料庫來說,使用hibernatetemplate操作很方便。最近換了sqlserver2008資料庫,而且要處理分頁。老大說使用jdbc直接操作,哎!有了hibernate,很少使用jdbc都快忘記了...
1.使用jdbctemplate分頁查詢,注意sqlserver2008使用的是top分頁操作:
public list getlist(string keywords,string starttime,string endtime,pagenation pagenation)
if(endtime !=null && !"".equals(endtime))
if(keywords !=null && !"".equals(keywords.trim()))
sql+="
order
by createtime desc
";list listcount=this.jdbctemplate.queryforlist(sqlall+sql);
//記錄的總數
pagenation.setrowcount(listcount.size());
public object maprow(resultset rs,int rownum) throws sqlexception
});return list; }}
2.jdbctemplate下的增加記錄操作
//不帶引數的jdbctemplate.update("insert into message values('1, '"你好 "',***)");
//帶引數的
jdbctemplate.update("insert into message values(?,?,***)",
new object);
//帶引數,使用preparestatement
int id =101;
string keywords="你好";
string ***="***";
jdbctemplate.update("insert into message value (?, ?, ?, ?)",
new preparedstatementsetter()
});
3.jdbctemplate下的修改和刪除操作
//表裡有個字段status,0和1表示;不帶引數;
jdbctemplate.update("update message set status=1 where id="+id+"");
jdbctemplate.update("delete from message where id="+id+"");
//表裡有個字段status,0和1表示;帶引數;
jdbctemplate.update("update message set status=? where id=?",
new object);
jdbctemplate.update("delete from message where id=?",new object);
//若要修改欄位的型別,則使用
jdbctemplate.update(sql, new object, new int)
4.jdbctemplate下的查詢操作,介紹兩種方法
public
list gettasklist()
});return
list;
}
4.2 使用迭代器模式list.iterator()方法封裝物件
public list gettasklist()return tasklist;
}
命令模式 Spring框架JdbcTemplate
概述 最近回顧了一下設計模式。想到spring框架中,使用設計模式挺多的。於是搜尋了一下spring中有沒有使用命令模式?參照 命令模式 然後對spring中的jdbctemplate類進行了原始碼閱讀,現在就命令模式,對jdbctemplate中的部分 做一下解讀。命令模式簡介 在軟體設計中,我們...
Spring下jdbcTemplate增刪改查總結
在使用spring框架的系統中,增刪改查操作是經常頻繁的使用,也就是像我這樣的新手經常做的crud操作,我經常使用到的是hibernatetemplate和jdbctemplate來操作。對於oracle資料庫來說,使用hibernatetemplate操作很方便。最近換了sqlserver2008...
spring下的junit測試
今天的學習中遇到乙個問題,測試spring mybaits時單獨使用junit測試,導致不成功,userservice一直空指標。經排查,最後引入了spring test的包,並且加入了如下 就可以了。test runwith springjunit4classrunner.class 整合publ...