反垃圾邮件系统|基于Springboot+vue 实现反垃圾邮件系统(二)

简介: 反垃圾邮件系统|基于Springboot+vue 实现反垃圾邮件系统

反垃圾邮件系统|基于Springboot+vue 实现反垃圾邮件系统(一)https://developer.aliyun.com/article/1423308


四,核心代码展示

package com.javaclimb.music.controller;/**
 * @Project_name: Mucic
 * @PACKAGE_NAME: com.javaclimb.mucic.controller
 * @description: tmx
 **/
import com.alibaba.fastjson.JSONObject;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import com.javaclimb.music.bean.Friends;
import com.javaclimb.music.bean.Mails;
import com.javaclimb.music.service.FriendsService;
import com.javaclimb.music.service.MailsService;
import com.javaclimb.music.utils.Consts;
import org.apache.ibatis.annotations.Param;
import org.springframework.dao.DuplicateKeyException;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
 * @Project_name: Mucic
 * @PACKAGE_NAME: com.javaclimb.mucic.controller
 * @author: 詹姆斯
 * @create: 2021-10-10 01:48
 * @description: tmx
 *
 **/
@RestController
@RequestMapping("/friends")
public class FriendsController {
   @Resource
   private FriendsService friendsService;
    @Resource
    private MailsService mailsService;
    /**
     * 新增
     * @param
     * @return
     */
    @RequestMapping(value = "/insert",method = RequestMethod.POST)
    public Object insert(@Param("id") Integer id ,@Param("em") String em) {
        JSONObject jsonObject = new JSONObject();
       int i=0;
        int selecta1 = mailsService.selecta(em);
        if(selecta1==0){
            jsonObject.put(Consts.CODE, 500);
            jsonObject.put(Consts.MSG, "没有此用户");
            return jsonObject;
        }
        Integer friendId = mailsService.select(em);
        int i1 = friendsService.selectTmx(id, friendId);
        if(i1>0){
            jsonObject.put(Consts.CODE, 500);
            jsonObject.put(Consts.MSG, "和该好友已经申请过了");
            return jsonObject;
        }
        Friends friends =new Friends();
        friends.setUserId(id);
        friends.setFriendId(friendId);
        i = friendsService.insert(friends);
        if(i!=0) {
            jsonObject.put(Consts.CODE, 1);
            jsonObject.put(Consts.MSG, "发送申请成功");
            return jsonObject;
        }
        jsonObject.put(Consts.CODE, 0);
        jsonObject.put(Consts.MSG, "发送申请失败");
        return jsonObject;
        }
    /**
     * 修改
     */
    @RequestMapping(value = "/update",method = RequestMethod.PUT)
    public Object updateFriends(@RequestBody Friends friends){
        JSONObject jsonObject =new JSONObject();
        if (friends.getIsBlack()!=null){
            if (friends.getIsBlack() == true) {
                friends.setIsWhite(false);
            }
        }
        int flag= friendsService.updateByPrimaryKeySelective(friends);
        if(flag!=0){
            jsonObject.put(Consts.CODE, 1);
            jsonObject.put(Consts.MSG, "修改成功");
            return jsonObject;
        }
        else {
            jsonObject.put(Consts.CODE, 0);
            jsonObject.put(Consts.MSG, "修改失败");
            return jsonObject;
        }
    }
    /**
     * 修改
     */
    @RequestMapping(value = "/upFriend",method = RequestMethod.PUT)
    public Object upFriend(@RequestParam int id){
        System.out.println(id);
        JSONObject jsonObject =new JSONObject();
        int flag= friendsService.upFriend(id);
        Friends friends = friendsService.sId(id);
        Integer userId = friends.getUser().getId();
        System.out.println("userId是"+userId);
        Integer friendId = friends.getFriend().getId();
        Friends friends1 = new Friends();
        friends1.setUserId(friendId);
        friends1.setFriendId(userId);
        friends1.setIsFriend(true);
        friendsService.insert(friends1);
        if(flag!=0){
            jsonObject.put(Consts.CODE, 1);
            jsonObject.put(Consts.MSG, "通过好友申请");
            return jsonObject;
        }
        else {
            jsonObject.put(Consts.CODE, 0);
            jsonObject.put(Consts.MSG, "失败");
            return jsonObject;
        }
    }
    /**
     * 删除
     */
    @RequestMapping(value = "/delete",method = RequestMethod.DELETE)
    public Object deleteFriends(@RequestParam Integer id){
        int flag= friendsService.deleteByPrimaryKey(id);
        JSONObject jsonObject = new JSONObject();
        if (flag==1) {
            jsonObject.put(Consts.CODE, 1);
            jsonObject.put(Consts.MSG, "删除成功");
            return jsonObject;
        } else {
            jsonObject.put(Consts.CODE, 0);
            jsonObject.put(Consts.MSG, "删除失败");
            return jsonObject;
        }
    }
    /**
     * 根据主键取对象
     */
    @RequestMapping(value = "/selectByPrimarykey",method = RequestMethod.GET)
    public Object selectByPrimarykey(@RequestParam int id){
        JSONObject jsonObject = new JSONObject();
        Friends friends = friendsService.selectByPrimaryKey(id);
        if(friends.getRemarks()==null){
            friends.setRemarks("");
        }
        if (friends !=null) {
            jsonObject.put(Consts.CODE, 1);
            jsonObject.put(Consts.MSG, "成功");
            jsonObject.put(Consts.DATA, friends);
            return jsonObject;
        }
            jsonObject.put(Consts.CODE, 0);
            jsonObject.put(Consts.MSG, "获取失败");
            return jsonObject;
    }
    /**
     * 根据主键取申请记录
     */
    @RequestMapping(value = "/selectByAllId",method = RequestMethod.GET)
    public Object selectByAllId(@RequestParam int id){
        JSONObject jsonObject = new JSONObject();
        Friends friends = friendsService.selectByAllId(id);
        if(friends.getRemarks()==null){
            friends.setRemarks("");
        }
        if (friends !=null) {
            jsonObject.put(Consts.CODE, 1);
            jsonObject.put(Consts.MSG, "成功");
            jsonObject.put(Consts.DATA, friends);
            return jsonObject;
        }
        jsonObject.put(Consts.CODE, 0);
        jsonObject.put(Consts.MSG, "获取失败");
        return jsonObject;
    }
    /**.
     * 获取全部数据
     * @param Pages
     * @param pageSize
     * @return
     */
    @RequestMapping(value = "/selectAll",method = RequestMethod.GET)
    public Map<String, Object> selectAll(@RequestParam int Pages,int pageSize) {
        JSONObject jsonObject = new JSONObject();
        Map<String, Object> result = new HashMap<>();
        // 设置分页,1代表第一页,5代表这一页有五条数据
        Page<Friends> page = PageHelper.startPage(Pages, pageSize);
        List<Friends> friends = friendsService.selectAll();
        result.put("total", page.getTotal());
        result.put("pageNo", page.getPageNum());
        result.put("pages", page.getPages());
        result.put("pageSize", page.getPageSize());
        result.put("rows", page.getResult());
        if (friends !=null) {
            jsonObject.put(Consts.CODE, 1);
            jsonObject.put(Consts.MSG, "成功");
            jsonObject.put(Consts.DATA,result);
            return jsonObject;
        }
            jsonObject.put(Consts.CODE, 0);
            jsonObject.put(Consts.MSG, "获取失败");
            return jsonObject;
    }
    /**
     * 根据用户id获取所有好友
     */
    @RequestMapping(value = "/selectAllUserId",method = RequestMethod.GET)
    public Object selectAllUserId(@RequestParam int Pages,int pageSize,Integer id) {
        JSONObject jsonObject = new JSONObject();
        Map<String, Object> result = new HashMap<>();
        // 设置分页,1代表第一页,5代表这一页有五条数据
        Page<Friends> page = PageHelper.startPage(Pages, pageSize);
        List<Friends> mails = friendsService.selectAllUserId(id);
        for(Friends friends:mails){
            if(friends.getRemarks()==null){
                friends.setRemarks("");
            }
        }
        result.put("total", page.getTotal());
        result.put("pageNo", page.getPageNum());
        result.put("pages", page.getPages());
        result.put("pageSize", page.getPageSize());
        result.put("rows", page.getResult());
        if (page.getResult()!=null) {
            jsonObject.put(Consts.CODE, 1);
            jsonObject.put(Consts.MSG, "成功");
            jsonObject.put(Consts.DATA,result);
            return jsonObject;
        }
        else if(page.getResult()==null){
            jsonObject.put(Consts.CODE, 0);
            jsonObject.put(Consts.MSG, "没值");
            return jsonObject;
        }
        jsonObject.put(Consts.CODE, 0);
        jsonObject.put(Consts.MSG, "获取失败");
        return jsonObject;
    }
    /**
     * 根据用户id获取所有好友模糊
     */
    @RequestMapping(value = "/selectAllUserIdLike",method = RequestMethod.GET)
    public Object selectAllUserIdLike(@RequestParam int Pages,int pageSize,Integer id,String friendEmail) {
        JSONObject jsonObject = new JSONObject();
        Map<String, Object> result = new HashMap<>();
        // 设置分页,1代表第一页,5代表这一页有五条数据
        Page<Friends> page = PageHelper.startPage(Pages, pageSize);
        List<Friends> mails = friendsService.selectAllUserIdLike(id,friendEmail);
        for(Friends friends:mails){
            if(friends.getRemarks()==null){
                friends.setRemarks("");
            }
        }
        result.put("total", page.getTotal());
        result.put("pageNo", page.getPageNum());
        result.put("pages", page.getPages());
        result.put("pageSize", page.getPageSize());
        result.put("rows", page.getResult());
        if (page.getResult()!=null) {
            jsonObject.put(Consts.CODE, 1);
            jsonObject.put(Consts.MSG, "成功");
            jsonObject.put(Consts.DATA,result);
            return jsonObject;
        }
        else if(page.getResult()==null){
            jsonObject.put(Consts.CODE, 0);
            jsonObject.put(Consts.MSG, "没值");
            return jsonObject;
        }
        jsonObject.put(Consts.CODE, 0);
        jsonObject.put(Consts.MSG, "获取失败");
        return jsonObject;
    }
    /**
     * 根据用户id获取所有黑名单模糊
     */
    @RequestMapping(value = "/selectAllBlackLike",method = RequestMethod.GET)
    public Object selectAllBlackLike(@RequestParam int Pages,int pageSize,Integer id,String friendEmail) {
        JSONObject jsonObject = new JSONObject();
        Map<String, Object> result = new HashMap<>();
        // 设置分页,1代表第一页,5代表这一页有五条数据
        Page<Friends> page = PageHelper.startPage(Pages, pageSize);
        List<Friends> mails = friendsService.selectAllBlackLike(id,friendEmail);
        for(Friends friends:mails){
            if(friends.getRemarks()==null){
                friends.setRemarks("");
            }
        }
        result.put("total", page.getTotal());
        result.put("pageNo", page.getPageNum());
        result.put("pages", page.getPages());
        result.put("pageSize", page.getPageSize());
        result.put("rows", page.getResult());
        if (page.getResult()!=null) {
            jsonObject.put(Consts.CODE, 1);
            jsonObject.put(Consts.MSG, "成功");
            jsonObject.put(Consts.DATA,result);
            return jsonObject;
        }
        else if(page.getResult()==null){
            jsonObject.put(Consts.CODE, 0);
            jsonObject.put(Consts.MSG, "没值");
            return jsonObject;
        }
        jsonObject.put(Consts.CODE, 0);
        jsonObject.put(Consts.MSG, "获取失败");
        return jsonObject;
    }
    /**
     * 根据用户id获取所有白名单模糊
     */
    @RequestMapping(value = "/selectAllWhiteLike",method = RequestMethod.GET)
    public Object selectAllWhiteLike(@RequestParam int Pages,int pageSize,Integer id,String friendEmail) {
        JSONObject jsonObject = new JSONObject();
        Map<String, Object> result = new HashMap<>();
        // 设置分页,1代表第一页,5代表这一页有五条数据
        Page<Friends> page = PageHelper.startPage(Pages, pageSize);
        List<Friends> mails = friendsService.selectAllWhiteLike(id,friendEmail);
        for(Friends friends:mails){
            if(friends.getRemarks()==null){
                friends.setRemarks("");
            }
        }
        result.put("total", page.getTotal());
        result.put("pageNo", page.getPageNum());
        result.put("pages", page.getPages());
        result.put("pageSize", page.getPageSize());
        result.put("rows", page.getResult());
        if (page.getResult()!=null) {
            jsonObject.put(Consts.CODE, 1);
            jsonObject.put(Consts.MSG, "成功");
            jsonObject.put(Consts.DATA,result);
            return jsonObject;
        }
        else if(page.getResult()==null){
            jsonObject.put(Consts.CODE, 0);
            jsonObject.put(Consts.MSG, "没值");
            return jsonObject;
        }
        jsonObject.put(Consts.CODE, 0);
        jsonObject.put(Consts.MSG, "获取失败");
        return jsonObject;
    }
    /**
     * 根据用户id获取所有黑名单
     */
    @RequestMapping(value = "/selectAllBlack",method = RequestMethod.GET)
    public Object selectAllBlack(@RequestParam int Pages,int pageSize,Integer id) {
        JSONObject jsonObject = new JSONObject();
        Map<String, Object> result = new HashMap<>();
        // 设置分页,1代表第一页,5代表这一页有五条数据
        Page<Friends> page = PageHelper.startPage(Pages, pageSize);
        List<Friends> mails = friendsService.selectAllBlack(id);
        for(Friends friends:mails){
            if(friends.getRemarks()==null){
                friends.setRemarks("");
            }
        }
        result.put("total", page.getTotal());
        result.put("pageNo", page.getPageNum());
        result.put("pages", page.getPages());
        result.put("pageSize", page.getPageSize());
        result.put("rows", page.getResult());
        if (page.getResult()!=null) {
            jsonObject.put(Consts.CODE, 1);
            jsonObject.put(Consts.MSG, "成功");
            jsonObject.put(Consts.DATA,result);
            return jsonObject;
        }
        else if(page.getResult()==null){
            jsonObject.put(Consts.CODE, 0);
            jsonObject.put(Consts.MSG, "没值");
            return jsonObject;
        }
        jsonObject.put(Consts.CODE, 0);
        jsonObject.put(Consts.MSG, "获取失败");
        return jsonObject;
    }
    /**
     * 根据用户id获取所有白名单
     */
    @RequestMapping(value = "/selectAllWhite",method = RequestMethod.GET)
    public Object selectAllWhite(@RequestParam int Pages,int pageSize,Integer id) {
        JSONObject jsonObject = new JSONObject();
        Map<String, Object> result = new HashMap<>();
        // 设置分页,1代表第一页,5代表这一页有五条数据
        Page<Friends> page = PageHelper.startPage(Pages, pageSize);
        List<Friends> mails = friendsService.selectAllWhite(id);
        for(Friends friends:mails){
            if(friends.getRemarks()==null){
                friends.setRemarks("");
            }
        }
        result.put("total", page.getTotal());
        result.put("pageNo", page.getPageNum());
        result.put("pages", page.getPages());
        result.put("pageSize", page.getPageSize());
        result.put("rows", page.getResult());
        if (page.getResult()!=null) {
            jsonObject.put(Consts.CODE, 1);
            jsonObject.put(Consts.MSG, "成功");
            jsonObject.put(Consts.DATA,result);
            return jsonObject;
        }
        else if(page.getResult()==null){
            jsonObject.put(Consts.CODE, 0);
            jsonObject.put(Consts.MSG, "没值");
            return jsonObject;
        }
        jsonObject.put(Consts.CODE, 0);
        jsonObject.put(Consts.MSG, "获取失败");
        return jsonObject;
    }
    /**
     * 根据用户id获取所有白名单
     */
    @RequestMapping(value = "/selectByAll",method = RequestMethod.GET)
    public Object selectByAll(@RequestParam int Pages,int pageSize,Integer id) {
        JSONObject jsonObject = new JSONObject();
        Map<String, Object> result = new HashMap<>();
        // 设置分页,1代表第一页,5代表这一页有五条数据
        Page<Friends> page = PageHelper.startPage(Pages, pageSize);
        List<Friends> mails = friendsService.selectByAll(id);
        result.put("total", page.getTotal());
        result.put("pageNo", page.getPageNum());
        result.put("pages", page.getPages());
        result.put("pageSize", page.getPageSize());
        result.put("rows", page.getResult());
        if (page.getResult()!=null) {
            jsonObject.put(Consts.CODE, 1);
            jsonObject.put(Consts.MSG, "成功");
            jsonObject.put(Consts.DATA,result);
            return jsonObject;
        }
        else if(page.getResult()==null){
            jsonObject.put(Consts.CODE, 0);
            jsonObject.put(Consts.MSG, "没值");
            return jsonObject;
        }
        jsonObject.put(Consts.CODE, 0);
        jsonObject.put(Consts.MSG, "获取失败");
        return jsonObject;
    }
}
package com.javaclimb.music.controller;/**
 * @Project_name: Mucic
 * @PACKAGE_NAME: com.javaclimb.mucic.controller
 * @description: tmx
 **/
import com.alibaba.fastjson.JSONObject;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import com.javaclimb.music.bean.KeyWord;
import com.javaclimb.music.service.KeyWordService;
import com.javaclimb.music.utils.Consts;
import com.javaclimb.music.utils.JsonUtil;
import com.javaclimb.music.utils.ReadPropertiesUtil;
import org.apache.ibatis.annotations.Param;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import java.io.File;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
 * @Project_name: Mucic
 * @PACKAGE_NAME: com.javaclimb.mucic.controller
 * @author: 詹姆斯
 * @create: 2021-10-10 01:48
 * @description: tmx
 **/
@RestController
@RequestMapping("/keyWord")
public class KeyWordController {
    @Resource
    private KeyWordService keyWordService;
    @RequestMapping(value = "/registerKeyWord", method = RequestMethod.POST)
    public Object registerKeyWord(@Param("key") String key) {
        JSONObject jsonObject = new JSONObject();
        int i = keyWordService.insert(key);
        if (i != 0) {
            jsonObject.put(Consts.CODE, 1);
            jsonObject.put(Consts.MSG, "添加成功");
            return jsonObject;
        } else {
            jsonObject.put(Consts.CODE, 0);
            jsonObject.put(Consts.MSG, "添加失败");
            return jsonObject;
        }
    }
    /**
     * 修改
     */
    @RequestMapping(value = "/update", method = RequestMethod.PUT)
    public Object updateKeyWord(@Param("key") String key,@Param("id") Integer id ) {
        JSONObject jsonObject = new JSONObject();
        int flag = keyWordService.updateByPrimaryKeySelective(key,id);
        if (flag != 0) {
            jsonObject.put(Consts.CODE, 1);
            jsonObject.put(Consts.MSG, "修改成功");
            return jsonObject;
        } else {
            jsonObject.put(Consts.CODE, 0);
            jsonObject.put(Consts.MSG, "修改失败");
            return jsonObject;
        }
    }
    /**
     * 删除
     */
    @RequestMapping(value = "/delete", method = RequestMethod.DELETE)
    public Object deleteKeyWord(@RequestParam Integer id) {
        int flag = keyWordService.deleteByPrimaryKey(id);
        JSONObject jsonObject = new JSONObject();
        if (flag == 1) {
            jsonObject.put(Consts.CODE, 1);
            jsonObject.put(Consts.MSG, "删除成功");
            return jsonObject;
        } else {
            jsonObject.put(Consts.CODE, 0);
            jsonObject.put(Consts.MSG, "删除失败");
            return jsonObject;
        }
    }
    /**
     * 根据主键取对象
     */
    @RequestMapping(value = "/selectByPrimarykey", method = RequestMethod.GET)
    public Object selectByPrimarykey(@RequestParam int id) {
        JSONObject jsonObject = new JSONObject();
        KeyWord keyWord = keyWordService.selectByPrimaryKey(id);
        if (keyWord != null) {
            jsonObject.put(Consts.CODE, 1);
            jsonObject.put(Consts.MSG, "成功");
            jsonObject.put(Consts.DATA, keyWord);
            return jsonObject;
        }
        jsonObject.put(Consts.CODE, 0);
        jsonObject.put(Consts.MSG, "获取失败");
        return jsonObject;
    }
    // 分页,利用page获取分页信息,然后封装map
    @RequestMapping(value = "/selectAll", method = RequestMethod.GET)
    public Map<String, Object> selectAll(@RequestParam int Pages, int pageSize) {
        JSONObject jsonObject = new JSONObject();
        Map<String, Object> result = new HashMap<>();
        // 设置分页,1代表第一页,5代表这一页有五条数据
        Page<KeyWord> page = PageHelper.startPage(Pages, pageSize);
        List<KeyWord> keyWord = keyWordService.selectAll();
        result.put("total", page.getTotal());
        result.put("pageNo", page.getPageNum());
        result.put("pages", page.getPages());
        result.put("pageSize", page.getPageSize());
        result.put("rows", page.getResult());
        if (keyWord != null) {
            jsonObject.put(Consts.CODE, 1);
            jsonObject.put(Consts.MSG, "成功");
            jsonObject.put(Consts.DATA, result);
            return jsonObject;
        }
        jsonObject.put(Consts.CODE, 0);
        jsonObject.put(Consts.MSG, "获取失败");
        return jsonObject;
    }
    // 分页,利用page获取分页信息,然后封装map
    @RequestMapping(value = "/selectAlll", method = RequestMethod.GET)
    public Map<String, Object> selectAlll(@RequestParam int Pages, int pageSize,String key) {
        JSONObject jsonObject = new JSONObject();
        Map<String, Object> result = new HashMap<>();
        // 设置分页,1代表第一页,5代表这一页有五条数据
        Page<KeyWord> page = PageHelper.startPage(Pages, pageSize);
        List<KeyWord> keyWord = keyWordService.selectAlll(key);
        result.put("total", page.getTotal());
        result.put("pageNo", page.getPageNum());
        result.put("pages", page.getPages());
        result.put("pageSize", page.getPageSize());
        result.put("rows", page.getResult());
        if (keyWord != null) {
            jsonObject.put(Consts.CODE, 1);
            jsonObject.put(Consts.MSG, "成功");
            jsonObject.put(Consts.DATA, result);
            return jsonObject;
        }
        jsonObject.put(Consts.CODE, 0);
        jsonObject.put(Consts.MSG, "获取失败");
        return jsonObject;
    }
}

五,项目总结

在上个月刚刚结束的互联网会议上,信息产业部电信管理局副局长陈家春表示,一些国际机构将中国评为2021全球垃圾邮件控制成效最显著的国家。目前,我们面临的挑战是,垃圾邮件信息不再满足于仅通过电子邮件传播。手机短信、电话传真和即时消息正在成为垃圾信息的传播载体。在更加动荡的形势下,垃圾邮件信息干扰了人们的正常生活和网络秩序。因此,有关部门应进一步加强对网络垃圾信息的综合治理。调查显示,中国用户收到垃圾邮件的比例仍然最高,达到50%以上,其次是英语30.9%,繁体中文第三,占9.5%。从这些统计数据可以看出,垃圾邮件的主要来源仍然来自中国,这是我们在反垃圾邮件中应该注意的主要领域。同时,该系统计划开发后投入运行,为反垃圾邮件工作提供了基本的技术保障。该平台可以实时更新垃圾邮件IP地址的“黑名单”,分析当前国内垃圾邮件传播情况,为反垃圾邮件工作提供基础数据。实时黑名单服务提高了黑名单数据的及时性。它可以在垃圾邮件源爆发的第一时间为用户提供查询服务,从而更及时地防止垃圾邮件入侵。据统计,实时黑名单每日查询次数已达20万次,查询速度约为4次/秒,“命中率”为65.97%。

相关文章
|
2月前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 实现动态路由和菜单功能,快速搭建前后端分离的应用框架
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 实现动态路由和菜单功能,快速搭建前后端分离的应用框架。首先,确保开发环境已安装必要的工具,然后创建并配置 Spring Boot 项目,包括添加依赖和配置 Spring Security。接着,创建后端 API 和前端项目,配置动态路由和菜单。最后,运行项目并分享实践心得,包括版本兼容性、安全性、性能调优等方面。
173 1
|
1月前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个具有动态路由和菜单功能的前后端分离应用。
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个具有动态路由和菜单功能的前后端分离应用。首先,创建并配置 Spring Boot 项目,实现后端 API;然后,使用 Ant Design Pro Vue 创建前端项目,配置动态路由和菜单。通过具体案例,展示了如何快速搭建高效、易维护的项目框架。
111 62
|
4天前
|
存储 JavaScript 前端开发
基于 SpringBoot 和 Vue 开发校园点餐订餐外卖跑腿Java源码
一个非常实用的校园外卖系统,基于 SpringBoot 和 Vue 的开发。这一系统源于黑马的外卖案例项目 经过站长的进一步改进和优化,提供了更丰富的功能和更高的可用性。 这个项目的架构设计非常有趣。虽然它采用了SpringBoot和Vue的组合,但并不是一个完全分离的项目。 前端视图通过JS的方式引入了Vue和Element UI,既能利用Vue的快速开发优势,
40 13
|
12天前
|
JavaScript 安全 Java
java版药品不良反应智能监测系统源码,采用SpringBoot、Vue、MySQL技术开发
基于B/S架构,采用Java、SpringBoot、Vue、MySQL等技术自主研发的ADR智能监测系统,适用于三甲医院,支持二次开发。该系统能自动监测全院患者药物不良反应,通过移动端和PC端实时反馈,提升用药安全。系统涵盖规则管理、监测报告、系统管理三大模块,确保精准、高效地处理ADR事件。
|
1月前
|
XML Java 数据库连接
SpringBoot集成Flowable:打造强大的工作流管理系统
在企业级应用开发中,工作流管理是一个核心组件,它能够帮助我们定义、执行和管理业务流程。Flowable是一个开源的工作流和业务流程管理(BPM)平台,它提供了强大的工作流引擎和建模工具。结合SpringBoot,我们可以快速构建一个高效、灵活的工作流管理系统。本文将探讨如何将Flowable集成到SpringBoot应用中,并展示其强大的功能。
159 1
|
1月前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个前后端分离的应用框架,实现动态路由和菜单功能
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个前后端分离的应用框架,实现动态路由和菜单功能。首先,确保开发环境已安装必要的工具,然后创建并配置 Spring Boot 项目,包括添加依赖和配置 Spring Security。接着,创建后端 API 和前端项目,配置动态路由和菜单。最后,运行项目并分享实践心得,帮助开发者提高开发效率和应用的可维护性。
77 2
|
1月前
|
JavaScript Java 项目管理
Java毕设学习 基于SpringBoot + Vue 的医院管理系统 持续给大家寻找Java毕设学习项目(附源码)
基于SpringBoot + Vue的医院管理系统,涵盖医院、患者、挂号、药物、检查、病床、排班管理和数据分析等功能。开发工具为IDEA和HBuilder X,环境需配置jdk8、Node.js14、MySQL8。文末提供源码下载链接。
|
2月前
|
存储 安全 Java
打造智能合同管理系统:SpringBoot与电子签章的完美融合
【10月更文挑战第7天】 在数字化转型的浪潮中,电子合同管理系统因其高效、环保和安全的特点,正逐渐成为企业合同管理的新宠。本文将分享如何利用SpringBoot框架实现一个集电子文件签字与合同管理于一体的智能系统,探索技术如何助力合同管理的现代化。
105 4
|
2月前
|
前端开发 Java Apache
SpringBoot实现电子文件签字+合同系统!
【10月更文挑战第15天】 在现代企业运营中,合同管理和电子文件签字成为了日常活动中不可或缺的一部分。随着技术的发展,电子合同系统因其高效性、安全性和环保性,逐渐取代了传统的纸质合同。本文将详细介绍如何使用SpringBoot框架实现一个电子文件签字和合同管理系统。
96 1
|
2月前
|
文字识别 安全 Java
SpringBoot3.x和OCR构建车牌识别系统
本文介绍了一个基于Java SpringBoot3.x框架的车牌识别系统,详细阐述了系统的设计目标、需求分析及其实现过程。利用Tesseract OCR库和OpenCV库,实现了车牌图片的识别与处理,确保系统的高准确性和稳定性。文中还提供了具体的代码示例,展示了如何构建和优化车牌识别服务,以及如何处理特殊和异常车牌。通过实际应用案例,帮助读者理解和应用这一解决方案。