当前位置: 首页 > news >正文

element-ui实现动态添加表单项并实现事件触发验证验证

需求分析:点击新增后新增一个月度活动详情,提交时可同时提交多个月度活动详情。点击某一个月度活动信息的删除后可删除对应月度活动信息

在这里插入图片描述
在这里插入图片描述

H5部分:

<el-dialog :title="title" :visible.sync="open"   append-to-body><el-form ref="form" :model="form" label-width="80px"><el-button @click="addItem" type="primary">增加</el-button><div v-for="(item, index) in form.dynamicItem" :key="index" style="background-color:#f2f5f9;margin: 10px;"   ><el-form  :model="form.dynamicItem[index]" :rules="rules" label-width="120px"><!--    动态产生重复表单项      --><el-row><el-col :span="8"><el-form-item label="活动类型" prop="type" ><el-select v-model="item.type" placeholder="请选择活动类型"><el-option v-for="dict in activeType":key="dict.value" :label="dict.label" :value="parseInt(dict.value)" ></el-option></el-select></el-form-item></el-col><el-col :span="16"><el-form-item label="活动开始时间" prop="starttime"><el-time-pickerv-model="item.starttime"format = 'HH:mm'value-format = 'HH:mm'placeholder="活动开始时间"style="width: 30%"></el-time-picker><el-time-pickerstyle="width: 30%"v-model="item.endtime"format = 'HH:mm'value-format = 'HH:mm'placeholder="活动结束时间"></el-time-picker></el-form-item></el-col></el-row><el-row><el-col :span="8"><el-form-item label="活动人数" prop="ptotal"><el-select v-model="item.ptotal" placeholder="请选择活动人数"><el-option v-for="dict in activePtotal":key="dict.value" :label="dict.label" :value="parseInt(dict.value)" /></el-select></el-form-item></el-col><el-col :span="16"><el-form-item label="报名开始时间" prop="regTime"><el-date-pickerv-model="item.regTime"type="daterange"range-separator=""start-placeholder="开始日期"end-placeholder="结束日期"></el-date-picker></el-form-item></el-col></el-row><el-form-item label="活动题目" prop="title"><el-input v-model="item.title" placeholder="请输入活动题目" /></el-form-item><el-row><el-col :span="8"><el-form-item label="活动场景" prop="scene"><el-radio-group v-model="item.scene"><el-radio :key="3" :label="1">室内</el-radio><el-radio :key="4" :label="2">室外</el-radio></el-radio-group></el-form-item></el-col><el-col :span="8"><el-form-item label="活动室名称" prop="roomnum"><el-select v-model="item.roomnum" placeholder="请选择活动室名称"><el-option label="请选择字典生成" value="1" /></el-select></el-form-item></el-col><el-col :span="8"><el-form-item label="活动预算" prop="badget"><el-input v-model="item.badget" placeholder="请输入活动预算" /></el-form-item></el-col></el-row><el-row ><el-col :span="8"><el-form-item label="活动主管" prop="manager"><el-input v-model="item.manager" placeholder="请输入活动主管" /></el-form-item></el-col><el-col :span="16"><el-form-item label="协助人员" prop="assistant"><el-input v-model="item.assistant" placeholder="请输入协助人员" /></el-form-item></el-col><el-button  @click="delItem(index)" type="danger" style="float: right;">删除</el-button></el-row></el-form></div></el-form><div slot="footer" class="dialog-footer"><el-button type="primary" @click="submitForm">确 定</el-button><el-button @click="cancel">取 消</el-button></div></el-dialog>

抽取H5部分的主要框架:

    <el-dialog :title="title" :visible.sync="open"   append-to-body><el-form ref="form" :model="form" label-width="80px"><el-button @click="addItem" type="primary">增加</el-button><!--    动态产生重复表单项      --><div v-for="(item, index) in form.dynamicItem" :key="index" style="background-color:#f2f5f9;margin: 10px;"   ><el-form  :model="form.dynamicItem[index]" :rules="rules" label-width="120px"><el-row><el-col :span="8"><el-form-item label="活动类型" prop="type" >表单项1</el-form-item></el-col><el-col :span="16"><el-form-item label="活动开始时间" prop="starttime">表单项2</el-form-item></el-col><el-button  @click="delItem(index)" type="danger" style="float: right;">删除</el-button></el-row></el-form></div></el-form><div slot="footer" class="dialog-footer"><el-button type="primary" @click="submitForm">确 定</el-button><el-button @click="cancel">取 消</el-button></div></el-dialog>

js部分

	/**  点击新增后增加新的项目  **/addItem(){// console.log(this.form.dynamicItem);this.form.dynamicItem.push({});},/**  点击按钮删除动态添加的表单  **/delItem(index){this.form.dynamicItem.splice(index,1);}

页面中form数据对象声明

// 表单参数form: {dynamicItem: []},

表单验证

// 表单校验rules: {type: [{ required: true, message: "活动类型不能为空", trigger: "change" }],starttime: [{ required: true, message: "活动开始时间不能为空", trigger: "blur" }],endtime: [{ required: true, message: "活动结束时间不能为空", trigger: "blur" }],ptotal: [{ required: true, message: "活动人数不能为空", trigger: "change" }],regTime: [{ required: true, message: "报名时间不能为空", trigger: "blur" }],title: [{ required: true, message: "活动题目不能为空", trigger: "blur" }],roomnum: [{ required: true, message: "活动室名称不能为空", trigger: "change" }],badget: [{ required: true, message: "活动预算不能为空", trigger: "blur" }],manager: [{ required: true, message: "活动主管不能为空", trigger: "blur" }],}
export default {name: "Month",components: {Form},data() {return {// 表单参数form: {dynamicItem: []},// 表单校验rules: {type: [{ required: true, message: "活动类型不能为空", trigger: "change" }],starttime: [{ required: true, message: "活动开始时间不能为空", trigger: "blur" }],endtime: [{ required: true, message: "活动结束时间不能为空", trigger: "blur" }],ptotal: [{ required: true, message: "活动人数不能为空", trigger: "change" }],regTime: [{ required: true, message: "报名时间不能为空", trigger: "blur" }],title: [{ required: true, message: "活动题目不能为空", trigger: "blur" }],roomnum: [{ required: true, message: "活动室名称不能为空", trigger: "change" }],badget: [{ required: true, message: "活动预算不能为空", trigger: "blur" }],manager: [{ required: true, message: "活动主管不能为空", trigger: "blur" }],}};},
};

完整demo

<template><div class="app-container"><el-date-pickerv-model="monthValue"type="month"style="width: 120px"value-format="yyyy-MM"format="yyyy-MM"placeholder="选择月"@change="changeMonth"></el-date-picker><el-calendar v-model="nowDate" ><templateslot="dateCell"slot-scope="{date, data}"><p :class="data.isSelected ? 'is-selected' : ''" style="width: 100%;height: 100%;" @click="clickDate(date)">{{ data.day.split('-').slice(1).join('月')+"日"}} {{ data.isSelected ? '✔️' : ''}}</p></template></el-calendar><!-- 对话框(添加 / 修改) --><el-dialog :title="title" :visible.sync="open"   append-to-body><el-form ref="form" :model="form" label-width="80px"><el-button @click="addItem" type="primary">增加</el-button><div v-for="(item, index) in form.dynamicItem" :key="index" style="background-color:#f2f5f9;margin: 10px;"   ><el-form  :model="form.dynamicItem[index]" :rules="rules" label-width="120px"><!--    动态产生重复表单项      --><el-row><el-col :span="8"><el-form-item label="活动类型" prop="type" ><el-select v-model="item.type" placeholder="请选择活动类型"><el-option v-for="dict in activeType":key="dict.value" :label="dict.label" :value="parseInt(dict.value)" ></el-option></el-select></el-form-item></el-col><el-col :span="16"><el-form-item label="活动开始时间" prop="starttime"><el-time-pickerv-model="item.starttime"format = 'HH:mm'value-format = 'HH:mm'placeholder="活动开始时间"style="width: 30%"></el-time-picker><el-time-pickerstyle="width: 30%"v-model="item.endtime"format = 'HH:mm'value-format = 'HH:mm'placeholder="活动结束时间"></el-time-picker></el-form-item></el-col></el-row><el-row><el-col :span="8"><el-form-item label="活动人数" prop="ptotal"><el-select v-model="item.ptotal" placeholder="请选择活动人数"><el-option v-for="dict in activePtotal":key="dict.value" :label="dict.label" :value="parseInt(dict.value)" /></el-select></el-form-item></el-col><el-col :span="16"><el-form-item label="报名开始时间" prop="regTime"><el-date-pickerv-model="item.regTime"type="daterange"range-separator=""start-placeholder="开始日期"end-placeholder="结束日期"></el-date-picker></el-form-item></el-col></el-row><el-form-item label="活动题目" prop="title"><el-input v-model="item.title" placeholder="请输入活动题目" /></el-form-item><el-row><el-col :span="8"><el-form-item label="活动场景" prop="scene"><el-radio-group v-model="item.scene"><el-radio :key="3" :label="1">室内</el-radio><el-radio :key="4" :label="2">室外</el-radio></el-radio-group></el-form-item></el-col><el-col :span="8"><el-form-item label="活动室名称" prop="roomnum"><el-select v-model="item.roomnum" placeholder="请选择活动室名称"><el-option label="请选择字典生成" value="1" /></el-select></el-form-item></el-col><el-col :span="8"><el-form-item label="活动预算" prop="badget"><el-input v-model="item.badget" placeholder="请输入活动预算" /></el-form-item></el-col></el-row><el-row ><el-col :span="8"><el-form-item label="活动主管" prop="manager"><el-input v-model="item.manager" placeholder="请输入活动主管" /></el-form-item></el-col><el-col :span="16"><el-form-item label="协助人员" prop="assistant"><el-input v-model="item.assistant" placeholder="请输入协助人员" /></el-form-item></el-col><el-button  @click="delItem(index)" type="danger" style="float: right;">删除</el-button></el-row></el-form></div></el-form><div slot="footer" class="dialog-footer"><el-button type="primary" @click="submitForm">确 定</el-button><el-button @click="cancel">取 消</el-button></div></el-dialog></div>
</template>
<style rel="stylesheet/scss" lang="scss">
@import "~@/assets/styles/month.scss";
</style><script>
import {createMonth,updateMonth,deleteMonth,getMonth,getMonthPage,exportMonthExcel,createMonthActivities
} from '@/api/activity/month'
import {DICT_TYPE, getDictDataLabel, getDictDatas, getDictDatas2} from "@/utils/dict";
import Form from '@/views/bpm/form'export default {name: "Month",components: {Form},data() {return {//活动类型下拉框获取后端数据activeType:null,//活动人数下拉框获取后端数据activePtotal:null,monthValue:null,nowDate:new Date(),// 遮罩层loading: true,// 导出遮罩层exportLoading: false,// 显示搜索条件showSearch: true,// 总条数total: 0,// 月度活动列表list: [],// 弹出层标题title: "",// 是否显示弹出层open: false,dateRangeTime: [],dateRangeRegTime: [],dateRangeCreateTime: [],//新增活动日期addActiveDate:null,// 查询参数queryParams: {pageNo: 1,pageSize: 10,id: null,type: null,ptotal: null,title: null,scene: null,roomnum: null,badget: null,manager: null,assistant: null,},// 表单参数form: {dynamicItem: []},// 表单校验rules: {type: [{ required: true, message: "活动类型不能为空", trigger: "change" }],starttime: [{ required: true, message: "活动开始时间不能为空", trigger: "blur" }],endtime: [{ required: true, message: "活动结束时间不能为空", trigger: "blur" }],ptotal: [{ required: true, message: "活动人数不能为空", trigger: "change" }],regTime: [{ required: true, message: "报名时间不能为空", trigger: "blur" }],title: [{ required: true, message: "活动题目不能为空", trigger: "blur" }],roomnum: [{ required: true, message: "活动室名称不能为空", trigger: "change" }],badget: [{ required: true, message: "活动预算不能为空", trigger: "blur" }],manager: [{ required: true, message: "活动主管不能为空", trigger: "blur" }],}};},created() {this.monthValue=this.nowDate;this.getList();//活动类型下拉框获取数据this.activeType=this.getDictDatas(DICT_TYPE.ACTIVITY_MONTH_TYPE);//活动人数下拉框获取数据this.activePtotal=this.getDictDatas(DICT_TYPE.ACTIVITY_MONTH_PTOTAL);//活动场景单选框数据// this.activeScene=this.getDictDatas(DICT_TYPE.ACTIVITY_MONTH_SCENE);},methods: {/** 查询列表 */getList() {this.loading = true;// 处理查询参数let params = {...this.queryParams};this.addBeginAndEndTime(params, this.dateRangeTime, 'time');this.addBeginAndEndTime(params, this.dateRangeRegTime, 'regTime');this.addBeginAndEndTime(params, this.dateRangeCreateTime, 'createTime');// 执行查询getMonthPage(params).then(response => {this.list = response.data.list;this.total = response.data.total;this.loading = false;});},/** 取消按钮 */cancel() {this.open = false;this.reset();},/** 表单重置 */reset() {this.form.dynamicItem = [];this.resetForm("form");},/** 提交按钮 */submitForm() {var flag=0;var subData=this.form.dynamicItem;//提交数据验证subData.forEach((data,index)=>{//对提交数据进行验证:type,starttime,endtime,ptotal,regTime,title,roomnum,manager,badgetif (!data.type||!data.starttime||!data.endtime||!data.ptotal||!data.regTime||!data.title||!data.roomnum||!data.manager||!data.badget){alert("数据提交异常1");flag=1;}})if (flag===1){return;}//数据信息进行处理并进行提交subData.forEach((data,index)=>{//对提交数据进行验证:type,starttime,endtime,ptotal,regTime,title,roomnum,manager,badgetdata.regStarttime=data.regTime[0];data.regEndtime=data.regTime[1];if (typeof(data.starttime )=='string'){var hourAndMinutesS=data.starttime.split(':');data.starttime=new Date(this.addActiveDate.setHours(parseInt(hourAndMinutesS[0])));data.starttime=new Date(this.addActiveDate.setMinutes(parseInt(hourAndMinutesS[1])));}if (typeof(data.endtime )=='string'){var hourAndMinutesE=data.endtime.split(':');data.endtime=new Date(this.addActiveDate.setHours(hourAndMinutesE[0]));data.endtime=new Date(this.addActiveDate.setMinutes(hourAndMinutesE[1]));}console.log("处理过后的数据对象",data);console.log("数据"+index,data);})console.log(this.form.dynamicItem);// 添加的提交createMonthActivities(this.form.dynamicItem).then(response => {this.$modal.msgSuccess("新增成功");this.open = false;this.getList();});},/** 上方月份选择后下方日历的联动 **/changeMonth() {//上方日期选择器选择了月份后,下方日历显示为选中月份this.nowDate = new Date(this.monthValue);console.log("this.nowDate",this.nowDate);},clickDate(date){//点击某个日期后弹出弹出框this.reset();this.open = true;this.title = "添加月度活动";this.addActiveDate=date;},/**  点击新增后增加新的项目  **/addItem(){// console.log(this.form.dynamicItem);this.form.dynamicItem.push({});},/**  点击按钮删除动态添加的表单  **/delItem(index){this.form.dynamicItem.splice(index,1);}}
};
</script>

整体效果及功能:

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
删除某个月度活动:
在这里插入图片描述
在这里插入图片描述

相关文章:

element-ui实现动态添加表单项并实现事件触发验证验证

需求分析&#xff1a;点击新增后新增一个月度活动详情&#xff0c;提交时可同时提交多个月度活动详情。点击某一个月度活动信息的删除后可删除对应月度活动信息 H5部分&#xff1a; <el-dialog :title"title" :visible.sync"open" append-to-body>…...

ThreadLocal 内存泄漏问题

1. 认识ThreadLocal java中提高了threadlocal&#xff0c;为每个线程保存其独有的变量&#xff0c;threadlocal使用的一个小例子是&#xff1a; public class ThreadLocalTest {public static void main(String[] args) {ThreadLocal<String> threadIds new ThreadLoc…...

【算法】两道算法题根据提供字母解决解码方法和城市的天际线天际线问题

算法目录解码方法Java解答参考&#xff1a;天际线问题Java解答参考&#xff1a;大家好&#xff0c;我是小冷。 上一篇了解了项目相关的知识点 接下来看下两道算法题吧&#xff0c;用Java解答&#xff0c;可能更能激发一下大脑思考。 解码方法 题目要求&#xff1a; 一条包含…...

Python-TCP网络编程基础以及客户端程序开发

文章目录一. 网络编程基础- 什么是IP地址?- 什么是端口和端口号?- TCP介绍- socket介绍二. TCP客户端程序开发三. 扩展一. 网络编程基础 - 什么是IP地址? IP地址就是标识网络中设备的一个地址 IP地址分为 IPv4 和 IPv6 IPv4使用十进制, IPv6使用十六进制 查看本机IP地址: l…...

超低成本DDoS攻击来袭,看WAF如何绝地防护

一、DDoS攻击&#xff0c;不止于网络传输层 网络世界里为人们所熟知的DDoS攻击&#xff0c;多数是通过对带宽或网络计算资源的持续、大量消耗&#xff0c;最终导致目标网络与业务的瘫痪&#xff1b;这类DDOS攻击&#xff0c; 工作在OSI模型的网络层与传输层&#xff0c;利用协…...

CF1795E Explosions? (单调栈)

传送门 题意&#xff1a; 有 n 个怪兽需要消灭&#xff0c;它们的生命值分别是 h [1],h [2]......h [n]. 我们可以使用两种技能&#xff1a; 技能 1&#xff1a;选择任意一个怪兽&#xff0c;使其生命值降低 1 点&#xff0c;并且需要 1 点能量值. 技能 2&#xff1a;选择任意…...

C++——二叉树排序树

文章目录1 二叉搜索树概念2 二叉搜索树操作与模拟实现2.1 二叉搜索树的查找非递归版本递归版本2.2 二叉搜索树的插入非递归版本递归版本2.3 二叉搜索树的删除非递归版本递归版本3 二叉搜索树的应用&#xff08;K模型、KV模型&#xff09;4 二叉搜索树的性能分析1 二叉搜索树概念…...

深拷贝浅拷贝的区别?如何实现一个深拷贝?

一、数据类型存储 JavaScript中存在两大数据类型&#xff1a; 基本类型 Number String null Undefined Boolean symbol引用类型 array object function 基本类型数据保存在在栈内存中 引用类型数据保存在堆内存中&#xff0c;引用数据类型的变量是一个指向堆内存中实际对象的…...

Linux应用编程下连接本地数据库进行增删改查系列操作

文章目录前言一、常用SQL操作语句二、相关函数解析三、连接本地数据库四、编译运行五、程序源码前言 本篇为C语言应用编程下连接Linux本地数据库进行增删改查系列操作。 在此之前&#xff0c;首先当然是你需要具备一定的数据库基础&#xff0c;所以下面我先列出部分常用的SQL…...

图论学习03

图神经网络模型介绍 将图神经网络分为基于谱域上的模型和基于空域上的模型&#xff0c;并按照发展顺序详解每个类别中的重要模型。 基于谱域的图神经网络 谱域上的图卷积在图学习迈向深度学习的发展历程上起到了关键性的作用。三个具有代表性的谱域图神经网络 谱图卷积网络切…...

解决qt中cmake单独存放 .ui, .cpp, .h文件

设想 项目文件较多&#xff0c;全部放在一个目录下就像依托答辩。 希望能将头文件放入include&#xff0c;ui文件放入ui&#xff0c;源文件放入src。 为了将Qt代码和一般非Qt代码分离开&#xff0c;进一步地&#xff1a; 将Qt源文件放入qt_src&#xff0c;普通源文件放入sr…...

操作系统(day12)-- 基本分段存储,段页式存储

基本分段存储管理方式 不会产生内部碎片&#xff0c;会产生外部碎片 分段 按照程序自身的逻辑关系划分为 若干个段&#xff0c;每个段都有一个段名&#xff0c;每段从0开始编址 分段存储管理方式中一个段表项由段号&#xff08;隐含&#xff09;、段长、基地址 分段的段表项固…...

疯狂弹出请插入多卷集的最后一张磁盘窗口

整个人嘛了&#xff0c;今天插上U盘&#xff0c;跟tmd中了病毒一样&#xff0c; 屏幕疯狂弹出窗口&#xff0c; 提示请插入多卷集的最后一张磁盘&#xff01; 点确定之后他继续弹出&#xff0c;点取消它也继续弹出&#xff0c; 关掉一个又弹出来一个&#xff0c;妈的&#x…...

Spark12: SparkSQL入门

一、SparkSQL Spark SQL和我们之前讲Hive的时候说的hive on spark是不一样的。hive on spark是表示把底层的mapreduce引擎替换为spark引擎。而Spark SQL是Spark自己实现的一套SQL处理引擎。Spark SQL是Spark中的一个模块&#xff0c;主要用于进行结构化数据的处理。它提供的最核…...

show profile和trance分析SQL

目录 一.show profile分析SQL 二.trance分析优化器执行计划 一.show profile分析SQL Mysql从5.0.37版本开始增加了对show profiles和show profile语句的支持。show profiles能够在做SQL优化时帮助我们了解时间都耗费到哪里去了。。 通过have_profiling参数&#xff0c;能够…...

[AI生成图片] 效果最好的Midjourney 的介绍和使用

Midjourney介绍&#xff1a; 是一个文本生成图片的扩散模型&#xff0c;能够根据输入的任何文本生成令人难以置信的图像&#xff0c;让数十亿人在几秒钟内创造惊人的艺术。为方便用户控制和快速生成图片&#xff0c;打开后在页面底部输入文本内容&#xff0c;稍等一小会&#…...

Vue.use( ) 的核心原理

首先来思考几个问题&#xff1a; Vue.use是什么&#xff1f; vue.use() 是vue提供的一个静态方法&#xff0c;主要是为了注册插件&#xff0c;增加vue的功能。 Vue.use( plugin ) plugin只能是Object 或 Function vue.use()做了什么工作&#xff1f; 该js如果是对象 该对象…...

idea同时编辑多行-winmac都支持

1背景介绍 idea编辑器非常强大&#xff0c;其中一个功能非常优秀&#xff0c;很多程序员也非常喜欢用。这个功能能够大大大提高工作效率-------------多行代码同时编辑 2win 2.1方法1 按住alt鼠标左键上/下拖动即可 这样选中多行后&#xff0c;可以直接多行编辑。 优点&a…...

亿级高并发电商项目-- 实战篇 --万达商城项目 十一(编写商品搜索功能、操作商品同步到ES、安装RabbitMQ与Erlang,配置监听队列与消息队列)

&#x1f44f;作者简介&#xff1a;大家好&#xff0c;我是小童&#xff0c;Java开发工程师&#xff0c;CSDN博客博主&#xff0c;Java领域新星创作者 &#x1f4d5;系列专栏&#xff1a;前端、Java、Java中间件大全、微信小程序、微信支付、若依框架、Spring全家桶 &#x1f4…...

数据结构概述和稀疏数组

数据结构和算法内容介绍 1&#xff09;算法是程序的灵魂&#xff0c;优秀的程序可以在海量数据计算时&#xff0c;仍然保持高速计算 数据结构和算法概述 1&#xff09;程序 数据结构算法 2&#xff09;学好数据结构可以编写出更加漂亮&#xff0c;更加有效率的代码 3&…...

宝塔搭建实战人才求职管理系统adminm前端vue源码(三)

大家好啊&#xff0c;我是测评君&#xff0c;欢迎来到web测评。 上一期给大家分享骑士cms后台admin前端vue在本地运行打包、宝塔发布部署的方式&#xff0c;本期给大家分享&#xff0c;后台adminm移动端后台vue前端怎么在本地运行&#xff0c;打包&#xff0c;实现线上功能更新…...

服务器是干什么用的?

首先&#xff0c;什么是服务器&#xff1f;服务器是提供计算服务器和网络服务的设备。服务器和计算机由CPU、硬盘、内存、系统总线等组成。比如我们访问一个网站&#xff0c;点击这个网站会发出访问请求&#xff0c;服务器会响应服务请求&#xff0c;进行相应的处理&#xff0c…...

C++ 之结构体与共用体

文章目录参考描述结构体使用&#xff08;基本&#xff09;声明初始化先创建后初始化C 11 列表初始化使用&#xff08;进阶&#xff09;结构数组声明&#xff08;拓展&#xff09;声明及创建声明及初始化匿名结构体细节外部声明与内部声明成员赋值共用体存储空间匿名共用体同化尾…...

Java基础知识汇总(良心总结)

1. 前言 本文章是对Java基础知识进行了汇总&#xff0c;方便大家学习。 申明&#xff1a;文章的内容均来自黑马程序员&#xff0c;博主只是将其搬到了CSDN上以共享给大家学习 2. 目录 Day01 Java学习笔记之《开章》 Day02 Java学习笔记之《运算符》 Day03 Java学习笔记之《流程…...

InnoDB之Undo log格式

1. 前言 InnoDB有两大日志模块&#xff0c;分别是redo log和undo log。为了避免磁盘随机写&#xff0c;InnoDB设计了redo log&#xff0c;数据写入时只写缓冲页和redo log&#xff0c;脏页由后台线程异步刷盘&#xff0c;哪怕系统崩溃也能根据redo log恢复数据。但是我们漏了一…...

一问学习StreamAPI终端操作

Java Stream管道流是用于简化集合类元素处理的java API。 在使用的过程中分为三个阶段&#xff1a; 将集合、数组、或行文本文件转换为java Stream管道流管道流式数据处理操作&#xff0c;处理管道中的每一个元素。上一个管道中的输出元素作为下一个管道的输入元素。管道流结果…...

在屎山代码中快速找到想要的代码法-锁表法(C#)

由于本人水平有限&#xff0c;文中有写得不对的地方请指正&#xff0c;本文的方法有些投机取巧&#xff0c;实在是没招的情况下可以酌情使用&#xff0c;如有侵权&#xff0c;请联系删除。 前几天接到一个需求&#xff0c;要在医嘱签署时对检验项目进行分方操作&#xff0c;分…...

网页设计html期末大作业

网页设计html期末大作业网页设计期末大作业-自制网站大一期末作业&#xff0c;外卖网站设计网页设计期末大作业-精美商城-首页框架网页设计期末大作业-自制网站 有导航栏&#xff0c;轮播图&#xff0c;按钮均可点进去&#xff0c;如下图所示 点我下载资源》》》》 大一期末…...

实战打靶集锦-006-Stapler

**写在前面&#xff1a;**记录博主的一次打靶经历。 目录1. 主机发现2. 端口发现3. 服务枚举4. 服务探查4.1 FTP探查4.1.1 匿名登录4.1.2 Elly用户4.1.3 John用户4.1.4 EXP搜索4.2 dnsmasq探查4.2.1 基础信息获取4.2.2 EXP搜索4.3 WEB应用探查4.3.1 浏览器访问4.3.2 目录扫描4.…...

致远OAA6版安装

准备工作&#xff0c;操作系统winserver2019&#xff0c;sqlserver2019。致远OA安装包0.SeeyonInstall.zip相关下载&#xff1a;winserver2019下载地址&#xff1a;cn_windows_server_2019_updated_july_2020_x64_dvd_2c9b67da.iso magnet:?xturn:btih:22A410DEA1B0886354A34D…...

网站建设流程有/服务营销案例

为什么80%的码农都做不了架构师&#xff1f;>>> 行为型模式&#xff1a;Chain Of Responsibility 职责链模式 &#xff11;、请求的发送者与接受者 &#xff11;&#xff09;某些对象请求的接受者可能多种多样&#xff0c;变化无常...... &#xff12;&#xf…...

工业设计网站外网/seo外链网

【1】决定多长时间启动所有线程。如果使用10个线程&#xff0c;ramp-up period是100秒&#xff0c;那么JMeter用100秒使所有10个线程启动并运行。每个线程会在上一个线程启动后10秒&#xff08;100/10&#xff09;启动。Ramp-up需要充足长以避免在启动测试时有一个太大的工作负…...

宁夏一站式网站建设/自己建网站的详细步骤

历史文章《国内最全的Spring Boot系列之一》《国内最全的Spring Boot系列之二》马上要过年了&#xff0c;作者要回家好好休息一下了&#xff0c;吃饱喝足&#xff0c;明年继续。在此和大家拜个早年&#xff0c;祝大家&#xff1a;鼠年大吉、心想事成、万事如意、开心每一天。「…...

上海网站建设定制/买卖网站

作者&#xff5c;覃云今天&#xff0c;Chrome 70 正式版发布&#xff0c;Windows、Linux、Mac 和 iOS 平台都可开始使用&#xff0c;但 Android 平台还需等些时日。Chrome 70 此次带来的更新主要包括&#xff1a;支持在 Windows 平台上安装 PWA、新增 AV1 解码器、支持画中画功…...

网站备案在哪查/友情链接软件

本书第一章提出了一个看似简单的问题&#xff0c;有最多1000万条不同的整型数据存在于硬盘的文件中&#xff0c;如何在1M内存的情况下对其进行尽可能快的排序。 每个数字用4byte&#xff0c;1M即可存储250 000个数据&#xff0c;显然&#xff0c;只要每次对250 000个数据排序&a…...

大学生服装网站建设策划书/青岛网站制作设计

IDEA设置不需要重启Tomcat而更新代码&#xff08;热部署&#xff09;...