您的位置:365bet体育在线 > 资讯 > IT之外 >
IT之外

该api是根据主键id获取class映射表的一条数据

2019-09-18作者:admin1来源:未知次阅读

  做JAVA的人玩JDBC肯定已经很熟练了,像DriverManager、Connection、ResultSet、Statement这些基本类大家肯定很常用啦,365bet体育平台我不赘述那些诸如注册JDBC驱动、创建连接、获取数据集的API了,在这我介绍一些写框架时常用的API,大家共同学习吧。

  以Hibernate的Session.get(class,id)为例,该api是根据主键id获取class映射表的一条数据,这里只要class参数传入不同,则获取的表也不同,然而数据库那么多表,不同表的字段个数又不同,如何准确把表字段映射到class就是关键了,365bet体育平台这里ResultSetMetaData就可以办到。

  下面是如何获取ResultSetMetaData并且使用该对象内的一些常用方法:

  从上面的代码可以看出,ResultSetMetaData能获取查询返回的数据集的内置信息,使用ResultSetMetaData能做很多事,

  比如可以获取指定表的所有列信息并且可以通过IO创建对应的JAVABean;可以用反射给JAVABean自动赋数据表中的值等等。

  如果要想获取当前连接的数据库的版本、驱动号和JDBC连接信息就可以使用DatabaseMetaData了,看下面的代码即可明白:

  还可以通过DatabaseMetaData获取指定数据库的所有表名,下面是获取MYSQL数据库表的代码,其它数据库代码实现有出入:

  其实如果ResultSetMetaData和DatabaseMetaData配合就能自动将数据库的表、列信息映射到Javabean中,首先通过DatabaseMetaData获取当前数据库的所有表信息,然后通过ResultSetMetaData查询每张表的所有列信息即可,下面是生成POJO的一个主方法,具体IO相关代码就不贴了大家看看就行了。

该api是根据主键id获取class映射表的一条数据 相关的内容:

关于 该api是根据主键id获取class映射表的一条数据 的评论