1. package com.test;
  2.  
  3. import java.sql.*;
  4. import java.util.ArrayList;
  5. import java.util.Hashtable;
  6. import java.util.List;
  7. public class Test{
  8. // 驱动
  9. String driver = "com.mysql.jdbc.Driver";
  10. // 数据库连接
  11. String url = "jdbc:mysql://localhost:3306/ceshi?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true";
  12. // 用户名
  13. String user = "root";
  14. // 数据库密码
  15. String password = "hotlon";
  16. // 加载驱动
  17.  
  18. List<Hashtable<String, Object>> rows ;
  19.  
  20. public List<Hashtable<String, Object>> queSql(){
  21.  
  22. try {
  23. Class.forName(driver);
  24. } catch (ClassNotFoundException e) {
  25. // TODO Auto-generated catch block
  26. e.printStackTrace();
  27. }
  28. // 获取链接
  29. Connection connection = null;
  30. try {
  31. connection = DriverManager.getConnection(url, user, password);
  32. } catch (SQLException e) {
  33. // TODO Auto-generated catch block
  34. e.printStackTrace();
  35. }
  36. // 创建查询声明
  37. PreparedStatement preparedStatement = null;
  38. try {
  39. preparedStatement = connection.prepareStatement("select * from renyuan");
  40. } catch (SQLException e) {
  41. // TODO Auto-generated catch block
  42. e.printStackTrace();
  43. }
  44. // 获取结果
  45. ResultSet resultSet = null;
  46. try {
  47. resultSet = preparedStatement.executeQuery();
  48. } catch (SQLException e) {
  49. // TODO Auto-generated catch block
  50. e.printStackTrace();
  51. }
  52. // 获取各个列的信息
  53. ResultSetMetaData metaData = null;
  54. try {
  55. metaData = resultSet.getMetaData();
  56. } catch (SQLException e) {
  57. // TODO Auto-generated catch block
  58. e.printStackTrace();
  59. }
  60. // 一条数据保存在一个Hashtable 将所有Hashtable存放到list
  61. rows = new ArrayList<Hashtable<String, Object>>();
  62. try {
  63. while (resultSet.next()) {
  64. Hashtable<String, Object> row = new Hashtable<String, Object>();
  65. for (int i = 1; i <= metaData.getColumnCount(); i++) {
  66. // 打印列名
  67. //System.out.println(metaData.getColumnName(i));
  68. //System.out.println(row.get(metaData.getColumnName(i)));
  69. row.put(metaData.getColumnName(i), resultSet.getObject(i)==null?"":resultSet.getObject(i));
  70. //System.out.println(row.get(metaData.getColumnName(i)));
  71. }
  72. rows.add(row);
  73. }
  74. } catch (SQLException e) {
  75. // TODO Auto-generated catch block
  76. e.printStackTrace();
  77. }
  78. try {
  79. resultSet.close();
  80. } catch (SQLException e) {
  81. // TODO Auto-generated catch block
  82. e.printStackTrace();
  83. }
  84. try {
  85. preparedStatement.close();
  86. } catch (SQLException e) {
  87. // TODO Auto-generated catch block
  88. e.printStackTrace();
  89. }
  90. try {
  91. connection.close();
  92. } catch (SQLException e) {
  93. // TODO Auto-generated catch block
  94. e.printStackTrace();
  95. }
  96.  
  97. //System.out.println(rows.get(1).get("uid"));
  98. return rows;
  99.  
  100. }
  101.  
  102. public static void main(String[] args) throws Exception {
  103.  
  104. Test test = new Test();
  105. System.out.println(test.queSql().get(1).get("uid"));
  106.  
  107. }
  108. }

Hashtable映射数据库字段的更多相关文章

  1. mybatis javabean字段与数据库字段的映射

    结论:未作映射的字段没有值,但是数据库中实际是有值的,说明如果带下划线的字段未作映射,返回值是不会有值的,只有映射了的字段以及不带下划线的字段(默认映射)才有返回值 1.bean属性 public c ...

  2. spring 数据库字段映射

    当有复杂名称字段时: 在repository中写代码字段名 List<Grid> findByLocIsWithin(GeoJsonPolygon boundary); 可以添加field ...

  3. Flask与mysql数据库字段类型的区别以及基本用法

    Mysql里面的int在Flask中里面使用Integer Mysql里面的varcahar在Flask中里面使用String 与Mysql数据库需要导入模块 #导入第三方链接库sql点金术 from ...

  4. EF生成实体自动添加数据库字段注释

    我们在用EF从数据库生成模型的时候,默认实体类是没有注释的,但是我们已经在数据库字段添加说明了,能不能自动把注释也拿过来? 答案是:能. 那么我们开始 首先随便开一个ASP.NET   MVC项目,我 ...

  5. ASP.Net MVC 中EF实体的属性取消映射数据库、自定义名称

    例如:数据库中一个字段名称为CompanyId 自定义实体数据名称 [Column("CompanyId")] public int Id{ get; set; } 这样就可以使用 ...

  6. swoft orm中的坑(针对实体类的属性名称和数据库字段不相等)

    最近在用swoft的orm,发现了一些问题: 首先看下实体类的定义 它的属性名称和所映射的数据库字段名不一致,这个就会导致蛋疼的问题,首先,在我们使用orm的时候,应该使用哪个字段? 我直接说结论,在 ...

  7. MyBatis入门实例-包括实体类与数据库字段对应&CLOB字段处理

    1.我的开发环境是 jdk1.7+ecplise+oracle 11g 用到的jar包:mybatis-3.1.1.jar ojdbc6.jar 2.项目整体结构     3.首先配置conf.xml ...

  8. MyBatis数据库字段和实体对象属性名不一致的解决方案

    数据库和对象的属性名不一致是很常见的问题,这个时候依从表字段到对象属性名的按名称匹配映射已经搞不定这个了,下面是几种解决方案. 1. 开启驼峰转换 如果数据库中的字段名与对象只是简单的不一致的话,比如 ...

  9. oracle 数据库字段名与实体类字段名称不匹配的处理方法

    之前公司一直都使用sql server 即使数据库字段名称与实体类名称不相同 可以使用诸如: select id as userId from tb_user 这种写法,可换到了oracle 之后坑爹 ...

随机推荐

  1. AdaBoost原理,算法实现

    前言: 当做重要决定时,大家可能综合考虑多个专家而不是一个人的意见.机器学习处理问题也是如此,这就是元算法背后的思路.元算法是对其他算法进行组合的一种方式,前几天看了一个称作adaboost方法的介绍 ...

  2. [Machine Learning] Probabilistic Graphical Models:一、Introduction and Overview(2、Factors)

    一.什么是factors? 类似于function,将一个自变量空间投影到新空间.这个自变量空间叫做scope. 二.例子 如概率论中的联合分布,就是将不同变量值的组合映射到一个概率,概率和为1. 三 ...

  3. BOM 之 screen history

    /*    avaiHeight // 屏幕的像素高度减去系统部件高度之后的值    var ah = screen.availHeight;     alert(ah); */    /* avai ...

  4. CentOS6.5使用本地光盘做yum源 (参考:http://www.jb51.net/os/RedHat/43343.html)

    一.使用光盘做yum源安装软件 mkdir /media/CentOS  #新建CentOS挂载目录 mount -t auto /dev/cdrom /media/CentOS #挂载CentOS光 ...

  5. jquery roundabout幻灯片插件3d图片切换支持图片旋转切换滚动

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. 【python之旅】python的面向对象

    一.面向过程 VS 面向对象 1.编程范式 编程是程序员用特定的语法+数据结构+算法组成的代码来告诉计算机如何执行任务的过程,一个程序是程序员为了得到一个任务结果而编写的一组指令的集合,实现一个任务的 ...

  7. ARM的STRB和LDRB指令分析

    一.SDRAM 1.存储结构 SDRAM的内部是一个存储阵列.阵列就如同表格一样,将数据“填”进去.在数据读写时和表格的检索原理一样,先指定一个行(Row),再指定一个列 (Column),我们就可以 ...

  8. Java POI 导出EXCEL经典实现 Java导出Excel

    转自http://blog.csdn.net/evangel_z/article/details/7332535 在web开发中,有一个经典的功能,就是数据的导入导出.特别是数据的导出,在生产管理或者 ...

  9. PLSQL Developer激活码

    License Number:999 Password:xs374ca Product Code:ljkfuhjpccxt8xq2re37n97595ldmv9kch Serial Number:30 ...

  10. [BZOJ 2440] [中山市选2011] 完全平方数 【二分 + 莫比乌斯函数】

    题目链接:BZOJ - 2440 题目分析 首先,通过打表之类的方法可以知道,答案不会超过 2 * k . 那么我们使用二分,对于一个二分的值 x ,求出 [1, x] 之间的可以送出的数有多少个. ...