java封装结果集

package com.credithc.pda.common.utils;

import java.io.Serializable;

/**
* @description:操作结果集
*
*/
public class Result implements Serializable {

private static final long serialVersionUID = 495242526721135983L;
public static final int SUCCESS = 1;
public static final int FAILURE = -1;

private boolean success = false;

private String msg = "";

private Object obj = null;

private int count ;

public int getCount() {
return count;
}

public void setCount(int count) {
this.count = count;
}

public boolean isSuccess() {
return success;
}

public void setSuccess(boolean success) {
this.success = success;
}

public String getMsg() {
return msg;
}

public void setMsg(String msg) {
this.msg = msg;
}

public Object getObj() {
return obj;
}

public void setObj(Object obj) {
this.obj = obj;
}

}

 

 

*****************************************

 

 

package com.credithc.pda.controller;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;

import org.apache.shiro.SecurityUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.propertyeditors.CustomDateEditor;
import org.springframework.web.bind.ServletRequestDataBinder;
import org.springframework.web.bind.annotation.InitBinder;

import com.credithc.pda.common.security.ShiroUser;
import com.credithc.pda.common.utils.Result;
import com.credithc.pda.common.utils.StringEscapeEditor;
import com.credithc.pda.model.User;
import com.credithc.pda.service.UserService;

/**
* @description:基础 controller
*
*/
public abstract class BaseController {

protected final Logger logger = LoggerFactory.getLogger(getClass());

@Autowired
private UserService userService;

@InitBinder
public void initBinder(ServletRequestDataBinder binder) {
/**
* 自动转换日期类型的字段格式
*/
binder.registerCustomEditor(Date.class, new CustomDateEditor(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"), true));

/**
* 防止XSS攻击
*/
binder.registerCustomEditor(String.class, new StringEscapeEditor(true, false));
}
/**
* 获取当前登录用户对象
* @return
*/
public User getCurrentUser() {
ShiroUser user = (ShiroUser) SecurityUtils.getSubject().getPrincipal();
User currentUser = userService.findUserById(user.getUserId());
return currentUser;
}

/**
* 获取当前登录用户id
* @return
*/
public Long getUserId() {
return this.getCurrentUser().getUserId();
}

/**
* 获取当前登录用户名
* @return
*/
public String getUserName() {
return this.getCurrentUser().getUserName();
}

/**
* ajax失败
* @param msg 失败的消息
* @return {Object}
*/
public Object renderError(String msg) {
Result result = new Result();
result.setMsg(msg);
return result;
}

/**
* ajax失败
* @param obj 失败时的对象
* @return {Object}
*/
public Object renderError(Object obj) {
Result result = new Result();
result.setObj(obj);
return result;
}

/**
* ajax失败
* @param msg 失败的消息
* @param obj 失败时的对象
* @return {Object}
*/
public Object renderError(String msg,Object obj) {
Result result = new Result();
result.setMsg(msg);
result.setObj(obj);
return result;
}

/**
* ajax成功
* @return {Object}
*/
public Object renderSuccess() {
Result result = new Result();
result.setSuccess(true);
return result;
}

/**
* ajax成功
* @param msg 消息
* @return {Object}
*/
public Object renderSuccess(String msg) {
Result result = new Result();
result.setSuccess(true);
result.setMsg(msg);
return result;
}

/**
* ajax成功
* @param obj 成功时的对象
* @return {Object}
*/
public Object renderSuccess(Object obj) {
Result result = new Result();
result.setSuccess(true);
result.setObj(obj);
return result;
}

/**
* 分页查询成功
* @param obj 成功时的对象
* @return {Object}
*/
public Object renderPage(Object obj,int count) {
Result result = new Result();
result.setSuccess(true);
result.setObj(obj);
result.setCount(count);
return result;
}
/**
* 分页查询
* @param list 查询结果集
* @return {Object}
*/
public Object renderPage(List list) {
Result result = new Result();
result.setSuccess(true);
result.setObj(list);
if(list!=null)result.setCount(list.size());
return result;
}
}

转载于:https://www.cnblogs.com/kekang/p/5993356.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java反射的结果是指通过反射机制将数据库查询结果封装成对象或对象合的操作。通过反射,我们可以动态地获取和操作类的属性、方法和构造函数等信息,从而实现对结果的灵活处理。 下面是一个示例,演示了如何使用Java反射将结果封装成对象合: ```java import java.lang.reflect.Field; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; public class ResultSetReflection { public static <T> List<T> mapResultSetToObject(ResultSet resultSet, Class<T> clazz) throws SQLException { List<T> resultList = new ArrayList<>(); Field[] fields = clazz.getDeclaredFields(); while (resultSet.next()) { try { T object = clazz.getDeclaredConstructor().newInstance(); for (Field field : fields) { field.setAccessible(true); String fieldName = field.getName(); Object value = resultSet.getObject(fieldName); field.set(object, value); } resultList.add(object); } catch (Exception e) { e.printStackTrace(); } } return resultList; } } ``` 上述代码中,`mapResultSetToObject`方法接收一个`ResultSet`对象和一个`Class`对象作为参数,返回一个封装了结果的对象合。在方法内部,我们首先通过`clazz.getDeclaredFields()`获取类的所有属性,然后遍历结果,创建对象并将结果中的数据赋值给对象的属性。 使用示例: ```java ResultSet resultSet = // 从数据库中查询得到的结果 List<User> userList = ResultSetReflection.mapResultSetToObject(resultSet, User.class); ``` 通过调用`mapResultSetToObject`方法,我们可以将数据库查询结果封装成`User`对象的合。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值