添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
温柔的遥控器  ·  QTreeView 和 ...·  1 年前    · 
心软的水煮肉  ·  jquery - Jquery ...·  3 年前    · 
玉树临风的苦瓜  ·  crc 16 ibm ...·  3 年前    · 

业务场景:一个房产交易系统中的业务需求,查询房屋交易状态接口,调用第三方接口返回一个vo对象,该对象的属性主要是描述该房屋的交易情况,比如是否抵押,是否被查封等,现在需要利用该对象的值决定返回给调用方的返回值。(现在一个对象中有很多个属性,大部分属性的值影响返回结果)
代码:
vo对象:

@Data
public class BDCQZTXX {
    private String fwbm;//房屋编码
    private String bdcdyh;//不动产单元号
    private String xzqhdm;//行政区划代码
    private String sfybdy;//是否ybdy
    private String sfzgedy;//是否zgedy
    private String sfzjgcdy;//是否在建工程抵押
    private String sfcf;//是否查封
    private String sfycf;//是否预查封
    private String sfyg;//是否预购
    private String sfydy;//是否预抵押
    private String sfyy;//是否异议
    private String sfdy;//是否抵押
    private String sfsd;//是否sd
    private String sfdj;//是否登记
    private String sfzdzr;//是否zdzr
    private String sfzbyw;//是否在办业务
    private String bz;//备注

.
.
.
模拟业务处理(测试)

public static void main(String[] args){ //模拟调用接口返回的对象数据 String s = "{\n" + " \"fwbm\": \"1\",\n" + " \"bdcdyh\": \"1\",\n" + " \"xzqhdm\": \"1\",\n" + " \"sfdy\": \"0\",\n" + " \"sfzjgcdy\": \"0\",\n" + " \"sfcf\": \"0\",\n" + " \"sfyg\": \"0\",\n" + " \"sfydy\": \"0\",\n" + " \"sfyy\": \"0\",\n" + " \"sfdyi\": \"0\",\n" + " \"sfsd\": \"0\",\n" + " \"sfdj\": \"0\",\n" + " \"sfzdzr\": \"0\",\n" + " \"sfzbym\": \"0\",\n" + " \"bz\": \"\"\n" + " }"; //是否可售(0不可售1可售) int sfks = 1; //json字符串转对象(fastjson) BDCQZTXX bdcqztxx =JSONObject.parseObject(s, BDCQZTXX.class); //遍历对象的字段数组 for (Field f : bdcqztxx.getClass().getDeclaredFields()) { f.setAccessible(true);//表示反射对象是否抑制java语言访问 String name = f.getName();//获取字段名称 Object value = f.get(bdcqztxx);//获取对应字段的值 Class<?> type = f.getType();//获取对应字段的类型 System.out.println(type); //不需要判断的字段 if ("FWBM".equals(name) || "BDCDYH".equals(name) || "BZ".equals(name) || "XZQHDM".equals(name)) { System.out.println("当前不影响判断的字段为 "+name + ":" + value); continue; System.out.println("当前影响判断的字段为 "+name + ":" + value); //需要判断的字段 if ("1".equals(String.valueOf(value))) { //0为不可售 sfks = 0; break; if (sfks == 1) { System.out.println("可售"); if (sfks == 0) { System.out.println("不可售");

.
.
.
就此完成!!!

业务场景:一个房产交易系统中的业务需求,查询房屋交易状态接口,调用第三方接口返回一个vo对象,该对象的属性主要是描述该房屋的交易情况,比如是否抵押,是否被查封等,现在需要利用该对象的值决定返回给调用方的返回值。(现在一个对象中有很多个属性,大部分属性的值影响返回结果)代码:vo对象:@Datapublic class BDCQZTXX { private String fwbm;//房屋编码 private String bdcdyh;//不动产单元号 private St for (var Key in Statistics_Website_logo){ Websitelogo =Websitelogo+'&'+''+Key+'='+Statistics_Website_logo[Key]+''; 后台接收客户端传过来的值,经过相应的处理和操作,对数据库进行CURD操作。我们通常直接获取json对象,或创建一个dto对象映射json对象,并将值插入到固定的地方。如果客户端传递的参数特别多,前面的一对一的操作显然不太合适,这将编写大量看起来臃肿的代码。所以,更有效的方式是遍历json对象,数据表对象根据参数名称识别对应插入值的字段。 获取对象的所有属性 Field[] field =...
1.getFields():获得某个类的所有的公共(public)的字段,包括父类中的字段。2.getDeclaredFields():获得某个类的所有声明的字段,即包括public、private和proteced,但是不包括父类的申明字段。 3.同样类似的还有getConstructors()和getDeclaredConstructors()、getMethods()和getDe...
using (var context = new YZS_TRAEntities()) var entitys = context.医生扩展信息.Where(f => f.医生ID == 6196).FirstOrDefault(); //通过getDeclaredFields()方法获取对象类中的所有属性(含私有) Field[] fields = voucher.getClass().getDeclaredFields(); for (Field field : fields) {
什么是方法重载 方法重载是指在一个类中定义多个同名的方法,但要求每个方法具有不同的参数的类型或参数的个数。方法重载实际上就是方法的多元化,当一个方法满足不了我们的需求的时候,需要再次添加多个方法,在进行调用的时候会很复杂。使用方法重载时根据实参的类型或者数量来确定使用哪个方法。 方法重载的特点 参数的类型不同 参数的个数不同 参数的个数相同时他们的先后顺序不同 namespace ConsoleApp1 public class Math //计算器 求和
遍历对象方法一、对象遍历方法1.==for...in==2.==Object.keys()==、==Object.values()==、==Object.entries()==3.==Object.getOwnPropertyNames()==4.==Object.getOwnPropertySymbols()==5.==Reflect.ownKeys()== 一、对象遍历方法 1.for…in for...in主要用于循环对象属性。循环中的代码每执行一次,就会对对象的属性进行一次操作。语法如下:
public static <T> Object processClassType(Object object, Class<T> clazz, Function<T, T> handler) { log.info("处理指定类型,开始遍历返回值{}中的{}", object, clazz.getName()); if (cla...
com.alibaba.fastjson.JSONException: write javaBean error, fastjson version 1.2.75, class com.signatu com.alibaba.fastjson.JSONException: write javaBean error, fastjson version 1.2.75, class com.signatu 菏院第二宅男: 看了你的文章,浪费我生命中的两分钟 idea不显示services窗口 sugar_cookie: 我也是老版本,谢谢了 centos7安装mysql5.7 太感谢,困扰了我一天的安装问题,看了您的这一篇文章顺利解决,太感动了表情包