QueryRunner的使用


public class JdbcUtil {
private static ComboPooledDataSource dataSource =new ComboPooledDataSource();
public static ComboPooledDataSource getDataSource()
{
return dataSource;
}

}

src目錄下c3p0-config.xml

 

從數據庫中取count(*)數據

1         int topicNum=0; 2 QueryRunner runner= new QueryRunner(JdbcUtil.getDataSource()); 3 String sql ="select count(*) from topic where type_id= ? order by time desc"; 4 Object[] params={typeId}; 5 topicNum=(int)(long) runner.query(sql,new ScalarHandler(),params); 6 return topicNum;

 

取一條數據   其中表的字段名字和類的名字要對應相同

1         Topic newlyTopic=null; 2 QueryRunner runner= new QueryRunner(JdbcUtil.getDataSource()); 3 String sql ="select * from topic where type_id= ? order by time desc"; 4 Object[] params={typeId}; 5 newlyTopic= runner.query(sql,new BeanHandler<Topic>(Topic.class),params); 6 return newlyTopic;

 

取集合數據List<>返回    其中表的字段名字和類的名字要對應相同

1         List<Topic> topicList=new ArrayList<Topic>(); 2 QueryRunner runner= new QueryRunner(JdbcUtil.getDataSource()); 3 String sql ="select * from topic where type_id= ? order by time desc"; 4 Object[] params={typeId}; 5 topicList=runner.query(sql, new BeanListHandler<Topic>(Topic.class),params); 6 return topicList;

 插入

復制代碼
 1         QueryRunner runner= new QueryRunner(JdbcUtil.getDataSource());  2 String sql ="insert into topic(name,author,content,time,type_id) values(?,?,?,?,?)";  3 Object[] params={topic.getName(),topic.getAuthor(),topic.getContent(),topic.getTime(),topic.getTypeId()};  4 try {  5 //事務開始  6  runner.update(sql,params);  7 //事務提交  8 } catch (SQLException e) {  9  e.printStackTrace(); 10 //事務回滾 11 throw e; 12 }
復制代碼

更新

復制代碼
 1         QueryRunner runner= new QueryRunner(JdbcUtil.getDataSource());  2 String sql ="update topic set name=? , content=? , time=? where id= ?";  3 Object[] params={topic.getName(),topic.getContent(),topic.getTime(),topic.getId()};  4 try {  5 //事務開始  6  runner.update(sql,params);  7 //事務提交  8 } catch (SQLException e) {  9  e.printStackTrace(); 10 //事務回滾 11 throw e; 12 }
復制代碼


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM