引用Jar后

package jdbcStudy;import cn.itcast.domain.Emp;
import cn.itcast.util.JDBCDruid;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;import java.util.List;/*** @author KuKaFei.Hai* @date 2020/5/11 : 13:02*/
public class JDBCforEmpByTemplate {public static void main(String[] args) {//创建Template对象,并通过阿里巴巴Druid连接池,来获取连接JdbcTemplate jdbcTemplate = new JdbcTemplate(JDBCDruid.getDataSource());//创建SQLString selectSql ="select * from emp ";//执行SQL,并封装JAVA Bean 对象List<Emp> rsSelect = jdbcTemplate.query(selectSql, new BeanPropertyRowMapper<Emp>(Emp.class));//遍历集合for (Emp emp : rsSelect) {System.out.println(emp);}}
}

引用jar前

package jdbcStudy;import cn.itcast.domain.Emp;import java.sql.*;
import java.util.ArrayList;
import java.util.List;/*** @author KuKaFei.Hai* @date 2020/5/6 : 14:28*/
public class JDBCforEmp {public static void main(String[] args) {String sql = "select * from emp";List<Emp> emps = selectTable(sql);System.out.println("共查询到:"+emps.size()+"条记录");for (Emp emp : emps) {System.out.println(emp.toString());}}/*** 查询一个表,返回所有结果** @param sql 传入的查询语句* @return 返回表中的所有记录 (每条记录封装成Emp对象,然后,把所有的记录,都保存在List<Emp>中)*/private static List<Emp> selectTable(String sql) {/*** 抽取公有变量*/Connection conn = null;Statement stmt = null;ResultSet rs = null;List<Emp> listEmp = null;try {//1.注册驱动Class.forName("com.mysql.jdbc.Driver");//2.获取连接对象conn = DriverManager.getConnection("jdbc:mysql://172.16.1.9/enterpriseinfomation","root", "***********");//3.获取sql执行对象stmt = conn.createStatement();//4.执行sqlrs = stmt.executeQuery(sql);//5.遍历集合,封装对象Emp emp = null;listEmp = new ArrayList<Emp>();while (rs.next()) {//取每条记录的值int id = rs.getInt("id");String ename = rs.getString("ename");int job_id = rs.getInt("job_id");int mgr = rs.getInt("mgr");Date joindate = rs.getDate("joindate");double salary = rs.getDouble("salary");double bonus = rs.getDouble("bonus");int dept_id = rs.getInt("dept_id");//创建Emp对象emp = new Emp();//封闭对象emp.setId(id);emp.setEname(ename);emp.setJob_id(job_id);emp.setMgr(mgr);emp.setJoindate(joindate);emp.setSalary(salary);emp.setBonus(bonus);emp.setDept_id(dept_id);//装载集合listEmp.add(emp);}} catch (ClassNotFoundException e) {e.printStackTrace();} catch (SQLException e) {e.printStackTrace();} finally {if (rs != null) {try {rs.close();} catch (SQLException e) {e.printStackTrace();}}if (stmt != null) {try {stmt.close();} catch (SQLException e) {e.printStackTrace();}}if (conn != null) {try {conn.close();} catch (SQLException e) {e.printStackTrace();}}}return listEmp;}
}

能过JdbcTemplate,druid来查询表数据并封闭成Bean 与传统手工写法对比 100多行的代码 5行搞定 (Jar 牛B)相关推荐

  1. 把数据转换为在内存中Tree(树形结构)。_备战秋招:一文搞定数据库常见面试题...

    点击上方"蓝字",关注了解更多 1.数据库范式 第一范式:列不可分,eg:[联系人](姓名,性别,电话),一个联系人有家庭电话和公司电话,那么这种表结构设计就没有达到 1NF: 第 ...

  2. gis里创建要素面板怎么打开_GIS数据、路桥隧道、地下管网、地形土方,敢不敢用一个软件搞定?...

    知乎视频​www.zhihu.com ​你好,这里是BIMBOX. 从我们做课程以来,经常有小伙伴来反馈需求,有的希望已有课程里补充一些知识,有的想学一款软件希望我们能出教程.BOX非常感谢大家的建议 ...

  3. python输入三行数据_3行Python代码就能获取海量数据?

    原标题:3行Python代码就能获取海量数据? 一谈起数据分析,首先想到的就是数据,没有数据,谈何分析. 毕竟好的菜肴,没有好的原材料,是很难做的- 所以本期小F就给大家分享一个获取数据的方法,只需三 ...

  4. sublime 选择包含指定字符的所有行,或筛选有用的行或删除干扰行,批量比CTRL+D好用,专治筛选数据日志有用数据(数据库日志文件快速处理 SQL日志快速处理筛选)

    ①选择含有 ecs_user 的字符, ②按ALT+F3 (全选含有 ecs_user的字符) ③SHIFT+HOME (使光标 到选中行的前面) ④按下 ← (所有行光标最左) ⑤按SHIFT+EN ...

  5. 快速了解Druid -- 实时大数据分析软件

    Druid 是什么 Druid 单词来源于西方古罗马的神话人物,中文常常翻译成德鲁伊.  本问介绍的Druid 是一个分布式的支持实时分析的数据存储系统(Data Store).美国广告技术公司Met ...

  6. pl/sql查询表数据,报错ORA-03115:不支持的网络数据类型或表示法

    今天测试人员遇到一个问题:pl/sql查询表数据,报错ORA-03115:不支持的网络数据类型或表示法 我在plsql上查询这张表是没有问题的,去看了那张表,发现有个字段类型是binary_doubl ...

  7. 关于MySQL 查询表数据大小的总结

    关于MySQL 查询表数据大小的总结 一:关于mysql表数据大小 我们知道mysql存储数据文件一般使用表空间存储 当mysql使用innodb存储引擎的时候, mysql使用表存储数据分为共享表空 ...

  8. 数据连接池druid 和 大数据框架druid

    叫druid的有两个开源项目. 一个是: Druid是一个JDBC组件,它包括三部分:  DruidDriver 代理Driver,能够提供基于Filter-Chain模式的插件体系.  DruidD ...

  9. cmd命令窗口mysql查询表数据命令行_cmd 命令行模式操作数据库 添加查询 修改 删除 ( 表 字段 数据)...

    一 查看数据库.表.数据字段.数据 1 首先配置环境变量 进入mysql  或者通过一键集成工具 打开mysql命令行  或者mysql 可视化工具 打开命令行 进入这样的界面   不同的机器操作不同 ...

最新文章

  1. 在spring中集成webservice 框架 CXF
  2. jsf集成spring_Spring和JSF集成:MVC螺母和螺栓
  3. java代码快速_java代码编写快捷途经
  4. 项目:飞凌单片机boa服务器遇到问题总结
  5. Tomcat主配置-应用部署
  6. mysql foreign key_MYSQL外键(Foreign Key)的使用
  7. Myeclipse学习总结(17)——Java主流IDE优缺点分析
  8. 一起谈.NET技术,ASP.NET 4.0 一些隐性的扩展
  9. 自学python要多久-自学Python要学会需要多久?老男孩Python培训班
  10. “渠道之王”2.0   百丽携手乐淘的背后
  11. Python 基于项目自动生成 requirements.txt 文件
  12. python 倒计时功能怎么用print实现_在python中的print语句中实现60秒倒计时
  13. PS使用技巧(五) 形状工具 U
  14. android 那个桌面好,手机桌面软件哪个好?最好用的手机桌面软件推荐
  15. sklearn的roc_curve()函数分析
  16. Dynamic DMA mapping Guide
  17. sql按客户号累计求和并且排序
  18. 写个人简历的时候字体不完整?一个小技巧搞定!
  19. F5 BIG-IP iControl RCE (CVE-2021-22986)
  20. Adobe Acrobat X Pro安装 pdf

热门文章

  1. 网易市值超百度 成为国内第五大互联网公司
  2. 华为2019上半年业绩发布:华为手机海外销量已恢复禁令前80%的水平
  3. 继三星之后 华为折叠屏手机Mate X发售日期或将延期至9月
  4. 疯狂的折叠屏!不买折叠手机的5个理由
  5. c语言文件操作函数(未完待续)
  6. Netty之四种常用 IO 模型
  7. java中的过滤器:Filter
  8. textaligncenter仍然不居中_5个word你不知道的功能
  9. 钢琴块2电脑版_云上钢琴学生端电脑版|云上钢琴学生端 V2.3.1 最新PC版 下载_当下软件园...
  10. 【Kafka】Kafka 如果 动态 不停止的情况下 修改 消费组 offset