gpt4 book ai didi

java - 将 String 转换为 java bean 类型

转载 作者:太空宇宙 更新时间:2023-11-04 14:02:14 26 4
gpt4 key购买 nike

我有一个看起来像这样的字符串,它代表一个 pojo。

Model [Name=Mobie , location= US, actualTransferDate=null, scanserialCode=234335,1237787, modelNum=MIC 898989 ]

我希望读者能更清楚地了解上面的字符串。我想将 jsp 页表中用户选中的复选框值(代表 pojo 下面的字段的整行)读取到另一个 jsp 页面。因此,在 Controller 中,我读取这些选中的复选框行,如下所示。

String[] checkeditems = request.getParameterValues("case");//case represents the entire row
for (String string : checkeditems) {
log.info("row1"+string);// String pasted above in the message
}

从上面它返回一个字符串数组,我想将其转换为列表对象,这样我就可以轻松地将这个列表发送到下一个jsp以进行 View 。我觉得我正走向错误的方向并做一些不相关的事情。

我有一个 pojo

public class Model{
private String Name;
private String location;
private String actualTransferDate;
private String scanserialCode;
private String modelNum;
====Getters/Setter======

如何将此字符串转换为此模型对象?

最佳答案

您可以将字符串拆分为“,”并迭代结果数组。与BeanUtils您可以从 apache 填充新的 pojo 实例吗?

示例:

public class Model {
private String Name;
private String location;
private String actualTransferDate;
private String scanserialCode;
private String modelNum;
public String getName() {
return Name;
}
public void setName(String name) {
Name = name;
}
public String getLocation() {
return location;
}
public void setLocation(String location) {
this.location = location;
}
public String getActualTransferDate() {
return actualTransferDate;
}
public void setActualTransferDate(String actualTransferDate) {
this.actualTransferDate = actualTransferDate;
}
public String getScanserialCode() {
return scanserialCode;
}
public void setScanserialCode(String scanserialCode) {
this.scanserialCode = scanserialCode;
}
public String getModelNum() {
return modelNum;
}
public void setModelNum(String modelNum) {
this.modelNum = modelNum;
}
@Override
public String toString() {
return "[Name = " + getName() + "location = " +getLocation() + ", actualTransferDate = " + getActualTransferDate() + ", scanserialCode = " + getScanserialCode() + ", modelNum = " + getModelNum() + "]";
}
}


import org.apache.commons.beanutils.BeanUtils;

public class Main {

public static void main(String[] args) throws IllegalAccessException, InvocationTargetException {
String model = new String("Name=Mobie , location= US, actualTransferDate=null, scanserialCode=234335,1237787, modelNum=MIC 898989");

String[] modelValues = model.split(", ");

Model m = new Model();

for (String value : modelValues) {
String[] s = value.split("=");

String fieldName = s[0];
String fieldValue = s[1];

BeanUtils.setProperty(m, fieldName, fieldValue);
}

System.out.println(m.toString());
}
}

Maven 依赖:

<dependencies>
<dependency>
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils</artifactId>
<version>1.9.2</version>
</dependency>
</dependencies>

关于java - 将 String 转换为 java bean 类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29192697/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com