谁能帮我将xml格式转化为Java对象,弄了半天都弄不出来,不胜感激

发布于 2021-11-23 20:16:25 字数 277 浏览 972 评论 16

我有一个xml的文件:

<?xml version="1.0" encoding="UTF-8"?>
 <bean id="1" name="b" code="123"/>

<bean id="2" name="ad" code="456"/>

不知道有哪位大神能帮我解析一个 变成Java对象,这个xml有多个bean 都是这样的格式 ,也就是说解析过会应该是个集合,再次感谢各位大神,谢谢你们不辞辛苦来帮助我。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(16

乞讨 2021-11-29 12:46:28

如果格式固定,先转成标准的就能解析了,在第二行和最后一行加入外壳包住bean节点。

爱的那么颓废 2021-11-29 12:46:27

正解

倾城泪 2021-11-29 12:46:18

非标准的不能用三方的东西,比如tomcat用的那个啥,你只能自己解析了 读一个尖括号进栈,读一个键值对存为属性,再读一个反尖括号出栈

永不分离 2021-11-29 12:46:14

首先你定义一个element,以这个element为起点,开始向上,或者向下解析文档。

葬花如无物 2021-11-29 12:46:04

可以当做xml片段来解析

屌丝范 2021-11-29 12:45:50

模仿spring?你会发现spring配置文件上面还有一个根节点beans

浅沫记忆 2021-11-29 12:45:50

Spring的beans 主要是通过class属性 ,通过Java反射技术,将每个属性注入进去的,但是现在给的一个xml就是不标准的,只有属性没有class

情绪失控 2021-11-29 12:45:09

就是不是标准的才麻烦,给了这样的数据格式,就得解析啊,能有办法嘛

把回忆走一遍 2021-11-29 12:41:05

深表同情!一定要交涉下,杜绝不规范开发

爱的那么颓废 2021-11-29 12:35:24

兄弟,标准的xml需要有一个根节点,你加一个作为根吧

回眸一笑 2021-11-29 10:04:09

 你这个不是标准的xml

风透绣罗衣 2021-11-29 07:48:17

能帮忙看看吗

深巷少女 2021-11-29 01:26:12

@凨潇潇 百度吧,java解析xml,很基础很基础的东东

策马西风 2021-11-28 11:18:21

回复
我试过了,因为这个格式和标准的格式不一样,所以就弄不懂了,菜鸟,o(︶︿︶)o 唉

策马西风 2021-11-28 03:57:44

大婶都没时间来帮你干这种事情

鹤舞 2021-11-27 11:31:47
String str="<bean id="1" name="b" code="123"/>";
		

		/**
		 * 依次匹配Id,name,code
		 * 得到的是 属性和值的一个字符串
		 */
		Pattern[] patterns={
				
     Pattern.compile("id="[0-9]*""),
     
     Pattern.compile("name="(\w)*""),
     
     Pattern.compile("code="(\w)*"")
		};  //匹配这些属性的字符串
		
		Pattern pattern=Pattern.compile("=");//这个是得出具体的属性和值
		
		
		for (int i = 0; i < patterns.length; i++) {
			
			
			Matcher matcher=patterns[i].matcher(str);
			
			if(matcher.find()){
				String fieldstr=str.substring(matcher.start(),matcher.end());
	
				Matcher matcher2=pattern.matcher(fieldstr);
				if(matcher2.find()){
					
					String property=fieldstr.substring(0,matcher2.start()-1);
					String value=fieldstr.substring(matcher2.start()+1);
					System.out.println("对象的"+property+"为"+value);
					
				}
			}
			
		}
	}

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文