NutzCN Logo
问答 自定义sql查询出的结果集的列名都是数据库的字段名。
发布于 1330天前 作者 qq_93105859 1618 次浏览 复制 上一个帖子 下一个帖子
标签:

代码如下:

@Override
	public DataPageDTO empsPage(EmpListPageParams params) {
		FileSqlManager fm = new FileSqlManager("sqls/employee.sql");
		String sqlStr = fm.get("employee.list");
		// 查询条件
		Criteria cri = Cnd.cri();
		if (params.getEmpName() != null && params.getEmpName().length() > 0) {
			cri.where().and("t1.emp_name", "LIKE", "%" + params.getEmpName() + "%");
		}
		Sql sql = Sqls.queryRecord(sqlStr);
		Pager pager = params.createPager(dao());
		sql.setPager(pager);
		sql.setCondition(cri);
		dao().execute(sql);
		List<EmployeeListDTO> emps = sql.getList(EmployeeListDTO.class);
		return new DataPageDTO(emps, pager);
	}

实体类EmployeeListDTO类如下:

/**
 * 
 * 员工列表
 *
 */
public class EmployeeListDTO {
/**
	 * 员工Id
	 */
	private Long empId;
	/**
	 * 工号
	 */
	private String jobNumber;
	/**
	 * 手机号码
	 */
	private String mobile;
	/**
	 * 手机短号
	 */
	private String mobileShort;
	/**
	 * 入职日期
	 */
	private Date entryTime;
	/**
	 * 删除标识
	 */
	private Boolean deleted;
	/**
	 * 时间戳
	 */
	private Long rts;
	/**
	 * 修改人Id
	 */
	private Long modifyId;
	/**
	 * 修改时间
	 */
	private Date modifyTime;
	/**
	 * 创建时间
	 */
	private Date createTime;
	/**
	 * 创建人Id
	 */
	private Long createrId;
	/**
	 * 姓名
	 */
	private String empName;
	/**
	 * 出生日期
	 */
	private Date birth;
	/**
	 * 性别:0-未知; 1-男; 2-女; 3-保密;
	 */
	private Integer gender;
	/**
	 * 身份证号
	 */
	private String idNumber;
	/**
	 * 备注
	 */
	private String empDesc;
	/**
	 * 限制登录标识
	 */
	private Boolean limitLoginFlag;
	/**
	 * 登录账号
	 */
	private String loginAccount;
	/**
	 * 登录密码
	 */
	private String loginPwd;
	/**
	 * 管理员标识
	 */
	private Boolean adminFlag;
	/**
	 * 修改人
	 */
	private String modifyTxt;
	/**
	 * 创建人
	 */
	private String createrTxt;
省略get、set方法;

}

是用POSTMAN请求这个接口返回的结果确实如下:

{
    "ok": true,
    "code": 0,
    "msg": null,
    "data": [
        {
            "emp_id": 1,
            "job_number": null,
            "mobile": null,
            "mobile_short": null,
            "entry_time": null,
            "rts": null,
            "modify_id": null,
            "modify_time": null,
            "create_time": null,
            "creater_id": null,
            "emp_name": "管理员",
            "birth": null,
            "gender": 0,
            "id_number": null,
            "emp_desc": "系统初始化时创建!",
            "limit_login_flag": false,
            "login_account": "admin",
            "login_pwd": "123456",
            "admin_flag": true,
            "creater_txt": null,
            "modify_txt": null
        }
    ],
    "pager": {
        "pageNumber": 1,
        "pageSize": 100,
        "pageCount": 0,
        "recordCount": 0
    }
}

请问这是为什么?

3 回复

期望得到的是驼峰的属性名,实际却是数据库的蛇形命名,不知道为什么

而且分页的pageCount、recordCount也不对

应该用queryEntry

添加回复
请先登陆
回到顶部