关于自己在学习java路程上的所思所想(三)

1.BeanUtils组件:方便对javabean的操作

                 主要方法: 1.对象属性的拷贝

                                     eg:  Admin admin = new Admin();

                                            BeanUtils.copyProperty(admin,"age",18);

    /*等价于BeanUtil.copyProperty(admin,"age",18),如果18是以"18"作为参数,也没有问题,字符串会自动转换成基本数据类型*/

                                   2.对象的拷贝

                                           BeanUtils.copyProperties(newAdmin,admin);

                                   3.map数据拷贝到javabean中(注意:map中的key要与javabean的属性名称一致)

                                           BeanUtils.populate(admin,map);

                         如果属性中字符串要转换成非基本类型的对象(例如Date),需要注册转换器(可以使用官方提供的,也可以自己构造)


2.元数据    

                 数据库元数据      DatabaseMetaData metaData = connection.getMetaData();

                                        //可以获得数据库的相关信息。

                                           metaData.getUserName(),metaData.getURL(),meta.getDatabaseProductName()

                  SQL参数元数据   ParameterMetaData p_metaData = prepareStatement.getParameterMetaData();

                                              int count = p_metaData.getParameterCount();//参数的个数

                  结果集元数据    ResultSetMetaData rs_metaData = rs.getMetaData();

                                              rs.next();

                                            int count = rs_metaData.getColumnCount();  // 列的个数

                                            String name = rs_metaData.getColumnName(int index);  // 列的名称


3.DbUtils组件

                       int update(Connection conn,String sql,Object...  params);  执行更新带多个占位符的sql

                       int[] batch(Connection conn,String sql,Object[][] params);   批处理

                       T   query(Connection conn,STring sql,ResultSetHandler<T> rsh,Object... params);

                       (一般用上面三种,没参数不用写参数)

                      

                       Int  update( String sql, Object param);  

                       Int  update( String sql, Object…  param);

                       Int[]  batch( String sql, Object[][] params)       

                       注意: 如果调用DbUtils组件的操作数据库方法,没有传入连接对象,那么在实例化QueryRunner对象的时候需要传入数据源对象: QueryRunner qr = new QueryRunner(ds);


                       BeanHandler:查询返回单个对象

                       BeanListHandler:查询返回list集合,集合元素是指定的对象

                       ArrayHandler:查询返回结果记录的第一行,封装为对象数组,即返回:Object[]

                       ArrayListHandler:把查询的每一行都封装为对象数组,再添加到list集合中

                       ScalarHandler:查询返回结果记录的第一行的第一列(聚合函数统计的时候用)

                       MapHandler:查询返回结果的第一条记录封装为map

                       MapListHandler


----------------------------------------------------------分割线---------------------------------------------------------------



其实有些都已经不是我原创了,我对着一些笔记看了下,修改了下,想了下,嗯,这是昨天学的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值