SSM整合-前后台协议联调(列表功能、添加功能、添加功能状态处理、修改功能、删除功能)

简介: SSM整合-前后台协议联调(列表功能、添加功能、添加功能状态处理、修改功能、删除功能)

一、列表功能

SpringMVC设定拦截了所有路径,它把页面的请求也拦截了,如果去访问页面,一定找不到,过不了SpringMVC,所以需要加一个新的配置类,进行资源的放行。


SpringMvcSupport配置类

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;
@Configuration
public class SpringMvcSupport extends WebMvcConfigurationSupport {
    @Override
    protected void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/pages/**").addResourceLocations("/pages/");
        registry.addResourceHandler("/css/**").addResourceLocations("/css/");
        registry.addResourceHandler("/js/**").addResourceLocations("/js/");
        registry.addResourceHandler("/plugins/**").addResourceLocations("/plugins/");
    }
}

写完配置之后,要让SpringMVC加载上,在@ComponentScan进行加载。

@Configuration
@ComponentScan({"com.itheima.controller","com.itheima.config"})
@EnableWebMvc
public class SpringMvcConfig {
}

发送ajax请求,得到返回值,让当前的数据模型加载从后台传进来的数据


books.html

          //列表
          getAll() {
               //发送ajax请求
               axios.get("/books").then((res)=>{
                   this.dataList = res.data.data;
               });
           },

页面列表展示效果

4cb502b5eb5c414c979e19520ff5f8e3.png

二、添加功能

弹出添加窗口功能

//弹出添加窗口
           handleCreate() {
               this.dialogFormVisible = true;
               this.resetForm();
           },

添加功能

//添加
           handleAdd () {
               //发送ajax请求
               axios.post("/books",this.formData).then((res)=>{
                   //如果操作成功,关闭弹层,显示数据
                       this.dialogFormVisible = false;
                       this.getAll();
               });
           },

添加功能效果

d4e44470f51c4d5486fa0d3dd8ac36e5.png

添加成功后效果

e1f6be5c358148648558936c11f437f9.png

三、添加功能状态处理

给添加功能状态处理,如有异常进行状态显示,无异常成功。

//添加
           handleAdd () {
               //发送ajax请求
               axios.post("/books",this.formData).then((res)=>{
                   console.log(res.data);
                   //如果操作成功,关闭弹层,显示数据
                   if(res.data.code == 20011){
                       this.dialogFormVisible = false;
                       this.$message.success("添加成功");
                   }else if(res.data.code == 20010){
                       this.$message.error("添加失败");
                   }else{
                       this.$message.error(res.data.msg);
                   }
               }).finally(()=>{
                   this.getAll();
               });
           },

添加成功效果

59ed764a6b5847cb8323aed4b910bd97.png

在BookServiceImpl中添加受影响行数大于0,受影响行数大于0为真,等于0为假

public boolean save(Book book) {
        return bookDao.save(book) > 0;
    }
    public boolean update(Book book) {
        return bookDao.update(book) > 0;
    }
    public boolean delete(Integer id) {
        return bookDao.delete(id) > 0;
    }

添加操作时输入大于数据表要求字段的最大长度20,既能得到失败效果

35152a341eb54743be3c11b7c3e53af4.png

414ccf8297c24884b0b468008ba97234.png

因为做了双向绑定,所以会进行回显,进行重置表单,在弹出添加功能进行调用。

//重置表单
           resetForm() {
               this.formData = {};
           },

四、修改功能

弹出编辑窗口,根据id查询,进行展示弹层,加载数据。

//弹出编辑窗口
           handleUpdate(row) {
               //查询数据,根据id查询
               axios.get("/books/"+row.id).then((res)=>{
                   if(res.data.code == 20041){
                       //展示弹层,加载数据
                       this.formData = res.data.data;
                       this.dialogFormVisible4Edit = true;
                   }else{
                       this.$message.error(res.data.msg);
                   }
               });
           },

编辑窗口效果

248a859a0bd34cc980df42cd1d233e40.png

编辑功能与添加功能差不多,修改put请求及修改相应的状态码和对应的提示信息即可。

//编辑
           handleEdit() {
               //发送ajax请求
               axios.put("/books",this.formData).then((res)=>{
                   //如果操作成功,关闭弹层,显示数据
                   if(res.data.code == 20031){
                       this.dialogFormVisible4Edit = false;
                       this.$message.success("修改成功");
                   }else if(res.data.code == 20030){
                       this.$message.error("修改失败");
                   }else{
                       this.$message.error(res.data.msg);
                   }
               }).finally(()=>{
                   this.getAll();
               });
           },

修改成功功能效果

f6f1bcb95d83484085987a8b96750f00.png

84a55cb2d1844c74ae9a5f21d4c05915.png

修改失败功能效果

dd29475e3ab34c388c02bed0339010d4.png

f469794dddc9411495df3e600c7ee5cf.png

五、删除功能

弹出提示框,提示操作,根据id进行删除,还进行取消删除操作提示。

// 删除
           handleDelete(row) {
               //1.弹出提示框
               this.$confirm("此操作永久删除当前数据,是否继续?","提示",{
                   type:'info'
               }).then(()=>{
                   //2.做删除业务
                   axios.delete("/books/"+row.id).then((res)=>{
                       if(res.data.code == 20021){
                           this.$message.success("删除成功");
                       }else{
                           this.$message.error("删除失败");
                       }
                   }).finally(()=>{
                       this.getAll();
                   });
               }).catch(()=>{
                   //3.取消删除
                   this.$message.info("取消删除操作");
               });
           }

删除提示框效果

f19fee6b697344e08827a7331c3771ab.png

删除成功效果

77c080b8f88941d2a1210ca9a3f96018.png

删除取消效果

12ce77fc020a4a02b23f7f1a13c99cce.png

目录
相关文章
|
3月前
|
Java 数据库 数据安全/隐私保护
基于SSM框架实现管科类考研自我管理系统(分前后台spring+springmvc+mybatis+maven+jsp+jquery)
基于SSM框架实现管科类考研自我管理系统(分前后台spring+springmvc+mybatis+maven+jsp+jquery)
|
3月前
|
Java BI 数据库
基于SSM框架实现面向小微企业的简历管理系统企业简历管理系统(分前后台spring+springmvc+mybatis+maven+jsp+css+echarts)
基于SSM框架实现面向小微企业的简历管理系统企业简历管理系统(分前后台spring+springmvc+mybatis+maven+jsp+css+echarts)
|
3月前
|
前端开发 Java 关系型数据库
基于ssm框架旅游网旅游社交平台前后台管理系统(spring+springmvc+mybatis+maven+tomcat+html)
基于ssm框架旅游网旅游社交平台前后台管理系统(spring+springmvc+mybatis+maven+tomcat+html)
|
3月前
|
Java 数据库 Android开发
基于ssm心理测评系统前后台管理系统(spring+springmvc+mybatis+jsp+jquery+css)
基于ssm心理测评系统前后台管理系统(spring+springmvc+mybatis+jsp+jquery+css)
|
3月前
|
前端开发 Java 数据库
基于SSM框架实现的甜品饮品店前后台管理系统甜品商城蛋糕店【源码+数据库】
基于SSM框架实现的甜品饮品店前后台管理系统甜品商城蛋糕店【源码+数据库】
|
3月前
|
应用服务中间件 测试技术 数据安全/隐私保护
实战SSM_O2O商铺_16【商铺注册】前后端联调验证整体模块功能
实战SSM_O2O商铺_16【商铺注册】前后端联调验证整体模块功能
15 1
|
8月前
|
存储 Java 关系型数据库
SSM框架实现新闻网站信息管理系统前台后台综合开发项目实战
新闻网站的实现分为前台及后台,采用SSM、maven进行开发,数据库采用mysql数据库。
83 0
|
8月前
|
前端开发 API
SSM(Vue3+ElementPlus+Axios+SSM前后端分离)--功能实现[五](上)
SSM(Vue3+ElementPlus+Axios+SSM前后端分离)--功能实现[五](上)
123 0
|
10月前
|
前端开发
SSM项目-商城后台管理系统 2
SSM项目-商城后台管理系统
|
10月前
|
前端开发 JavaScript 数据可视化
SSM项目-商城后台管理系统 1
SSM项目-商城后台管理系统