如何将列表转换为可读格式
how to convert list into readable format
当我执行这段代码时,我得到了解决方案。我需要将列表转换为可读格式。我的道代码是
public List<Data> getData() {
// TODO Auto-generated method stub
System.out.println("In getData dao************");
session=sessionFactory.openSession();
tx=session.beginTransaction();
List<Data> blist=session.createCriteria(>.class).list();
System.out.println("datalist dao************"+blist);
tx.commit();
session.close();
return blist;
}
Data.java
@Entity
@Table(name="tbl_genere")
public class Data implements Serializable{
private static final long serialVersionUID = 1L;
@Id
@Column(name="dataid")
private String DataId;
@Column(name="dataname")
private String DataName;
public String getDataId() {
return DataId;
}
public void setDataId(String dataId) {
DataId = dataId;
}
public String getDataName() {
return DataName;
}
public void setDataName(String dataName) {
DataName = dataName;
}
}
我找到了解决方案,但格式不可读。如何将其转换为可读格式?答案是dao************[com.pack.web.model.Data@1233c96, com.pack.web.model.Data@5ec471]。但我需要将列表存储为 json 格式的文件。我该怎么做。
您将必须覆盖对象的 toString()。如下使用或根据您的要求进行更改。
@Entity
@Table(name="tbl_genere")
public class Data implements Serializable{
private static final long serialVersionUID = 1L;
@Id
@Column(name="dataid")
private String DataId;
@Column(name="dataname")
private String DataName;
public String getDataId() {
return DataId;
}
public void setDataId(String dataId) {
DataId = dataId;
}
public String getDataName() {
return DataName;
}
public void setDataName(String dataName) {
DataName = dataName;
}
public String toString(){
return DataId+","+DataName;
}
}
在您的 Data
class
中覆盖 toString()
@Override
public String toString() {
return "Data{" +
"DataId='" + DataId + '\'' +
", DataName='" + DataName + '\'' +
'}';
}
然后在您的 getData()
方法中。
for(int i=0;i<blist.size();i++){
System.out.println(blist.toString());
}
List 正在将 Data 作为通用。在 Data class 和 Sysout 中覆盖 tostring() 方法使用 Arrays.toString(blist.toArray());您将获得可读格式的答案。
您可以在toString
方法中构建JSON
格式输出,如下所示:
@Override
public String toString(){
StringBuilder builder=new StringBuilder();
builder.append("{Data : {DataId:\'").append(DataId).append("\' , DataName: \'")
.append(DataName).append("\' } }");
builder.toString();
}
注意:确保转义 single/double 引号以获得正确的 json
输出。
当我执行这段代码时,我得到了解决方案。我需要将列表转换为可读格式。我的道代码是
public List<Data> getData() {
// TODO Auto-generated method stub
System.out.println("In getData dao************");
session=sessionFactory.openSession();
tx=session.beginTransaction();
List<Data> blist=session.createCriteria(>.class).list();
System.out.println("datalist dao************"+blist);
tx.commit();
session.close();
return blist;
}
Data.java
@Entity
@Table(name="tbl_genere")
public class Data implements Serializable{
private static final long serialVersionUID = 1L;
@Id
@Column(name="dataid")
private String DataId;
@Column(name="dataname")
private String DataName;
public String getDataId() {
return DataId;
}
public void setDataId(String dataId) {
DataId = dataId;
}
public String getDataName() {
return DataName;
}
public void setDataName(String dataName) {
DataName = dataName;
}
}
我找到了解决方案,但格式不可读。如何将其转换为可读格式?答案是dao************[com.pack.web.model.Data@1233c96, com.pack.web.model.Data@5ec471]。但我需要将列表存储为 json 格式的文件。我该怎么做。
您将必须覆盖对象的 toString()。如下使用或根据您的要求进行更改。
@Entity
@Table(name="tbl_genere")
public class Data implements Serializable{
private static final long serialVersionUID = 1L;
@Id
@Column(name="dataid")
private String DataId;
@Column(name="dataname")
private String DataName;
public String getDataId() {
return DataId;
}
public void setDataId(String dataId) {
DataId = dataId;
}
public String getDataName() {
return DataName;
}
public void setDataName(String dataName) {
DataName = dataName;
}
public String toString(){
return DataId+","+DataName;
}
}
在您的 Data
class
toString()
@Override
public String toString() {
return "Data{" +
"DataId='" + DataId + '\'' +
", DataName='" + DataName + '\'' +
'}';
}
然后在您的 getData()
方法中。
for(int i=0;i<blist.size();i++){
System.out.println(blist.toString());
}
List 正在将 Data 作为通用。在 Data class 和 Sysout 中覆盖 tostring() 方法使用 Arrays.toString(blist.toArray());您将获得可读格式的答案。
您可以在toString
方法中构建JSON
格式输出,如下所示:
@Override
public String toString(){
StringBuilder builder=new StringBuilder();
builder.append("{Data : {DataId:\'").append(DataId).append("\' , DataName: \'")
.append(DataName).append("\' } }");
builder.toString();
}
注意:确保转义 single/double 引号以获得正确的 json
输出。