Axios异步框架和Json数据格式 - wpsshop博客
当前位置:   article > 正文

Axios异步框架和Json数据格式

Axios异步框架和Json数据格式

一.Axios异步框架

对原生的Ajax进行封装,简化书写。

给大家提供一下axios的源码:

链接:https://pan.baidu.com/s/1ZSrUBe0B4dIq7d6NpUzqOQ 
提取码:gr86 

 

将源码粘贴到项目之中。 

1.基础使用

首先单独创建一个Servlet

  1. import javax.servlet.ServletException;
  2. import javax.servlet.annotation.WebServlet;
  3. import javax.servlet.http.HttpServlet;
  4. import javax.servlet.http.HttpServletRequest;
  5. import javax.servlet.http.HttpServletResponse;
  6. import java.io.IOException;
  7. @WebServlet("/AxiosServlet")
  8. public class Axios_Servlet extends HttpServlet {
  9. @Override
  10. protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
  11. String method =req.getMethod();
  12. System.out.println(method+"方法已启动~");
  13. String username= req.getParameter("username");
  14. System.out.println(username);
  15. resp.setContentType("text/html;charset=UTF-8");
  16. resp.getWriter().write("Axios启动~");
  17. }
  18. @Override
  19. protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
  20. this.doGet(req, resp);
  21. }
  22. }

引入外部js:

 <script src="js/axios-0.18.0.js"></script>

 如果是get方法,则参数直接写进Url:

  1. axios({
  2. //大括号即为js对象
  3. method:"get",
  4. url:"http://localhost:8080/Ajax_S1_war/AxiosServlet?username=jsl"
  5. }).then(function (resp){
  6. alert(resp.data);
  7. })

如果是post方法,则把参数写进data域:

  1. axios({
  2. //大括号即为js对象
  3. method:"post",
  4. url:"http://localhost:8080/Ajax_S1_war/AxiosServlet",
  5. data:"username=jsl"
  6. }).then(function (resp){
  7. alert(resp.data);
  8. })

2.别名方法

当然Axios内部可以直接调用get和post方法:

  1. axios.get("http://localhost:8080/Ajax_S1_war/AxiosServlet?username=jsl").then(
  2. function (resp){
  3. alert(resp.data);
  4. }
  5. )
  6. axios.post("http://localhost:8080/Ajax_S1_war/AxiosServlet","username=jsl").then(
  7. function (resp){
  8. alert(resp.data);
  9. }
  10. )

均可启动成功:

 

 

二.Json数据格式

 

        全名JavaScript Object Notation,即JS简谱、JS对象表示法。由于其语法简单,层次结构鲜明,现在多用于作为数据载体,在网络中进行数据传输。

1.基础语法

  1. var jsl={
  2. "gender":"man",
  3. "age":23,
  4. home:["拜仁","国米","阿贾克斯"]
  5. }
  6. alert(jsl.home[0]);

非常简单,不再赘述~

 

2.Java对象转换

 

  • 请求数据:json字符串变为Java对象
  • 响应数据:Java对象变为json字符串

采用阿里巴巴的API:Fastjson

导入坐标:

  1. <dependency>
  2. <groupId>com.alibaba</groupId>
  3. <artifactId>fastjson</artifactId>
  4. <version>1.2.62</version>
  5. </dependency>

 创建一个用于测试的类:

  1. public class TestDemo {
  2. private Integer id;
  3. private String username;
  4. private String password;
  5. public Integer getId() {
  6. return id;
  7. }
  8. public void setId(Integer id) {
  9. this.id = id;
  10. }
  11. public String getUsername() {
  12. return username;
  13. }
  14. public void setUsername(String username) {
  15. this.username = username;
  16. }
  17. public String getPassword() {
  18. return password;
  19. }
  20. public void setPassword(String password) {
  21. this.password = password;
  22. }
  23. @Override
  24. public String toString() {
  25. return "TestDemo{" +
  26. "id=" + id +
  27. ", username='" + username + '\'' +
  28. ", password='" + password + '\'' +
  29. '}';
  30. }
  31. }

主方法中测试:

  1. import com.alibaba.fastjson.JSON;
  2. public class Main {
  3. public static void main(String[] args) {
  4. //1.Java转换为Json
  5. TestDemo TD=new TestDemo();
  6. TD.setId(1);
  7. TD.setPassword("123456");
  8. TD.setUsername("jsl");
  9. String jsonOb = JSON.toJSONString(TD);
  10. System.out.println(jsonOb);
  11. }
  12. }

打印出json格式的数据: 

然后是字符串转为java对象:

  1. //2.json转为java
  2. TestDemo t= JSON.parseObject("{\"id\":1,\"password\":\"123\",\"username\":\"zhangsan\"}",TestDemo.class);
  3. System.out.println(t);

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/263570
推荐阅读