zoukankan      html  css  js  c++  java
  • 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         }
    复制代码
  • 相关阅读:
    linux系统中SSH免密设置报错
    SSH config语法关键字
    共筑新零售 | 奇点云与阿里云在泛零售数据中台领域达成合作!
    20年零售数字化老兵的“中台战事”
    JAVA中的 <T extends Comparable<? super T>> 如何理解
    JAVA中的比较:comparable、compareTo
    JAVA中PrintWriter的用法
    JAVA中Map类对象如何实现遍历
    JAVA实现通过中序遍历和后序遍历序列建树,并求树的高度,用层次遍历做验证
    密码学相关知识
  • 原文地址:https://www.cnblogs.com/zhuzhuxuan/p/5534375.html
Copyright © 2011-2022 走看看