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方法即可。
java dbutils查询数据库时无法给部分字段赋值原因的更多相关文章
- ORM框架查询数据库时返回指定的字段
django model.objects.filter() 查询指定字段 1.model.objects.filter().values('field_name'),单个字段 2.model.obje ...
- java连接mysql数据库时的时区设置问题(time_zone)
java在连接mysql数据库时,会由于时区设置不正确导致报以下的错误: The server time zone value '???ú±ê×??±??' is unrecognized or ...
- sql server 查询数据库所有的表名+字段
SELECT * FROM INFORMATION_SCHEMA.columns WHERE TABLE_NAME='Account' SELECT (case when a.colorder= ...
- 数据库小记:根据指定名称查询数据库表名及根据指定名称查询数据库所有表中的字段名称(支持mysql/postgre)
意:本篇文章仅适用于mysql和postgre这两种数据库 1.查询数据库中所有表名及对应表的详细信息 select * from INFORMATION_SCHEMA.tables 2.根据指定名称 ...
- SQL SERVER查询数据库所有的表名/字段
SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME='subject' --表名 1.利用sysobjects系统表 在这个表中,在数据 ...
- Java DbUtils 操作数据库
示例 1.新建项目,把数据库驱动.DbUtils的jar包添加到项目中 2.新建文件夹resource,标识为资源根目录,下面新建数据库连接的配置文件mysql.properties driver=c ...
- 在Django里查询数据库时,如何按照desc倒序返回数据?
按照entry_date从小到大查询数据,可以写成: Content.objects.order_by('entry_date') 从大到小排序: Content.objects.order_by(' ...
- java链接MySQL数据库时使用com.mysql.jdbc.Connection的包会出红线问题 java.lang.ClassNotFoundException: com.mysql.jdbc.Driver问题
package com.swift; //这里导入的包是java.sql.Connection而不是com.mysql.jdbc.Connection import java.sql.Connecti ...
- java切分查询数据库表
在实际应用中,我经常用到遇到根据单号查询,单号又是批量如1000个单号,直接1000个in子查询是不行的,子查询是用上限的.如果表中数据达到上百万以上.即使有单号字段有索引查询也是很慢.这时可以用切分 ...
随机推荐
- Hibernate中sessionfactory和session的多线程问题
http://blog.sina.com.cn/s/blog_7ffb8dd5010146i3.html
- SpringMVC拦截器和过滤器
- css清除浮动大全,共8种方法
我看的网页的网址:http://hi.baidu.com/kongcheng2012/item/2b1250d4452e802538f6f705 为什么浮动这么难? 因为浮动会使当前标签产生向上浮的效 ...
- App外包开发周期一般多长?
很多人问我,开发一个app要用多长时间.事实上开发一款app没有固定周期的,得因产品而论,你软件的功能需求决定了app外包开发的周期.但是除了app本身以外,人为因素往往对开发周期也有一定的影响.例如 ...
- Robocopy 轉帖
实例一:文件,想怎么复制就怎么复制 [实现效果] 随时将源文件夹中的纯文本(TXT).Word文档(DOC)还有BMP.TIF图像文件复制到目标文件夹中 ,这是在"资源管理器"中直 ...
- IOS Cell 重影
效果:重影 原因: 多次创建控件元素 解决:在initWithStyle中进行初始化元素
- 手动写一个Servlet
一.做一个类,派生自HttpServlet 1.导两个包 javax.servlet.*; javax.servlet.http.* 2.重写两个方法doGet,doPost 打开tomcat中的se ...
- php redis 函数手册
Redis::__construct构造函数$redis = new Redis();connect, open 链接redis服务参数host: string,服务地址port: int,端口号ti ...
- delphi 获得memo,Richedit焦点所在行
procedure TForm1.Button1Click(Sender: TObject); var i:Integer; begin i:=SendMessage(Richedit1.handle ...
- 建立、配置和使用Activity——启动其他Activity并返回结果
Activity还提供了一个startActivityForResult(Intent intent,int requestCode)方法来启动其他Activity.该方法用于启动指定Activity ...