java接收处理传入的xml格式的json数据

该代码段展示了一个方法,用于从HttpServletRequest中读取XML数据,转化为String,然后使用StringUtils提取特定标签内的内容,如日期、区域名、进入和离开人数。提取后的信息被用来创建一个Receive对象并存储到数据库。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

传入数据格式

 接收后台代码:

后台使用 HttpServletRequest 接收

 处理:

使用IOUtils.toString将数据装换为string类型,然后StringUtils工具使用处理字符串就可以了。

转换为string类型的数据后使用System.out.println();输出效果

 

 

@Override
    public int receive(HttpServletRequest request) {
        int r = -1;
        try {
            String xmlResult = IOUtils.toString(request.getInputStream(), request.getCharacterEncoding());
            System.out.println(xmlResult);
            //上传时间
            String dateTime = StringUtils.substringBetween(xmlResult, "<dateTime>", "</dateTime>");
            Date date = DateUtil.parse(dateTime);

            //获取区域数据
            String region = StringUtils.substringBetween(xmlResult, "<Region>", "</Region>");
            //在区域数据中检索数据
            //区域名
            String name = StringUtils.substringBetween(region, "<name>", "</name>");

            //进入人数
            String en = StringUtils.substringBetween(region, "<enter>", "</enter>");
            int enter = Integer.parseInt(en);

            //离开人数
            String ex = StringUtils.substringBetween(region, "<exit>", "</exit>");
            int exit = Integer.parseInt(ex);

            Receive receive = new Receive();
            receive.setDatetime(date);
            receive.setName(name);
            receive.setEnter(enter);
            receive.setAexit(exit);
            r = receivexmlDao.addInfo(receive);
        }catch (IOException e) {
            e.printStackTrace();
        }
        return r;
    }

IOUtils工具类所在的依赖:
        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>2.4</version>
        </dependency>

StringUtils工具类所在依赖:

        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>3.12.0</version>
        </dependency>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值