DbUtils的简单使用范例
发布时间:2020-12-15 03:17:43 所属栏目:Java 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 DButils是Apache的一个开源数据库访问框架 import java.sql.ResultSet;import java.sql.SQLException;import java.util.List; import javax.sql.DataS
以下代码由PHP站长网 52php.cn收集自互联网 现在PHP站长网小编把它分享给大家,仅供参考
DButils是Apache的一个开源数据库访问框架
import java.sql.ResultSet; import java.sql.SQLException; import java.util.List; import javax.sql.DataSource; import org.apache.commons.dbutils.QueryRunner; import org.apache.commons.dbutils.ResultSetHandler; import org.apache.commons.dbutils.handlers.BeanHandler; import org.apache.commons.dbutils.handlers.BeanListHandler; import com.mysql.jdbc.jdbc2.optional.MysqlDataSource; public class UserDaoImpl implements UserDao { public DataSource getDataSource(){ String url = "jdbc:mysql://127.0.0.1:3306/testdbutils"; MysqlDataSource ds = new MysqlDataSource(); ds.setServerName("127.0.0.1"); // ds.setDatabaseName("testdbutils"); ds.setURL(url); ds.setUser("root"); ds.setPassword("123456"); ds.setCharacterEncoding("utf8"); return ds; } public BeanListHandler<User> getBeanListHandler(){ return new BeanListHandler<User>(User.class); } public BeanHandler<User> getBeanHandler(){ return new BeanHandler<User>(User.class); } public void delete(int id) { QueryRunner runner = new QueryRunner(getDataSource()); try { int affectedRows = runner.update("delete from user where id = ?",id); System.out.println("删除成功,影响的行数:"+affectedRows); } catch (SQLException e) { System.out.println("删除id为"+id+"的记录失败。错误为:"+e.getMessage()); } } public void delete(User user) { delete(user.getId()); } public List<User> getAllUsers() { QueryRunner runner = new QueryRunner(getDataSource()); try { return runner.query("select * from user",getBeanListHandler()); } catch (SQLException e) { e.printStackTrace(); return null; } } public User getById(int id) { QueryRunner runner = new QueryRunner(getDataSource()); User user = null; try { user = runner.query("select * from user where id = ?",getBeanHandler(),id); } catch (SQLException e) { e.printStackTrace(); } return user; } public void save(User user) { QueryRunner runner = new QueryRunner(getDataSource()); try { runner.update("insert into user values(?,?,?)",new Object[]{ user.getId(),user.getName(),user.getAge(),user.getSex(),user.getBirth() }); } catch (SQLException e) { System.out.println("插入失败,失败原因:"+e.getMessage()); } } public long getCount() { QueryRunner runner = new QueryRunner(getDataSource()); try { Long count = runner.query("select count(*) as count from user",new ResultSetHandler<Long>(){ public Long handle(ResultSet rs) throws SQLException { if(rs.next()){ return rs.getLong(1); //或者rs.getLong("count"); } return 0L; } }); //或者用ScalarHandler,这里的new ScalarHandler() 可以加上“count”参数 // Long count = (Long)runner.query("select count(*) as count from user",new ScalarHandler(){ // // @Override // public Object handle(ResultSet rs) throws SQLException { // return super.handle(rs); // } // // }); return (Long)count; } catch (SQLException e) { e.printStackTrace(); return 0L; } } } 以上内容由PHP站长网【52php.cn】收集整理供大家参考研究 如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |