精华内容
下载资源
问答
  • 将Map类型对象转为实体类对象 将map对象转为实体类对象有多种方式,提供一种思路是遍历map对象,再新建实体类对象对属性进行赋值如Test test = new Test(); test.setId(map.get("id")); test.setName(map.get("name...

    将Map类型对象转为实体类对象

    将map对象转为实体类对象有多种方式,提供一种思路是遍历map对象,再新建实体类对象对属性进行赋值如`

    Test test = new Test();
    test.setId(map.get("id"));
    test.setName(map.get("name"));`
    
    展开全文
  • 微服务中从其他服务获取过来的对象,本来传的是实体类对象 , 但是接受到的参数却是linkedhashMap类型的对象 , 如果强转成自定义的实体类型会报错,因此可以利用ObjectMapper转换。 ObjectMapper mapper = new ...

    微服务中从其他服务获取过来的对象,本来传的是实体类对象 , 但是接受到的参数却是linkedhashMap类型的对象 , 如果强转成自定义的实体类型会报错,因此可以利用ObjectMapper转换。

    ObjectMapper mapper = new ObjectMapper();
    DefaultResponse defaultResponse = proxy.getData();
    List<Resource> resources = (<Resource>) defaultResponse.getData();  //这里的场景是:data是一个Object类型的,但是它其实是一个List<Resouce>,想把List中的每个对象分别转成可用的对象
    for (int i = 0; i < serviceDateResources.size(); i++) {
        Resource resource = mapper.convertValue(resources.get(i), Resource.class);   //经过这步处理,resource就是可用的类型了,如果不转化会报错
    } 
    

    上面转换的过程中,如果返回的字段你不是都需要,需要忽略其中的几个字段,在自定义的类中添加如下:

    	import org.codehaus.jackson.annotate.JsonIgnoreProperties;
    	
    	@JsonIgnoreProperties(ignoreUnknown = true)
    	public class Resource {
    	//  private Integer orderId; //提供有这个参数,但是不想获取
    	  private Integer otrerFiled;
    	}
    

    或者下面方法:这两种方法不用添加注解

    一:ObjectMapper mapper = new ObjectMapper().setVisibility(JsonMethod.FIELD,Visibility.ANY);
       mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
    二:ObjectMapper objectMapper = new ObjectMapper();
       mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
    

    ObjectMapper可以实现对象到json等其他格式的互转。如果向将java对象转成Json格式,可以用:

    ObjectMapper mapper = new ObjectMapper();
    mapper.writeValueAsString(object);
    

    会有JsonProcessingException异常,需要自己处理。在转换的过程中,有可能有的属性被设成空就不序列化等的需求,可以在类的属性上或直接在类上加上一下注解。用在属性上就是只针对一个属性,用在类上就是针对类里的所有属性。

    @JsonInclude(Include.NON_NULL) 
    @JsonInclude(Include.Include.ALWAYS) 默认 
    @JsonInclude(Include.NON_DEFAULT) 属性为默认值不序列化 
    @JsonInclude(Include.NON_EMPTY) 属性为 空(“”) 或者为 NULL 都不序列化 
    @JsonInclude(Include.NON_NULL) 属性为NULL 不序列化 
    

    json转成Object 及 Object转json

    DefaultResponse  response = mapper.readValue(result, DefaultResponse.class); 
    String Json =  mapper.writeValueAsString(student1); 
    

    mapper.readValue()过程中,如果result中的字段比DefaultResponse字段多会报错,忽略多余的字段在DefaultResponse中添加下面注解。

    @JsonIgnoreProperties(ignoreUnknown = true)
    

    转载:https://www.cnblogs.com/badboyf/p/6126511.html

    展开全文
  • JavaWeb实体类转为json对象

    千次阅读 多人点赞 2020-12-17 21:18:06
    实体类转为json对象1.创建个实体类2.使用类库 fastjson3.测试一下4.Controller代码 1.创建个实体类 实体类User代码: package com.neuedu.entity; import lombok.AllArgsConstructor; import lombok.Data; import ...

    1.创建个实体类

    实体类User代码:

    package com.neuedu.entity;
    
    import lombok.AllArgsConstructor;
    import lombok.Data;
    import lombok.NoArgsConstructor;
    
    import java.util.Date;
    
    /**
     * Keafmd
     *
     * @ClassName: User
     * @Description: user实体类
     * @author: 牛哄哄的柯南
     * @date: 2020-12-17 14:08
     */
    
    @Data
    @AllArgsConstructor
    @NoArgsConstructor
    public class User {
    
        private Integer id;
        private String name;
        private String address;
        private Date date;
    
    }
    

    我没有自己写构造函数和Setter(),Getter()以及toString()方法,而是使用了lombok自动生成的。

    2.使用类库 fastjson

    添加依赖:

    <dependency>
          <groupId>com.alibaba</groupId>
          <artifactId>fastjson</artifactId>
          <version>1.2.73</version>
    </dependency>
    

    3.测试一下

    JsonTest 代码:

    package com.neuedu.entity;
    
    import com.alibaba.fastjson.JSON;
    import com.alibaba.fastjson.serializer.SerializerFeature;
    import org.junit.Test;
    
    import java.util.ArrayList;
    import java.util.Date;
    import java.util.List;
    
    /**
     * Keafmd
     *
     * @ClassName: Test
     * @Description: user测试类
     * @author: 牛哄哄的柯南
     * @date: 2020-12-17 14:10
     */
    
    public class JsonTest {
    
        @Test
        public void test(){
            List userList = new ArrayList();
            userList.add(new User(1,"牛哄哄的柯南1","某某省某某市1",new Date()));
            userList.add(new User(2,"牛哄哄的柯南2","某某省某某市2",new Date()));
            userList.add(new User(3,"牛哄哄的柯南3","某某省某某市3",new Date()));
            userList.add(new User(4,"牛哄哄的柯南4","某某省某某市4",new Date()));
            userList.add(new User(5,"牛哄哄的柯南5","某某省某某市5",new Date()));
            userList.add(new User(6,"牛哄哄的柯南6","某某省某某市6",new Date()));
    
    
    
            //List集合转换成 json
    
    
            String json = JSON.toJSONString(userList,   SerializerFeature.WriteDateUseDateFormat );
    
    
            System.out.println(json);
    
        }
    }
    
    

    运行结果:

    [{"address":"某某省某某市1","date":"2020-12-17 21:09:21","id":1,"name":"牛哄哄的柯南1"},
    {"address":"某某省某某市2","date":"2020-12-17 21:09:21","id":2,"name":"牛哄哄的柯南2"},
    {"address":"某某省某某市3","date":"2020-12-17 21:09:21","id":3,"name":"牛哄哄的柯南3"},
    {"address":"某某省某某市4","date":"2020-12-17 21:09:21","id":4,"name":"牛哄哄的柯南4"},
    {"address":"某某省某某市5","date":"2020-12-17 21:09:21","id":5,"name":"牛哄哄的柯南5"},
    {"address":"某某省某某市6","date":"2020-12-17 21:09:21","id":6,"name":"牛哄哄的柯南6"}]
    
    Process finished with exit code 0
    
    

    4.Controller代码

    UserController代码:

    package com.neuedu.controller;
    
    import com.alibaba.fastjson.JSON;
    import com.alibaba.fastjson.serializer.SerializerFeature;
    import com.neuedu.entity.User;
    
    import javax.servlet.ServletException;
    import javax.servlet.annotation.WebServlet;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import java.io.IOException;
    import java.io.PrintWriter;
    import java.util.ArrayList;
    import java.util.Date;
    import java.util.List;
    /**
     * Keafmd
     *
     * @ClassName: UserController
     * @Description: UserController
     * @author: 牛哄哄的柯南
     * @date: 2020-12-17 14:20
     *
     *
     *  http://127.0.0.1:8080/web/user
     */
    
    @WebServlet(name="UserController" ,urlPatterns = "/user")
    public class UserController extends HttpServlet {
    
        @Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    
            List userList = new ArrayList();
            userList.add(new User(1,"牛哄哄的柯南1","某某省某某市1",new Date()));
            userList.add(new User(2,"牛哄哄的柯南2","某某省某某市2",new Date()));
            userList.add(new User(3,"牛哄哄的柯南3","某某省某某市3",new Date()));
            userList.add(new User(4,"牛哄哄的柯南4","某某省某某市4",new Date()));
            userList.add(new User(5,"牛哄哄的柯南5","某某省某某市5",new Date()));
            userList.add(new User(6,"牛哄哄的柯南6","某某省某某市6",new Date()));
    
            String json = JSON.toJSONString(userList,   SerializerFeature.WriteDateUseDateFormat    );
    
    
            resp.setContentType("application/json");
            resp.setCharacterEncoding("utf-8");
            PrintWriter out = resp.getWriter();
            out.write(json);
            out.flush();
            out.close();
    
        }
    
        @Override
        protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            this.doGet(req, resp);
        }
    }
    

    启动服务访问http://127.0.0.1:8080/web/user

    访问结果:
    在这里插入图片描述
    OK,到此就完成实体类转为json对象的需求了。
     
     

    看完如果对你有帮助,感谢点赞支持!
    如果你是电脑端,看到右下角的 “一键三连” 了吗,没错点它[哈哈]

    在这里插入图片描述
    加油!

    共同努力!

    Keafmd

    展开全文
  • javabean实体类对象转为Map类型对象的方法 //将javabean实体类转为map类型,然后返回一个map类型的值 public static Map beanToMap(Object obj) { Map params = new HashMap(0); try { P

    javabean实体类对象转为Map类型对象的方法

    复制代码
    //将javabean实体类转为map类型,然后返回一个map类型的值
        public static Map<String, Object> beanToMap(Object obj) { 
                Map<String, Object> params = new HashMap<String, Object>(0); 
                try { 
                    PropertyUtilsBean propertyUtilsBean = new PropertyUtilsBean(); 
                    PropertyDescriptor[] descriptors = propertyUtilsBean.getPropertyDescriptors(obj); 
                    for (int i = 0; i < descriptors.length; i++) { 
                        String name = descriptors[i].getName(); 
                        if (!"class".equals(name)) { 
                            params.put(name, propertyUtilsBean.getNestedProperty(obj, name)); 
                        } 
                    } 
                } catch (Exception e) { 
                    e.printStackTrace(); 
                } 
                return params; 
        }
    展开全文
  • #region DataRow转为实体类 /// /// DataRow转为实体类 /// /// 实体类类型 /// <param name="row">DataRow /// <returns>T public T DataRowToModel(DataRow row) { T t = default(T); PropertyInfo...
  • 1.调用这个方法BeanMapUtils.mapToBean(),实现map集合转实体类对象; 注意:这个方法转换时我这边老是报类型转换错误,引用这段代码没有报错的小伙伴可继续使用,此方法扩展性好,报错的小伙伴请看最下面的一个map转实体...
  • 后台本来用的是LitJson,将json字符串转换为实体类对象时,发生int,datetime等字段类型空值不能转换的问题,看了下LitJson的转换方法,没有提供更多参数,也就没有研究它,直接转用Newtonsoft.Json。 Newtonsoft....
  • JSON字符串转为指定实体类对象

    千次阅读 2019-08-13 10:27:54
    创建JsonStringToClass对象即可 package utils; import net.sf.json.JSONArray; import net.sf.json.JSONObject; import java.lang.reflect.Field; import java.lang.reflect.Modifier; import java.text....
  • 自制一个小工具,excel的表头为属性名,下面为对应的属性...调用handelExcel方法传入,excle名称,mutifile文件,和实体类Class,即可返回对象实体类的list。 excel: 实体类: util工具类: package com....
  • 将返回的ResponseBody转为实体类

    千次阅读 2019-07-04 10:17:15
    当网络请求返回ResponseBody时,如何将ResponseBody转为实体对象? 1.如果是个无嵌套的普通的实体类,可使用如下方法: public Object JSONTOBean(ResponseBody body, Class clazz) { Object obj = null; try { ...
  • java 将map转为实体类

    2020-01-17 11:31:49
    使用反射将map转为对象,如果不使用反射的话需要一个get一个set写起来麻烦,并且不通用,所以写了一个通用的方法将map集合转为对象,直接看代码,注释也都挺清楚的 publicstatic<T> T map2Object(Map<...
  • net.sf.json.JSONObject json1=JSONObject.toBean(jsonObject, 实体类.class); // 阿里巴巴json转化 com.alibaba.fastjson.JSONObject json2=com.alibaba.fastjson.JSONObject.toJavaObject(jsonObjec...
  • 一、自己定义方法 ...//将map转换为JSON ,再将JSON 字符串 转换为 实体类对象 Risk risk = JSON . parseObject ( JSON . toJSONString ( Map < String , Object > ) , Class clazz ) ;
  • //注意:要求数据库的列名必须和JAVA实体类的属性名、类型完全一致 public static List resultSetToList(ResultSet rs,Class cls) { //定义接收的集合 List list = new ArrayList(); //创建一个对象,方便后续反射...
  • 1.java将字符串转为json,json按key取值,并将json转换为java对象/实体类,将java对象或者实体类转换为json数据 代码结构: test.java package test; import com.alibaba.fastjson.JSON; import ...
  • 公司使用JFinal框架,发现JFinal中Record数据无法通过fastjson直接转实体类对象,只能使用record各种get获取数据,实在是无法忍受,写了两个简单方法(还需完善) /** * Record数据转换为对象 * <li>暂时只...
  • //将json数据转换为java对象/实体类 UserBean user = JSON.parseObject(str, UserBean.class); System.out.println(user.toString()); //将java对象/实体类转换为json数据 JSONObject jsonUser = (JSONObject) ...
  • 在java web项目中读取resource路径下的json文件并转为实体类 的工具类如下。 1.新建工具类,接收json文件的路径和要转为的实体类,返回实体类或实体类的集合 import java.io.IOException; import java.io....
  • JSON转对象(实体类对象

    千次阅读 2018-10-09 15:44:19
    1、创建对象 import java.io.Serializable;import com.alibaba.fastjson.annotation.JSONField;public class PushMsgContent implements Serializable{ /** * */ private static final long serialVersionUID = ...
  • 将Object对象转换成实体类对象

    千次阅读 2020-09-29 20:51:20
    java中,如果将Object对象强转成实体类对象,可能会出现java.util.LinkedHashMap cannot be cast to 异常 解决方法: 利用 com.fasterxml.jackson.databind.ObjectMapper 包下的 convertValue方法可将对象转换为对应...
  • JSONObject对象实体类

    千次阅读 2019-04-19 09:42:52
    JSONObject pwkx = JSONObject.fromObject(pwkxx); PWK pwk=(PWK )JSONObject.toBean(pwkx, PWK .class);
  • java中将json字符串转为实体对象 import com.alibaba.fastjson.JSONObject; JSONObject.parseObject("{title:‘完善资料’,content:‘完善个人资料,标签和兴趣爱好’,diamond:’+2’,type:1,status:1}", ...
  • 这篇文章主要记录 使用原生sql查询 并且把查询结果转为...1.把原生sql查询的结果转为实体类对象用的是Query query = em.createNativeQuery(sql, Student.class); 2.实体类 要使用@Entity 和 @Id 注解,否则会报错 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 24,582
精华内容 9,832
关键字:

对象转为实体类对象