//补充完成该类的含参构造方法 public Info(String id, String name, int age, String sex, String phone) { }
/**
* 客户基本信息类
*/
public class Info {
private String id;//客户卡号
private String name;//客户姓名
private int age;//客户年龄
private String sex;//客户性别
private String phone;//客户电话
//补充完成该类的含参构造方法
public Info(String id, String name, int age, String sex, String phone) {
this.id = id;
this.name = name;
this.age = age;
this.sex = sex;
this.phone = phone;
}}
// 请修改该方法,以保证打印对象时输出格式如下:
// {id:"001";name:"zs";age:20;sex:"男";phone:"18812349876"}
@Override
public String toString() {
return "{id:\""+this.id+"\";name:\""+this.name+"\";age:"+this.age+";sex:\""+this.sex
+"\";phone:\""+this.phone+"\"}";
}
// 缺失代码:请补全以下方法,要求客户资金的范围在:0<=num // 当参数在规定范围外时,不做任何动作 public void setNum(double num) { }
// 缺失代码:请补全以下方法,要求客户资金的范围在:0<=num
// 当参数在规定范围外时,不做任何动作
public void setNum(double num) {
if(num>=0){
this.num = num;
}
}
package org.lanqiao.daoimpl;
import org.lanqiao.bean.Info;
import java.util.List;
import org.lanqiao.bean.Account;
import org.lanqiao.dao.SSDao;
import org.lanqiao.db.ObjectUtil;
/**
* 接口实现类
*/
public class SSDaoImpl implements SSDao{
/*
* ObjectUtil工具类提供的方法能实现对数据库的CRUD操作
* */
ObjectUtil<Info> infoUtil = new ObjectUtil<Info>();
ObjectUtil<Account> accountUtil = new ObjectUtil<Account>();
/**
* 依据客户卡号查询客户资金
* @param id 客户卡号
* @return 有的话返回金额,没有的话返回0
*/
public double queryNum(String id){
// 请补全sql语句
String sql = "select * from account where id=?";
Account a = accountUtil.getOne(sql, Account.class, id);
if(a!=null){
return a.getNum();
}else{
return 0;
}
}
/**
* 依据客户姓名查询客户资金
* @param name 客户姓名
* @return 有的话返回金额,没有的话返回0
*/
public double queryNum2(String name){
// 请补全sql语句
String sql = "select * from account where id=(select id from info where name=?)";
Account a = accountUtil.getOne(sql, Account.class, name);
if(a!=null){
return a.getNum();
}else{
return 0;
}
}
/**
* 查询有多少客户是信用卡客户(credit=true表示为信用卡用户)
* @return 返回人数
*/
public int queryCredit(){
String sql = "select * from account where credit=true";
List<Account> li = accountUtil.getList(sql, Account.class);
// 请修改以下语句
int num = li.size();
return num;
}
/**
* 查询资金最大的人
* @return 返回姓名
*/
public String queryName(){
// 请补全sql语句
String sql = "select * from info where id=(select id from account order by num desc limit 1)";
Info i = infoUtil.getOne(sql, Info.class);
return i.getName();
}
/**
* 查询客户姓名中含有某个字母s的人数
* @param s 某个字母
* @return 返回人数
*/
public int querySum(String s){
// 请补全sql语句
String sql = "select * from info where name like '%"+s+"%'";
List<Info> li = infoUtil.getList(sql, Info.class);
int num = li.size();
return num;
}
}