zoukankan      html  css  js  c++  java
  • java dbutils查询数据库时无法给部分字段赋值原因

    1,javaBean如下:

    public class User {
        
        /**
         * 用户唯一标识(ID)
         */
        private String uid;

        /**
         * 用户名(user既手机号)
         */
        private String phone;

        /**
         * 获取用户唯一标识(ID)
         *
         * @return 用户唯一标识(ID)
         */
        public String getUid() {
            return uid;
        }

        /**
         * 获取用户名(user既手机号)
         *
         * @return 用户名(user既手机号)
         */
        public String getPhone() {
            return phone;
        }

        /**
         * 设置用户名(user既手机号)
         *
         * @param phone
         *            用户名(user既手机号)
         */
        public void setPhone(String phone) {
            this.phone = phone;
        }
    }

    2,查询记录如下:

    String sql = "select * from user where phone = ?";
    QueryRunner runner= new QueryRunner(DaoUtils.getSource());
    @SuppressWarnings("rawtypes")
    User query = (User) runner.query(sql, new BeanHandler(User.class), phone);

    这时会发现查询出的结果uid为null,phone有值。

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~

    原因:

      uid字段没有set方法,所以没有赋值。由此推出dbutils是通过set方法反射进行赋值的。

    解决方法:

      javaBean中增加uid的set方法即可。

  • 相关阅读:
    小数化分数2
    Sum of divisors
    Subsequence
    Lowest Bit
    Specialized Four-Digit Numbers
    Hunters
    Pet
    测试你是否和LTC水平一样高
    Bank Interest
    bzoj 1295
  • 原文地址:https://www.cnblogs.com/wf-l5201314/p/6381482.html
Copyright © 2011-2022 走看看