SpringBoot+Vue实现前后端分离 分布式开发(二)

前端数据传递到后端

前端操作

一、编辑html

1,先写一个input

<div id="set_user">
    <input type="text" v-model="name">
    <input type="text" v-model="age">
    <input type="text" v-model="sex">
    <button @click="set_user()">提交</button>
</div>

2,写一个scprict

    var vm2 = new Vue({
    
    
        el:'#set_user',
        data: {
    
    
            name:'',
            age:'',
            sex:''
        },
        methods:{
    
    
            set_user() {
    
    
                admin
                    .post('user/set_user',{
    
    
                    name:this.name,
                    age: this.age,
                    sex: this.sex
                })
                .then(response => {
    
    
                    alert("提交成功");
               })
                .catch();
            }
        }
    });

二、后端操作

1.编写个serUser()方法

代码如下(示例):

 @PostMapping("/set_User")
    public ResponseDTO setUser(@RequestBody JSONObject jsonObject) {
    
    

        //前端使用json数据格式传递参数,存放在jsonObject对象中;

        System.out.println("姓名:" + jsonObject.get("name"));
        System.out.println("年龄:" + jsonObject.get("age"));
        System.out.println("性别:" + jsonObject.get("sex"));


        ResponseDTO dto = new ResponseDTO();
        dto.setSuccess(true);

        return dto;

    }

在这里插入图片描述
搞定定!

好了这就是最基本 前后端分离开发 样子
放上前后端全代码

后端

package com.stu.demo.controller;


import com.stu.demo.domain.ResponseDTO;
import com.stu.demo.domain.user;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import net.minidev.json.JSONObject;


@Controller
@ResponseBody
@RequestMapping("/user")
public class userController {
    
    

    @GetMapping("/get_user")
    public ResponseDTO getUser() {
    
    
        ResponseDTO dto = new ResponseDTO();

        user user = new user();
        user.setName("刚子");
        user.setAge(20);
        user.setSex("女");

        dto.setSuccess(true);
        dto.setData(user);

        return dto;
    }

    @PostMapping("/set_user")
    public ResponseDTO setUser(@RequestBody JSONObject jsonObject) {
    
    

        //前端使用json数据格式传递参数,存放在jsonObject对象中;

        System.out.println("姓名:" + jsonObject.get("name"));
        System.out.println("年龄:" + jsonObject.get("age"));
        System.out.println("性别:" + jsonObject.get("sex"));


        ResponseDTO dto = new ResponseDTO();
        dto.setSuccess(true);

        return dto;

    }

}

前端

<html>
<head>
    <meta charset="UTF-8">
    <meta name="viewport"
          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>再试一次</title>

    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
    <script src="https://cdn.staticfile.org/axios/0.18.0/axios.min.js"></script>
    <script src="common.js"></script>
    <script src="config.js"></script>


</head>
<body>

<table id="get_user">
    <tr>
        <td>姓名</td>
        <td>{
   
   {info.name}}</td>
    </tr>
    <tr>
        <td>年龄</td>
        <td>{
   
   {info.age}}</td>
    </tr>
    <tr>
        <td>性别</td>
        <td>{
   
   {info.sex}}</td>
    </tr>

</table>
<div id="set_user">
    <input type="text" v-model="name">
    <input type="text" v-model="age">
    <input type="text" v-model="sex">
    <button @click="set_user()">提交</button>
</div>

<script>
var vm = new Vue({
     
     
        el: '#get_user',
        data: {
     
     
            info: {
     
     }
        },
        mounted() {
     
     
                admin
                    .get('user/get_user')
                    .then(response => {
     
     
                       if (!check(response)) alert("获取用户信息时后他数据返回异常");
                       if (response.data.success === false) alert(response.data.message);
                       this.info = response.data.data;
                    })
                    .catch(function (error){
     
        //请求失败处理
                        console.log(error)
                    });
            }
    });
    var vm2 = new Vue({
     
     
        el:'#set_user',
        data: {
     
     
            name:'',
            age:'',
            sex:''
        },
        methods:{
     
     
            set_user() {
     
     
                admin
                    .post('user/set_user',{
     
     
                    name:this.name,
                    age: this.age,
                    sex: this.sex
                })
                .then(response => {
     
     
                    alert("提交成功");
               })
                .catch();
            }
        }
    });
</script>

</body>
</html>

猜你喜欢

转载自blog.csdn.net/weixin_43273466/article/details/113722691