需要的jar:
Maven依赖:
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>2.2.2</version>
<classifier>jdk15</classifier>
</dependency>
import net.sf.json.JSONObject;
public class JsonlibTest {
public static void main(String[] args) {
/*假如:两个系统进行对接,User.java是A系统中的一个类,Person.java是B系统中的一个类*/
User user = new User("lucheng", 1);
JSONObject jsonUser = JSONObject.fromObject(user);//注意:User类需public修饰
JSONObject jsonPerson = new JSONObject();
String userName = jsonUser.get("userName").toString();//姓名
if(userName!=null) {
jsonPerson.put("name", userName.toString());
}
String userSex = jsonUser.get("userSex").toString();//性别
if(userSex!=null) {
if(userSex.equals("0")) {
jsonPerson.put("sex", "女");
} else {
jsonPerson.put("sex", "男");
}
}
Person person = (Person) JSONObject.toBean(jsonPerson,Person.class);//注意:Person类需public修饰
System.out.println("Person [name="+ person.getName() +",sex="+ person.getSex() +"]");
}
}
import java.io.Serializable;
public class User implements Serializable {
private static final long serialVersionUID = 1098200633009452425L;
private String userName;
private int userSex;
public User(){
}
public User(String userName,int userSex) {
this.userName = userName;
this.userSex = userSex;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public int getUserSex() {
return userSex;
}
public void setUserSex(int userSex) {
this.userSex = userSex;
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((userName == null) ? 0 : userName.hashCode());
result = prime * result + userSex;
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
User other = (User) obj;
if (userName == null) {
if (other.userName != null)
return false;
} else if (!userName.equals(other.userName))
return false;
if (userSex != other.userSex)
return false;
return true;
}
}
import java.io.Serializable;
public class Person implements Serializable {
private static final long serialVersionUID = -145610726414492908L;
private String name;
private String sex;
public Person() {
}
public Person(String name, String sex) {
this.name = name;
this.sex = sex;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((name == null) ? 0 : name.hashCode());
result = prime * result + ((sex == null) ? 0 : sex.hashCode());
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
Person other = (Person) obj;
if (name == null) {
if (other.name != null)
return false;
} else if (!name.equals(other.name))
return false;
if (sex == null) {
if (other.sex != null)
return false;
} else if (!sex.equals(other.sex))
return false;
return true;
}
}