Dept:

package com.example.demo.gs;

public class Dept {
private int id;
private String name;
private String location;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
} public String getLocation() {
return location;
}
public void setLocation(String location) {
this.location = location;
}
@Override
public String toString() {
return "Dept [id=" + id + ", name=" + name + ", location=" + location + "]";
} }

DeptMapper:

package com.example.demo;

import java.util.List;

import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
import org.w3c.dom.ls.LSOutput; import com.example.demo.gs.Dept; @Mapper
public interface DeptMapper { @Select("select * from dept")
List<Dept>select(); @Insert("insert into `dept`(name,location)values(#{name},#{location})") void Insert (String name,String location); @Select("select * from dept where id =#{id}") List<Dept>selectFrom(int id); @Update("update `dept` set location =#{location}where location=#{OldLocation}") void updateFromLocation(String location,String OldLocation); @Delete("delete from dept where location =#{location}") void deleteFromDept(String location); }

  

ServeMapper

package com.example.demo;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import com.example.demo.gs.Dept; @Service
public interface DeptService { List<Dept>selectFromService(); void Insert(Dept dept); List<Dept>selectFromId(int id); void updateFromLocation(String location ,String oldLocation); void Delete(String location); }

DeptServiceImplement:

package com.example.demo.gs;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import com.example.demo.DeptMapper;
import com.example.demo.DeptService; @Service
public class DeptServiceImplement implements DeptService {
@Autowired
private DeptMapper Mapper; @Transactional
@Override
public List<Dept> selectFromService() {
// TODO Auto-generated method stub
return this.Mapper.select();
} @Transactional
@Override
public void Insert(Dept dept) {
this.Mapper.Insert(dept.getName(),dept.getLocation()); // TODO Auto-generated method stub } @Transactional
@Override
public List<Dept> selectFromId(int id) {
// TODO Auto-generated method stub
return this.Mapper.selectFrom(id);
} @Transactional
@Override
public void updateFromLocation(String location ,String oldLocation) {
this.Mapper.updateFromLocation(location, oldLocation); } @Transactional
@Override
public void Delete(String location ) {
this.Mapper.deleteFromDept(location);
System.out.println(location);
} }

DeptContorller

package com.example.demo.gs;

import java.util.List;

import org.apache.ibatis.annotations.Delete;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController; import com.example.demo.DeptService; @RestController
public class DeptContorller { @Autowired
private DeptService Service; @GetMapping("/select")
@ResponseBody
List<Dept>Select(){
List<Dept> userDepts =this.Service.selectFromService();
return userDepts; } @GetMapping("/delete")
@ResponseBody
List<Dept>delete(int id) {
return this.Service.selectFromId(id);
} @PostMapping("/Insert")
@ResponseBody
void Insert(@RequestBody Dept dept) {
this.Service.Insert(dept); } @GetMapping("/Deletes")
@ResponseBody
void Deletes(String location){
this.Service.Delete(location);
System.out.println(location); } @GetMapping("/Update")
@ResponseBody
void Update(String location ,String OldLocation){
this.Service.updateFromLocation(location, OldLocation); }
}

路由:

import Vue from "vue";
import VueRouter from "vue-router";
import SelectView from "../components/SelectView.vue";
import SelectFromView from "../components/SelectFromView.vue";
import InsertView from "../components/InsertView.vue";
import DeleteView from "../components/DeleteView.vue";
import UpdateView from "../components/UpdateView.vue";
Vue.use(VueRouter); const routes = [
{
path: "/",
name: "Select",
component: SelectView,
},
{
path: "/1",
name: "Delete",
component: SelectFromView,
},
{
path: "/2",
name: "Insert",
component: InsertView,
},
{
path: "/3",
name: "DeleteView",
component: DeleteView,
},
{
path: "/4",
name: "UpdateView",
component: UpdateView,
},
]; const router = new VueRouter({
routes,
}); export default router;
 
 查询部分:
<template>
<div class="nav">
<!-- <button @click="inserts()">查询</button> -->
<el-button size="small" @click="inserts()" type="primary">查询</el-button> <div class="navs">
<!-- ------------------- -->
<div v-for="item in count" :key="item.id">
<el-table :data="tableData" style="width: 100%">
<el-table-column prop="date" label="账号" width="180">
<span>{{ item.id }}</span>
</el-table-column>
<el-table-column prop="name" label="部门" width="180">
<span>{{ item.location }}</span>
</el-table-column>
<el-table-column prop="address" label="名字">
<span>{{ item.name }}</span>
</el-table-column>
</el-table>
</div>
</div>
</div>
<!-- </div> -->
</template> <script>
import axios from "axios";
export default {
name: "LoginView",
data() {
return {
count: [],
tableData: [
{
date: "2016-05-02",
name: "王小虎",
address: "上海市普陀区金沙江路 1518 弄",
},
],
};
}, methods: {
inserts() {
axios.get("http://localhost:8086/select/").then((result) => {
console.log(result.data);
this.count = result.data;
});
},
},
};
</script> <style>
label {
font-size: 20px;
font-weight: 700;
} .navs {
margin-top: 10px;
}
-- > -- > .nav {
border-top: 3px solid #ff8500;
background-color: #fcfcfc;
border-bottom: 1px solid #edeeed;
line-height: 41px;
}
.nav a {
display: inline-block;
height: 41px;
padding: 0px 10px;
font-size: 15px;
color: #4c4c4c;
font-family: "微软雅黑";
text-decoration: none;
}
.nav a:hover {
background: #edeeed;
color: #ff8500;
}
</style>
 
根据ID进行查找:
 
<template>
<div class="nav">
<label for="#">查询账号:</label>
<!-- <input v-model="count" type="text" /> -->
<el-input
size="small"
style="width: 150px"
v-model="count"
placeholder="请输入内容"
></el-input>
<div v-for="item in name" :key="item.id">
<div class="navs">
<label for="#">账号:</label>&nbsp;&nbsp;&nbsp;&nbsp;
<span>{{ item.id }}</span
>&nbsp;&nbsp; <label for="#">部门:</label> &nbsp;&nbsp;&nbsp;
<span>{{ item.location }}</span
>&nbsp;&nbsp; <label for="#">名字:</label>&nbsp;&nbsp;&nbsp;
<span>{{ item.name }}</span>
</div>
</div>
<!-- <button @click="Delete()">查询</button> -->
<el-button
style="margin-left: 12px"
size="medium"
@click="Delete()"
type="success"
>查询</el-button
>
</div>
</template> <script>
import axios from "axios"; export default {
name: "DleteView",
data() {
return {
count: [],
name: [],
};
}, methods: {
Delete() {
axios({
// 请求方式
method: "GET",
// 请求地址
url: `http://localhost:8086/delete`,
// URL中的查询参数
params: {
id: this.count,
},
}).then((result) => {
console.log(result.data);
this.name = result.data;
});
},
},
};
</script> <style>
label {
color: #303133;
}
.nav {
margin-top: 20px;
border-top: 3px solid #ff8500;
background-color: #fcfcfc;
border-bottom: 1px solid #edeeed;
line-height: 41px;
}
.nav a {
display: inline-block;
height: 41px;
padding: 0px 10px;
font-size: 15px;
color: #4c4c4c;
font-family: "微软雅黑";
text-decoration: none;
}
.nav a:hover {
background: #edeeed;
color: #ff8500;
}
</style>
 
增加: 
 
<template>
<div class="nav">
<label for="name">名称:</label
><input class="inps" v-model="name" type="text" />
<label for="location">部门:</label
><input class="inps" v-model="location" type="text" />
<br />
<input value="增加" @click="Insert()" type="button" />
<h4 v-if="font === 4">成功</h4>
</div>
</template> <script>
import axios from "axios";
export default {
name: "LoginView",
data() {
return {
name: "",
location: "",
font: "",
};
},
methods: {
Insert() {
axios({
// 请求方式/
method: "POST", // 请求地址
url: "http://localhost:8086/Insert", data: {
name: this.name,
location: this.location,
},
// URL中的查询参数
}).then((res) => {
console.log(res);
this.font = 4;
});
},
},
};
</script> <style>
label {
font-size: 20px;
font-weight: 700;
}
.inps {
margin-left: 20px;
margin-right: 20px;
}
.nav {
border-top: 3px solid #ff8500;
background-color: #fcfcfc;
border-bottom: 1px solid #edeeed;
line-height: 41px;
}
.nav a {
display: inline-block;
height: 41px;
padding: 0px 10px;
font-size: 15px;
color: #4c4c4c;
font-family: "微软雅黑";
text-decoration: none;
}
.nav a:hover {
background: #edeeed;
color: #ff8500;
}
</style>

根据部门进行删除:

<template>
<div class="nav">
<label for="#">部门名称:</label>
<input v-model="location" type="text" />
<el-button size="small" @click="Deletes()" type="primary">删除</el-button>
<!-- <input @click="Deletes()" value="删除" type="button" /> -->
<h4 v-if="font === 4">成功,但不晓得你数据库有没有这个数据;</h4>
</div>
</template> <script>
import axios from "axios";
export default {
name: "DeleteView",
data() {
return {
location: "",
font: [],
};
}, methods: {
Deletes() {
axios({
// 请求方式
method: "GET",
// 请求地址
url: `http://localhost:8086/Deletes`,
// URL中的查询参数
params: {
location: this.location,
},
}).then((sta) => {
console.log(sta);
this.font = 4;
});
},
},
};
</script> <style>
label {
font-size: 20px;
font-weight: 700;
} .navs {
margin-top: 10px;
}
.nav {
margin-top: 10px;
border-top: 3px solid #ff8500;
background-color: #fcfcfc;
border-bottom: 1px solid #edeeed;
line-height: 41px;
}
.nav a {
display: inline-block;
height: 41px;
padding: 0px 10px;
font-size: 15px;
color: #4c4c4c;
font-family: "微软雅黑";
text-decoration: none;
}
.nav a:hover {
background: #edeeed;
color: #ff8500;
}
</style>

修改部门名称:

<template>
<div class="nav">
<label for="">新部门</label><input v-model="location" type="text" />
<label for="">旧部门</label><input v-model="OldLocation" type="text" />
<input @click="Updata()" value="更改" type="button" />
<h4 v-if="font === 4">更改成功,但是不晓得你数据库有没有前置部门条件;</h4>
</div>
</template>
<script>
import axios from "axios";
export default {
name: "UpdateView",
data() {
return {
location: [],
OldLocation: [],
font: [],
};
}, methods: {
Updata() {
axios({
// 请求方式
method: "GET",
// 请求地址
url: `http://localhost:8086/Update`,
// URL中的查询参数
params: {
location: this.location,
OldLocation: this.OldLocation,
},
}).then((res) => {
console.log(res);
this.font = 4;
});
},
},
};
</script>
<style>
label {
font-size: 20px;
font-weight: 700;
margin-left: 10px;
margin-right: 10px;
} input {
margin-left: 10px;
margin-right: 10px;
} .navs {
margin-top: 10px;
}
.nav {
border-top: 3px solid #ff8500;
background-color: #fcfcfc;
border-bottom: 1px solid #edeeed;
line-height: 41px;
}
.nav a {
display: inline-block;
height: 41px;
padding: 0px 10px;
font-size: 15px;
color: #4c4c4c;
font-family: "微软雅黑";
text-decoration: none;
}
.nav a:hover {
background: #edeeed;
color: #ff8500;
}
</style>

vue-项目的整体增删改查的更多相关文章

  1. vue实战(一):利用vue与ajax实现增删改查

    vue实战(一):利用vue与ajax实现增删改查: <%@ page pageEncoding="UTF-8" language="java" %> ...

  2. django之创建第8-1个项目-数据库之增删改查/数据库数据显示在html页面

    1.为test.DB数据库预先创建下面数据 1    张三    16    2015-01-02    12    李四    17    2015-01-04    13    王五    14  ...

  3. vue+express+mongodb 实现 增删改查

    一.创建一个vue项目 用脚手架vue-cli搭建一个项目,数据请求用axios方式,写几个按钮用来调接口(vue这块不做多解释,不懂的可以先去官网学习vue-cli:https://cli.vuej ...

  4. Asp.net WebApi 项目示例(增删改查)

    1.WebApi是什么 ASP.NET Web API 是一种框架,用于轻松构建可以由多种客户端(包括浏览器和移动设备)访问的 HTTP 服务.ASP.NET Web API 是一种用于在 .NET ...

  5. vue实现数据的增删改查

    在管理员的一些后台页面里,个人中心里的数据列表里,都会有对这些数据进行增删改查的操作.比如在管理员后台的用户列表里,我们可以录入新用户的信息,也可以对既有的用户信息进行修改.在vue中,我们更应该专注 ...

  6. 利用idea创建一个基本的smm项目(带增删改查)

    环境  idea  jdk1.8  tomcat  mysql 打开idea选择创建一个maven项目 然后点击next,next,finsh 然后看项目的结构 如图所示 接着创建com包,再在com ...

  7. Django项目----快速实现增删改查组件(起步阶段!!!)

    一.相关知识点回顾 1.什么是反射?   可以用字符串的方式去访问对象的属性 2.反射有四种方法? hasattr(object,name):判断一个对象是不是有name属性或者方法 getattr: ...

  8. JPA-day02 项目结构 编写增删改查测试类

  9. 一个完整的mybatis项目,包含增删改查

    1.导入jar包,导入相关配置文件,均在自己博客园的文件中 编写mybatis.xml文件 <?xml version="1.0" encoding="UTF-8& ...

随机推荐

  1. 【Java】学习路径48-线程锁ReentrantLock

    与上一章学习的线程锁synchronized类似,都是为了解决线程安全的问题. 使用方法: 新建一个ReentrantLock对象.(如果使用Thread多线程,则需要声明static静态) 然后在需 ...

  2. kafka详解(一)--kafka是什么及怎么用

    kafka是什么 在回答这个问题之前,我们需要先了解另一个东西--event streaming. 什么是event streaming 我觉得,event streaming 是一个动态的概念,它描 ...

  3. .NET 7 SDK 对容器的内置支持

    大家好,我是等天黑. .NET 又双叒叕出新功能了, 就在前几天,.NET 团队发布博客,宣称在 .NET SDK 中内置了对 .NET 应用容器化的支持. 小试牛刀 在正式介绍它之前,先通过一个简单 ...

  4. 手写tomcat——概述

    1. 使用java 编写一个echo http服务器 使用java 编写一个echo http服务器 https://github.com/ZhongJinHacker/diy-tomcat/tree ...

  5. Elasticsearch7.6.2 RestHighLevelClient查询用法 must should(and or 关系)

    1. 引入jar <dependency> <groupId>org.elasticsearch.client</groupId> <artifactId&g ...

  6. 高阶 CSS 技巧在复杂动效中的应用

    最近我在 CodePen 上看到了这样一个有意思的动画: 整个动画效果是在一个标签内,借助了 SVG PATH 实现.其核心在于对渐变(Gradient)的究极利用. 完整的代码你可以看看这里 -- ...

  7. Go编译过程

    一. Go编译流程 二.过程说明 1. 词法解析 读取Go源文件,将字符序列转换为符号(token)序列,比如将":="转换为_Define 代码中的标识符.关键字.运算符和分隔符 ...

  8. selenium爬取图片

    一.https/http开头的图片 1.我们以百度为例,下载百度图片到本地. 2.定位到该元素的img标签 from selenium import webdriver from selenium.w ...

  9. c语言字符串比较与bool型

    c++字符串string,定义的变量,能够通过比较符号,直接进行比较. 而c语言则不能通过char数组定义的变量,来直接比较.应用下面的方法: #include <string.h> in ...

  10. 安装配置docker&maven环境

     原文视频:(https://blog.sechelper.com/20220919/code-review/docker-maven-install-guid/) Docker是什么 Docker ...