计算机毕业设计选题推荐-短文写作竞赛微信小程序/安卓APP-项目实战

作者主页:IT毕设梦工厂✨
个人简介:曾从事计算机专业培训教学,擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。
☑文末获取源码☑
精彩专栏推荐⬇⬇⬇
Java项目
Python项目
安卓项目
微信小程序项目

文章目录

  • 一、前言
  • 二、开发环境
  • 三、系统界面展示
  • 四、部分代码设计
  • 五、论文参考
  • 六、系统视频
  • 结语

一、前言

在当今信息化社会,科技和教育的发展日新月异,对人才的培养提出了更高的要求。短文写作能力作为学生的基本素养之一,越来越受到重视。为了提高学生的短文写作水平,各类短文写作竞赛应运而生。然而,如何进行竞赛管理,公平公正地评选作品,成为了一个亟待解决的问题。这正是本课题研究的背景。

当前,短文写作竞赛的管理和评选大多依赖于线下模式,如纸质提交、人工评审等。这种方式存在一些难以避免的问题:一是效率低下,线下操作流程繁琐,费时费力;二是难以保证公平公正,人为因素容易影响评选结果。因此,开发一款基于微信小程序/安卓APP的短文写作竞赛管理系统,具有十分重要的现实意义和必要性。

本课题旨在开发一款基于微信小程序/安卓APP的短文写作竞赛管理系统,主要有以下功能:
竞赛报名:学生可以通过微信小程序/安卓APP在线报名参加竞赛;
提交竞赛成果:学生在规定时间内在线提交自己的短文作品,作品将自动保存并提交至服务器;
评分:评委可以通过微信小程序/安卓APP在线对提交的作品进行评分。

通过本课题的研究,将实现短文写作竞赛的管理和评选过程的公平公正,提高竞赛效果和参与度,同时为其他类似竞赛活动的管理和评选提供参考和借鉴。

二、开发环境

  • 开发语言:Java
  • 数据库:MySQL
  • 后端:SpringBoot
  • 前端:微信小程序/android+uniapp+Vue

三、系统界面展示

  • 短文写作竞赛微信小程序/安卓APP界面展示:
    短文写作竞赛微信小程序/安卓APP-竞赛信息
    短文写作竞赛微信小程序/安卓APP-禁赛详情
    短文写作竞赛微信小程序/安卓APP-竞赛成果信息
    短文写作竞赛微信小程序/安卓APP-竞赛成果提交
    短文写作竞赛微信小程序/安卓APP-竞赛报名管理
    短文写作竞赛微信小程序/安卓APP-竞赛成果管理
    短文写作竞赛微信小程序/安卓APP-专业管理

四、部分代码设计

  • 短文写作竞赛微信小程序/安卓APP项目实战-代码参考:
@RestController
@RequestMapping("/admin")
public class AdminController {
    @Autowired
    private AdminService adminService;

    @Autowired
    private College_CompService college_compService;

    @Autowired
    private CompService compService;

    @Autowired
    private ProjectService projectService;

    @GetMapping("/getUserAdminById")
    public Admin getUserAdminById(@RequestParam int id){
        Admin admin = adminService.getAdminById(id);
        return admin;
    }

    /**
     * 保存或者更新管理员账户
     * @param admin
     * @return
     */
    @PostMapping("/updateAdmin")
    public UserInfo updateAdmin(Admin admin){
        System.out.println(admin.getId());
        return adminService.updateAdmin(admin);
    }

    /**
     * 创建学院账号
     * @param college
     * @return
     */
    @PostMapping("/createCollege")
    public UserInfo createCollege(College college){
        return adminService.createCollege(college);
    }

    /**
     * 得到未处理的比赛申请集合
     * @return
     */
    @PostMapping("/getUndoApplyCompList")
    public List<College_Comp> getUndoApplyCompList(){
        return college_compService.getUndoApplyComp();
    }

    /**
     * 得到已处理的比赛申请集合
     * @return
     */
    @PostMapping("/getDoneApplyCompList")
    public List<College_Comp> getDoneApplyCompList(){
        return college_compService.getDoneApplyComp();
    }

    /**
     * 同意比赛申请
     * @param collegeCompId
     * @return
     */
    @GetMapping("applyComp/{collegeCompId}")
    public CompResult applyComp(@PathVariable Integer collegeCompId){
        return compService.applyComp(collegeCompId);
    }

    /**
     * 拒绝比赛申请
     * @param collegeCompId
     * @return
     */
    @GetMapping("refuseComp/{collegeCompId}")
    public CompResult refuseComp(@PathVariable Integer collegeCompId){
        return compService.refuseComp(collegeCompId);
    }

    /**
     * 得到所有的竞赛项目
     * @return
     */
    @GetMapping("/getAllProjects")
    public List<Project> getAllProjects(){
        List<Project> result=new ArrayList<>();
        List<Project> allProjects = projectService.getAllProjects();
        for (Project allProject : allProjects) {
            if (allProject.getApplyState()==1){
                result.add(allProject);
            }
        }
        return result;
    }

    /**
     * 得到未处理的添加竞赛的申请列表
     * @return
     */
    @GetMapping("/getUndoAddCompList")
    public List<College_Comp> getUndoAddCompList(){
        return college_compService.getUndoAddCompList();
    }

    @GetMapping("/getDoneAddCompList")
    public List<College_Comp> getDoneAddCompList(){
        return college_compService.getDoneAddCompList();
    }

    @GetMapping("/checkComp/{compId}")
    public List<Comp> checkComp(@PathVariable Integer compId){
        List<Comp> compList=new ArrayList<>();
        compList.add(compService.findCompById(compId));
        return compList;
    }

    @GetMapping("/applyAddCommp/{comp_collegeId}")
    public CompResult applyAddCommp(@PathVariable Integer comp_collegeId){
        CompResult compResult=new CompResult();
        College_Comp collegeComp = college_compService.getCollegeComp(comp_collegeId);
        Comp comp = compService.findCompById(collegeComp.getComp().getId());
        comp.setVisiable(true);
        comp.setPublishTime(new Date());
        compService.save(comp);
        collegeComp.setUpdateApplyDate(new Date());
        collegeComp.setApplyOrJoin(5);
        College_Comp save = college_compService.save(collegeComp);
        if(save!=null){
            compResult.setCode(200);
            compResult.setMessage("操作成功!");
        }else {
            compResult.setCode(400);
            compResult.setMessage("操作失败!");
        }
        return compResult;
    }

    @GetMapping("/refuseAddComp/{comp_collegeId}")
    public CompResult refuseAddComp(@PathVariable Integer comp_collegeId){
        CompResult compResult=new CompResult();
        College_Comp collegeComp = college_compService.getCollegeComp(comp_collegeId);
        collegeComp.setApplyOrJoin(6);
        College_Comp save = college_compService.save(collegeComp);
        if(save!=null){
            compResult.setCode(200);
            compResult.setMessage("操作成功!");
        }else {
            compResult.setCode(400);
            compResult.setMessage("操作失败!");
        }
        return compResult;
    }
}
@RestController
@RequestMapping("/student")
public class StudentController {

    @Autowired
    private StudentService studentService;

    @Autowired
    private Student_ProjectService student_projectService;

    @Autowired
    private ProjectService projectService;

    @Autowired
    private UploadFileUtils uploadFileUtils;

    @Autowired
    private WorkFileService workFileService;

    @Autowired
    private WorkService workService;

    private static String OS = System.getProperty("os.name").toLowerCase();

    @Value("${file-upload.image.winUrl}")
    private String winUrl;

    @Value("${file-upload.image.linuxUrl}")
    private String linuxUrl;

    /**
     * 根据老师id得到院内的比赛项目
     */
    @GetMapping("/getProjectByCollegeWithStudent/{studentId}")
    public List<Project> getProjectByCollegeWithStudent(@PathVariable Integer studentId){

        List<Project> projectByCollegeWithStudent = projectService.getProjectByCollegeWithStudent(studentId);
        projectByCollegeWithStudent.sort(Comparator.naturalOrder());
        return projectByCollegeWithStudent;
    }


    /**
     * 学生申请加入项目
     * @param projectId
     * @param studentId
     * @return
     */
    @GetMapping("/applyJoinProject/{projectId}/{studentId}")
    public ProResult applyJoinProject(@PathVariable Integer projectId,@PathVariable Integer studentId){
        return studentService.applyJoinProject(studentId,projectId);
    }

    /**
     * 学生重新申请加入项目
     * @param student_projectd
     * @return
     */
    @GetMapping("/reApplyJoinProject/{student_projectd}")
    public ProResult reApplyJoinProject(@PathVariable Integer student_projectd){
        Integer studentId=student_projectService.getStudentProjectById(student_projectd).getStudent().getId();
        Integer projectId=student_projectService.getStudentProjectById(student_projectd).getProject().getId();
        return studentService.applyJoinProject(studentId,projectId);
    }

    /**
     * 根据学生的id返回学生的未处理的请求
     * @param studentId
     * @return
     */
    @GetMapping("/getUndoApplyProjectList/{studentId}")
    public List<Student_Project> getUndoApplyProjectList(@PathVariable Integer studentId){
        List<Student_Project> undoApplyProjectList = student_projectService.getUndoApplyProjectList(studentId);
        undoApplyProjectList.sort(Comparator.naturalOrder());
        return undoApplyProjectList;
    }

    /**
     * 根据学生的id返回学生的处理过的请求
     * @param studentId
     * @return
     */
    @GetMapping("/getDoneApplyProjectList/{studentId}")
    public List<Student_Project> getDoneApplyProjectList(@PathVariable Integer studentId){
        List<Student_Project> doneApplyProjectList = student_projectService.getDoneApplyProjectList(studentId);
        doneApplyProjectList.sort(Comparator.naturalOrder());
        return doneApplyProjectList;
    }

    /**
     * 得到学生信息
     * @param studentId
     * @return
     */
    @GetMapping("/getStudentInfoById/{studentId}")
    public Student getStudentInfoById(@PathVariable Integer studentId){
        return studentService.getStudentById(studentId);
    }

    /**
     * 更新学生信息
     * @param student
     * @return
     */
    @PostMapping("/updateStudent")
    public UserInfo updateStudent(Student student){
        Integer studentId=student.getId();
        return studentService.updateStudent(student);
    }

    @GetMapping("/exitProject/{studentId}/{projectId}")
    public ProResult exitProject(@PathVariable Integer studentId, @PathVariable Integer projectId){
        return studentService.exitProject(studentId,projectId);
    }

    @PostMapping("/workUpload")
    public ProResult workUpload(@RequestParam(value = "uploadFile") MultipartFile[] uploadFile, Work work,Integer projectId){
        ProResult proResult=new ProResult();
        if(uploadFile==null){
            proResult.setCode(400);
            proResult.setMessage("请添加作品附件!");
            return proResult;
        }
        Project project = projectService.getProjectById(projectId);
        if(project.getWork()!=null){
            work.setId(project.getWork().getId());
        }else {
            work.setApplyDate(new Date());
        }
        String infoPath="/"+project.getCreateByTeacher().getCollege().getNickname()+"/"+project.getComp().getCompName()+"/"+project.getProjectName()+"/";
        List<WorkFile> workFiles = uploadFileUtils.uploadFile(uploadFile, infoPath);
        try {
            work.setIfMark(false);
            work.setProject(project);
            work = workService.save(work);
            for (WorkFile workFile : workFiles) {
                WorkFile workFileById = workFileService.findWorkFileById(workFile.getId());
                workFileById.setWork(work);
                workFileService.save(workFile);
            }
            proResult.setCode(200);
            proResult.setMessage("提交成功!");
        }catch (Exception e){
            proResult.setCode(400);
            proResult.setMessage("提交失败!");
        }
        return proResult;
    }

    @PostMapping("/editWork")
    public ProResult editWork(@RequestParam(value = "workFile") MultipartFile workFile,Integer workFileId) throws FileNotFoundException {
        ProResult proResult=new ProResult();
        String rootBean;
        if(OS.startsWith("win")){
            rootBean=winUrl;
        }else {
            rootBean=linuxUrl;
        }
        WorkFile workFileById = workFileService.findWorkFileById(workFileId);
        Project project = workFileById.getWork().getProject();
        String fileUrl = workFileById.getFileUrl();
        File fileDelete=new File(rootBean+fileUrl);
        fileDelete.delete();
        try {
            String infoPath = "/" + project.getCreateByTeacher().getCollege().getNickname() + "/" + project.getComp().getCompName() + "/" + project.getProjectName() + "/";
            String workPath = uploadFileUtils.uploadWorkFile(workFile, infoPath);
            workFileById.setFileName(workFile.getOriginalFilename());
            workFileById.setFileUrl(workPath);
            workFileService.save(workFileById);
            proResult.setCode(200);
            proResult.setMessage("修改成功!");
            return proResult;
        }catch (Exception e){
            proResult.setCode(400);
            proResult.setMessage("修改失败!");
            return proResult;
        }
    }

    @GetMapping("/deleteWorkFile/{workFileId}")
    public ProResult deleteWorkFile(@PathVariable Integer workFileId){
        ProResult proResult=new ProResult();
        String rootBean;
        if(OS.startsWith("win")){
            rootBean=winUrl;
        }else {
            rootBean=linuxUrl;
        }
        WorkFile workFileById = workFileService.findWorkFileById(workFileId);
        Work work = workFileById.getWork();
        String fileUrl = workFileById.getFileUrl();
        File file=new File(rootBean+fileUrl);
        try {
            file.delete();
            workFileService.delete(workFileId);
            proResult.setCode(200);
            proResult.setMessage("删除成功!");
            return proResult;
        }catch (Exception e){
            proResult.setCode(400);
            proResult.setMessage("删除失败!");
            return proResult;
        }



    }

    /**
     * 没有提交做作品的
     * @param studentId
     * @return
     */
    @GetMapping("/getUnHandOutWorks/{studentId}")
    public List<Project> getUnHandOutWorks(@PathVariable Integer studentId){
        List<Project> projectList=new ArrayList<>();
        List<Project> projectByCollegeWithStudent = projectService.getStudentProjects(studentId);
        for (Project project : projectByCollegeWithStudent) {
            Integer compState = project.getComp().getCompState();
            if(compState<3&&project.getWork()==null){
                projectList.add(project);
            }
        }
        return projectList;
    }

    /**
     * 提交过作品的
     * @param studentId
     * @return
     */
    @GetMapping("/getHandOutWorks/{studentId}")
    public List<Work> getHandOutWorks(@PathVariable Integer studentId){
        List<Work> workList=new ArrayList<>();
        List<Project> projectByCollegeWithStudent = projectService.getStudentProjects(studentId);
        for (Project project : projectByCollegeWithStudent) {
            Integer compState = project.getComp().getCompState();
            if(project.getWork()!=null){
                if(project.getWork().getIfMark()==false)
                    workList.add(project.getWork());
            }
        }
        return workList;
    }

    /**
     * 提交过作品的
     * @param studentId
     * @return
     */
    @GetMapping("/getWorksMark/{studentId}")
    public List<Work> getWorksMark(@PathVariable Integer studentId){
        List<Work> workList=new ArrayList<>();
        List<Project> projectByCollegeWithStudent = projectService.getStudentProjects(studentId);
        for (Project project : projectByCollegeWithStudent) {
            Integer compState = project.getComp().getCompState();
            if(project.getWork()!=null){
                if(project.getWork().getIfMark()==true)
                    workList.add(project.getWork());
            }
        }
        return workList;
    }
}
@RestController
@RequestMapping("/notice")
public class NoticeController {
    @Autowired
    private NoticeService noticeService;

    /**
     * 查询所有的公告信息
     * @return
     */
    @GetMapping("/findAllNotice")
    public List<Notice> findAllNotice(){
        List<Notice> allNotice = noticeService.findAllNotice();
        allNotice.sort(Comparator.naturalOrder());
        return allNotice;
    }

    /**
     * 发布新的公告
     * @param notice
     * @return
     */
    @PostMapping("/addNotice")
    public String addNotice(Notice notice){
        System.out.println(notice.getTime());
        return noticeService.addNotice(notice);
    }

    /**
     * 更新新的公告
     * @param notice
     * @return
     */
    @PostMapping("/updateNotice")
    public String updateNotice(Notice notice){
        return noticeService.addNotice(notice);
    }

    /**
     * 根据id删除公告
     * @param id
     * @return
     */
    @GetMapping("/deleteNoticeById")
    public String deleteNoticeById(int id){
        return noticeService.deleteNoticeById(id);
    }

    /**
     * 查询所有公告,并以类型分类,都以级别从高到底排列。
     * @return
     */
    @GetMapping("/selectAllByTypeOrderBYLevelDesc")
    public Map<String,List<Notice>> selectAllByTypeOrderBYLevelDesc(){
        return noticeService.findNoticeByTypeOrderByLevelDesc();
    }
}

五、论文参考

  • 计算机毕业设计选题推荐-短文写作竞赛微信小程序/安卓APP-论文参考:
    计算机毕业设计选题推荐-短文写作竞赛微信小程序/安卓APP-论文参考

六、系统视频

短文写作竞赛微信小程序/安卓APP-项目视频:

计算机毕业设计选题推荐-短文写作竞赛微信小程序/安卓APP

结语

计算机毕业设计选题推荐-短文写作竞赛微信小程序/安卓APP-项目实战
大家可以帮忙点赞、收藏、关注、评论啦~
源码获取:私信我

精彩专栏推荐⬇⬇⬇
Java项目
Python项目
安卓项目
微信小程序项目

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/111532.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

操作系统的内存管理之虚拟空间

操作系统的内存管理&#xff0c;主要分为三个方面。 第一&#xff0c;物理内存的管理&#xff0c;相当于会议室管理员管理会议室。 第二&#xff0c;虚拟地址的管理&#xff0c;也即在项目组的视角&#xff0c;会议室的虚拟地址应该如何组织。 第三&#xff0c;虚拟地址和物…

瑞萨e2studio(28)----SPI 驱动WS2812灯珠

瑞萨e2studio.28--SPI 驱动WS2812灯珠 概述视频教学样品申请芯片级联方法数据传输时序新建工程软件准备保存工程路径芯片配置开始SPI配置SPI属性配置时钟配置SPI配置CPHA配置代码hal_entry.cws2812.cws2812.h 概述 本文介绍了如何使用瑞萨RA微控制器&#xff0c;结合E2STUDIO…

【深度学习实验】网络优化与正则化(二):基于自适应学习率的优化算法详解:Adagrad、Adadelta、RMSprop

文章目录 一、实验介绍二、实验环境1. 配置虚拟环境2. 库版本介绍 三、实验内容0. 导入必要的库1. 随机梯度下降SGD算法a. PyTorch中的SGD优化器b. 使用SGD优化器的前馈神经网络 2.随机梯度下降的改进方法a. 学习率调整b. 梯度估计修正 3. 梯度估计修正&#xff1a;动量法Momen…

Web - Servlet详解

目录 前言 一 . Servlet简介 1.1 动态资源和静态资源 1.2 Servlet简介 二 . Servlet开发流程 2.1 目标 2.2 开发过程 三 . Servlet注解方式配置 ​编辑 四 . servlet生命周期 4.1 生命周期简介 4.2 生命周期测试 4.3 生命周期总结 五 . servlet继承结构 5.1 ser…

Docker 运行swagger-editor实现在线接口文档维护与调试

文章目录 一、序二&#xff0c; Docker部署准备1. 编辑docker-compose.yml2. 新增启动、停止脚本3. 样例 swagger.yaml 三&#xff0c; 启动swagger-editor1. 使用说明2. 完整代码备份 一、序 因工作需要&#xff0c;需要搭建python运行环境&#xff0c;项目中python基于flask…

处理SAP资产折旧AFAB 过账报错:“科目 8019010100 要求一个成本会计分配”

会计在进行资产折旧AFAB时 报错如下所示&#xff1a; 原因分析&#xff1a; 折旧时没有把资产设置得成本中心带到过账凭证的成本中心字段中去。而资产中已经维护了成本中心了。 所以要在资产过账的科目分配中设置一下路径如下&#xff1a; 或者TCODE&#xff1a;ACSET科目设置这…

一文带你了解自动化测试是什么?

本章主要讲解自动化测试的含义、分类、项目使用&#xff0c;以及自动化测试工具的优势。 一、自动化测试概述 1、什么是自动化测试&#xff1f; 自动化测试是软件测试活动中的一个重要分支和组成部分。随着软件产业的不断发展&#xff0c;市场对软件周期的要求越来越高&…

R -- 体验 stringdist

文章目录 安装使用stringdist :返回列表example stringdistmatrix &#xff1a;返回矩阵example amatch & ain延伸&#xff1a;距离计算公式Hamming distanceLongest Common Substring distanceLevenshtein distance (weighted)The optimal string alignment distance dosa…

阿里云2核2G3M带宽轻量服务器87元一年,经济型e实例99元一年

2023阿里云双十一优惠活动2核2G3M轻量应用服务器一年优惠价87元&#xff0c;云服务器ECS经济型e实例优惠价格99元一年&#xff0c;也是2核2G配置&#xff0c;自带3M带宽&#xff0c;并且续费不涨价&#xff0c;阿里云百科aliyunbaike.com还是很建议大家选择e实例的&#xff0c;…

什么测试自动化测试?

什么测试自动化测试&#xff1f; 做测试好几年了&#xff0c;真正学习和实践自动化测试一年&#xff0c;自我感觉这一个年中收获许多。一直想动笔写一篇文章分享自动化测试实践中的一些经验。终于决定花点时间来做这件事儿。 首先理清自动化测试的概念&#xff0c;广义上来讲&a…

小说网站源码带管理后台手机端和采集

搭建教程&#xff0c;安装宝塔 php7.2&#xff0c;绑定域名&#xff0c;上传源码到根目录解压 源码获取请自行百度&#xff1a;一生相随博客 一生相随博客致力于分享全网优质资源&#xff0c;包括网站源码、游戏源码、主题模板、插件、电脑软件、手机软件、技术教程等等&#…

AI:47-基于深度学习的人像背景替换研究

🚀 本文选自专栏:AI领域专栏 从基础到实践,深入了解算法、案例和最新趋势。无论你是初学者还是经验丰富的数据科学家,通过案例和项目实践,掌握核心概念和实用技能。每篇案例都包含代码实例,详细讲解供大家学习。 📌📌📌本专栏包含以下学习方向: 机器学习、深度学…

xcode 安装及运行个人app编程应用

1.xcode 介绍 Xcode 是运行在操作系统Mac OS X上的集成开发工具&#xff08;IDE&#xff09;&#xff0c;由Apple Inc开发。Xcode是开发 macOS 和 iOS 应用程序的最快捷的方式。Xcode 具有统一的用户界面设计&#xff0c;编码、测试、调试都在一个简单的窗口内完成 2.xcode 下…

iOS开发-CoreNFC实现NFC标签Tag读取功能

iOS开发-CoreNFC实现NFC标签Tag读取功能 一、NFC近场通信 近场通信&#xff08;NFC&#xff09;是一种无线通信技术&#xff0c;它使设备能够在不使用互联网的情况下相互通信。它首先识别附近配备NFC的设备。NFC常用于智能手机和平板电脑。 二、实现NFC标签Tag读取功能 在…

机器学习2:决策树--基于信息增益的ID3算法

1.决策树的简介 建立决策树的过程可以分为以下几个步骤: 计算每个特征的信息增益或信息增益比,选择最优的特征作为当前节点的划分标准。根据选择的特征将数据集划分为不同的子集。对每个子集递归执行步骤 1 和步骤 2,直到满足终止条件。构建决策树,并输出。基于信息增益的…

PP-MobileSeg: 探索移动设备上又快又准的语义分割模型

论文&#xff1a;https://arxiv.org/abs/2304.05152 代码&#xff1a;https://github.com/open-mmlab/mmsegmentation/tree/main/projects/pp_mobileseg 0、摘要 transformer在CV领域的成功之后&#xff0c;出现了很多在移动设备上使用它们的尝试性工作&#xff0c;但是这些工作…

一道简单的C#面试题

试题&#xff1a; 抽顺序问题&#xff1a;有10位面试者&#xff0c;需要随机抽号面试。 1&#xff09;总共十个号数&#xff0c;用数组表示&#xff1b; 2&#xff09;每一位面试者输入1开始抽签&#xff0c;然后得到抽签号&#xff0c;输入2结束抽签&#xff1b; 3&#x…

超融合数据库:解锁全场景数据价值的钥匙

前言 近日&#xff0c;四维纵横对外官宣已完成上亿元 B 轮融资。作为超融合数据库理念的提出者&#xff0c;三年来 YMatrix 持续在超融合数据库领域中保持精进与迭代&#xff0c;对于超融合数据库在行业、场景中的应用和理解也更为深刻。 本篇文章&#xff0c;我们将基于 YMa…

HTML标题、段落、文本格式化

HTML标题&#xff1a; 在HTML文档中&#xff0c;标题是很重要的。标题是通过<h1> - <h6标签进行定义的&#xff0c;<h1> 定义最大的标题&#xff1b;<h6>定义最小的标题。 <hr> 标签在HTML页面中用于创建水平线&#xff0c;hr元素可用于分隔内容。…

springboot整合日志,并在本地查看

目录 1.导入依赖 2.编写配置 3.使用 4.验证 5.打印错误信息 1.导入依赖 <!-- logback&#xff0c;向下兼容log4j,还支持SLF4J--> <dependency><groupId>ch.qos.logback</groupId><artifactId>logback-classic</artifactId> </depen…