您当前的位置: 首页 > 慢生活 > 程序人生 网站首页程序人生
11_JSON_解析器Jackson_java对象转json
发布时间:2022-09-30 18:10:22编辑:雪饮阅读()
处理maven依赖:
* 所需要的类ObjectMapper
* 关键字:jackson-databind
* File=>Project Structure...=>Project Settings=>Libraries=>+=>From Maven...=>搜索jackson-databind并勾选Download to
* 将下载下来的那个lib目录复制到web/WEB-INF下面,其它的就正常ok、apply。
建立待转换的类Company(并创建好getter和setter以及constructor(用过安卓Gjson的经验直觉)):
package package3.servlet;
import java.util.ArrayList;
public class Company {
private String company_name;
private double salary;
private ArrayList<Person> persons;
private Person legalPerson;
public Company(String company_name, double salary, ArrayList<Person> persons, Person legalPerson) {
this.company_name = company_name;
this.salary = salary;
this.persons = persons;
this.legalPerson = legalPerson;
}
public String getCompany_name() {
return company_name;
}
public void setCompany_name(String company_name) {
this.company_name = company_name;
}
public double getSalary() {
return salary;
}
public void setSalary(double salary) {
this.salary = salary;
}
public ArrayList<Person> getPersons() {
return persons;
}
public void setPersons(ArrayList<Person> persons) {
this.persons = persons;
}
public Person getLegalPerson() {
return legalPerson;
}
public void setLegalPerson(Person legalPerson) {
this.legalPerson = legalPerson;
}
}
Company依赖类Person:
package package3.servlet;
public class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
objectMapper.writeValueAsString一键转换java对象到json字符串
package package3.servlet;
import com.fasterxml.jackson.databind.ObjectMapper;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.ArrayList;
/*
*
* 所需要的类ObjectMapper
* 关键字:jackson-databind
* File=>Project Structure...=>Project Settings=>Libraries=>+=>From Maven...=>搜索jackson-databind并勾选Download to
* 将下载下来的那个lib目录复制到web/WEB-INF下面,其它的就正常ok、apply
*
*
* */
@WebServlet("/ServletTest")
public class ServletTest extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
/*
* 可能会抛出异常:
* javax.servlet.ServletException: Servlet执行抛出一个异常
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
*可能的原因:下载后的lib目录没有放在web/WEB-INF下面
*
* */
ObjectMapper objectMapper = new ObjectMapper();
ArrayList<Person> persons=new ArrayList<Person>();
Person legalPerson=new Person("布鲁斯韦恩",28);
persons.add(new Person("雪饮",24));
persons.add(legalPerson);
Company compay=new Company("韦恩企业",130000.00,persons,legalPerson);
String jsonString = objectMapper.writeValueAsString(compay);
response.setContentType("text/html;charset=utf-8");
response.getWriter().write(jsonString);
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doPost(request, response);
}
}
关键字词:JSON,解析器,Jackson,java对象转json
上一篇:16_Listener_ServletContextListener使用(servlet容器创建时加载相关配置文件)
下一篇:12_JSON_解析器Jackson_java对象转json_注解(JsonIgnore与JsonFormat)
相关文章
- 安卓okhttp发送json与解析json(支持嵌套)
- webman-请求-判断客户端是否接受json返回、获得请求的
- webman-快速開始-簡單示例-返回json、xml及jsonp
- workerman自定义协议-jsonl数据包(首部无符号int四字节
- phpunit断言-assertJsonStringEqualsJsonString
- phpunit断言-assertJsonStringEqualsJsonFile
- phpunit断言-assertJsonFileEqualsJsonFile
- 监视、jsonp、定时器、强制更新
- php的json_decode转换数据为null
- javascript学习笔记-JSON