智能结果评估
智能结果评估
Excel导入导出
Excel导入导出视图:虚拟存在的表,视图中的数据
任务1特定的角色(数据权限角色)才能编辑修改项目的附件的情况
修改的情况记录日志操作表,(这里说AOP吧)
(附件表,附件记录日志表)
1234567891.先去后端的角色表中创建一个数据编辑角色,对应roleID=10040,2.前端调用方法,获取当前人员所有的角色ID(后端有两张表,一个是role表,对应不同角色,一个是user-role表,对应userid和roleID的关系),直接用当前人员ID当去查所有的roleID就行3.编辑按钮的visable,根据当前角色ID去判断,不同的人有不同的按钮4.点击编辑按钮,的绑定事件为设置dialog属性为true,在dialog中用 时间选择器,和人员选择器(自定义组件)设置人员5.
任务2
Excel的模板下载和导入
导入要做校验,正则匹配格式,导入类校验类
后端要校验,前段显示还要校验
根据Excel的是否待办已办字段,去生成待办已办
任务3项目信息编辑功能,主要是前端
点击编辑按钮后,生成dialog,数据的回显,修改保存项目信息,保存的时候做好校验
任务4项目团 ...
科研创新管理平台
*【中国移动浙江公司】*
*【科研创新管理平台】*
*(成本度量线上化管理)*
总目标任务1、 将现有成本度量工作线上化,实现线上提交、审批、确认等工作。
2、 将评估结果线上结构化,记录度量评估结果。
3、 对评估人员评估时长进行记录,方便后续进行工作质量考评。
1.1. 功能性全局需求
在后续章节阐述的业务功能需求、辅助功能需求、基础功能,如无特殊说明,必须遵循下列功能性要求:
1. 对于每一个工作流程需提供流程监控功能。
2. 对所有系统接口需提供运行监控功能,并记录详细日志。
1.2. 非功能性全局需求
在后续章节阐述的业务功能需求、辅助功能需求、基础功能,如无特殊说明,必须遵循下列非功能性要求:
1.对于编辑类需求,如无特殊说明,每次交互响应时间要求<2秒。
2.对于日常检索类需求,如无特殊说明,检索响应时间要求<5秒。
3.对于统计分析类需求,如无特殊说明,统计表与图形成的响应时间要求<10秒。
4.对于每项业务功能需求,如无特殊说明,均要求能够并发400用户,并要求目标系统能够承受所有功能并发400用户的压力。
功能性需求说明
1.业支项目管理*用户目标 ...
前端拖动可排序
前端可拖动排序前端列表和样式的可拖动排序
1.步骤,前端正常写表格,并且存放字段
2.在vue生命周期函数mounted中调用初始化拖动调整顺序的方法
操作 DOM 元素:因为在 mounted() 调用时,组件的 DOM 结构已经被渲染出来,
所有 DOM 元素都是可访问的。这时候可以安全地操作 DOM 元素。
初始化第三方库:像 SortableJS 这样的第三方库,通常依赖于存在的 DOM 元素来进行操作,
因此需要在 DOM 渲染完成后进行初始化。
1234mounted() { // 初始化 this.initSort()},
3.method里定义初始化排序方法
12345678910111213141516171819initSort() { //用于获取页面中所有符合指定选择器的元素的函数,这里查找的是表格的<tbody>部分。 //选择第一个元素,el应该是一个dom元素,而不是一个值 const el = document.querySelectorAll(' ...
Git分支管理
Git分支管理
Git 分支(branch)是 Git 版本控制系统中的一个关键概念,允许开发人员并行开发、修复 bug、实验新功能以及管理多个开发版本。以下是对 Git 分支的详细介绍:
1. 基本概念
分支:分支是一个可移动的指针,指向某个提交对象。创建一个新的分支意味着创建一个指针,指向当前的提交。通过切换分支,你可以在不同的开发线中自由地切换。
主分支(Master/Main):传统上,master 是默认的主要分支,通常用于存放稳定的代码版本。近年来,main 分支逐渐取代 master 成为新的默认分支名称。
2. 分支操作2.1 创建分支创建一个新的分支可以使用以下命令:
1git branch <branch_name>
例如,创建一个名为 feature-xyz 的新分支:
1git branch feature-xyz
2.2 切换分支切换到一个现有分支:
1git checkout <branch_name>
例如,切换到 feature-xyz 分支:
1git checkout feature-xyz
2.3 创建并切换 ...
华信实习任务-主页面
主页面显示2024年7月25日22:05:06
author:方圆
任务:主页面的编写和数据显示,前后端
五个模块,分别对应表头、近半年工时情况、一周项目动态、资料上传情况、日程安排
前端:引入自定义组件,去传递每个组件需要的数值
123456789<general-dashboard :offsetHeight=91 :head-data="generalHeaderData" //表头数据 :head-click="handleHeadClick" //表头点击事件 :left-center-data="generalLeftCenterData" //折线图数据 :left-bottom-left-data="generalLeftBottomLeftData" //一周项目动态 :left-bottom-left-click="handleLeftBottomLeftClick" //项目动态点击事件 :left-bottom- ...
杭州银行面经
杭州银行面经大学学的专业课都是什么
1除了通识的专业课,就是,Java,数据结构,计网,计组,数据结构等
HashMap的底层实现原理
1234567891011121314Java中的HashMap是一种基于哈希表的Map接口实现,它可以存储键值对,并且支持快速的插入、删除和查找操作。HashMap的底层实现原理是数组+链表/红黑树。具体来说,HashMap内部维护了一个Entry数组,每个Entry包含一个键值对。当插入一个键值对时,HashMap会根据键的哈希值计算出该键值对在数组中的位置,如果该位置已经有其他键值对了,则使用链表或红黑树来解决冲突。当查找一个键值对时,HashMap会根据键的哈希值计算出该键值对在数组中的位置,然后遍历链表或红黑树,找到对应的键值对。在Java 8中,HashMap的底层实现原理进行了优化,当链表长度超过一定阈值时,会将链表转换为红黑树,以提高查找效率。此外,HashMap还支持动态扩容和负载因子等特性,以提高存储和访问的效率。
HashSet是如何检查重复的
1234HashSet底层还是HashMap,HashSet只考虑key的值,va ...
网易面经
网易牛客面经整理没回答上来的varchar和text的字段的区别
12varchar是可变长度的字符串,需要自定义长度,可以加索引,适合存储短的文本数据text字段是存放长文本数据的地方,存储在单独存储区,表中保存额外的指针,只能部分索引(前255字符)
后端调用Test字段的一些注意事项
12345678910111213TEXT 有不同的子类型,每种类型的最大长度不同:TINYTEXT: 最多 255 字节。TEXT: 最多 65,535 字节。MEDIUMTEXT: 最多 16,777,215 字节。LONGTEXT: 最多 4,294,967,295 字节。分页和摘要因为text字段,表里只存放指针,MySQL还需要二次查询会影响查询性能,所以我们做了一个分表将text列分离到单独的扩展表中,用ID字段做一个关联然后,创建一个varchar(255)字段,来记录text的前255个字符作为摘要这样在分页查询的时候,文章内容我们就只需要查询这个varchar字段就行点进去具体查询的时候,就需要关联text表查询text字段了
如何提取
1234567SUBSTRING 函数( ...
携程笔试&面经
携程笔试&面经 整理面试完没回答上来的在并发编程中,如何确保i++的原子性
1231.一般来说,可以使用syn关键字,将调用i++的方法修饰2.使用 AtomicInteger 或 AtomicLongAtomicInteger 和 AtomicLong 提供了原子性操作,适用于高并发环境。
死锁问题
1
主键索引和非主键索引的区别
12主键索引列中的值唯一并且不为空,创建表的时候回自动创建非主键索引:列的值可以为空,需要手动创建,
创建数据库的时候,主键是怎么设计的,为什么要自增
12主键一般选用uuID,自然主键等不会重复的自增的话就是,简单方便,因为自增的话,主键就不会重复了
一个数组取前K个较大的元素,说出你的算法思路
123456789101112131415161718/*优先队列,最小堆创建一个大小为K的最小堆(优先队列)。遍历数组:将元素加入堆中,如果堆的大小超过K,则移除堆顶元素(即最小值)。最终堆中的元素就是前K个最大的元素。*/import java.util.PriorityQueue;public List<Integer> fin ...
美团笔试&面经
美团5.22运维
1.在Nginx配置文件中,alias指令只能写在什么模块中?
1alias 指令通常用在 location 块中来指定存取静态文件的路径。
Nginx配置文件结构
1234567891011121314151617nginx配置文件主要分为四个部分:main(全局设置)http ( )upstream(负载均衡服务器设置)server(主机设置)location(URL匹配特点位置的设置)server部分的指令主要用于指定主机和端口,upstream指令主要用于负载均衡和设置一系列的后端服务器,location部分用于匹配网页位置位置。 upstream backend { server 127.0.0.1:8082 max_fails=5 fail_timeout=10s weight=1; server 127.0.0.1:8081 max_fails=5 fail_timeout=10s weight=1; }
2.数据库设计的实体类关系的陷阱问题
123456链接陷阱问题:两个实 ...
RabbitMQ面试题
消息队列面试题RabbitMQ的应用场景
1234561,异步消息的传递,错峰削骨,我项目中的先处理抢购成功的消息,再异步处理订单的消息2.应用解耦,微服务架构中,各个服务组件需要通信协作,通过消息中间件作为联系3.任务队列:,用于将任务分发给多个消费者进行处理。这种方式可以实现任务的负载均衡和并行处理,提高了任务处理的效率和可靠性。4.日志收集:在分布式系统中,需要收集和统计各个节点的日志信息。通过将日志消息发送到RabbitMQ中,可以集中管理和存储日志数据,并提供查询和分析功能,帮助监控系统的运行状态。
RabbitMQ如何保证消息的连续性
123456781,消息确认机制:confirm 手动确认(manual ack):消费者在处理完消息后手动发送确认消息给RabbitMQ,告诉它可以删除该消息。 自动确认(auto ack):RabbitMQ在将消息发送给消费者后立即将消息标记为已确认,无需消费者手动确认。 所以一般来说,如果你要确保写RabbitMQ的消息别丢,在生产者那里设置开启confirm模式, 每次写消息都会分配一个唯一id,如果写入了RabbitMQ中,Rab ...
JVM面试题
JVM面试题
内存模型:各个部分的作用,保存哪儿些数据
类加载:双亲委派加载机制,常用加载器分别加载哪儿种类型的类
GC:分带回收的思想依据
性能调优:JVM工具,性能分析工具
执行模式:解释模式,编译模式,混合模式等
编译器优化:javac的变异过程
JVM内存模型
线程私有:栈,本地方法栈,程序计数器
123456789101112栈又称方法栈,线程私有的,线程执行方法是都会创建一个栈帧,用来存储局部变量表、操作栈、动态链接、方法出口等信息。调用方法时执行入栈,方法返回时执行出栈本地方法栈与栈类似,也是用来保存执行方法的信息,执行Java方法是使用占,执行Native方法时是使用本地方法栈程序计数器保存当前线程执行的字节码位置,每个线程工作时都有独立的计数器,值为执行Java方法服务,执行Native方法时,程序计数器为空
线程共享:堆,方法区
1234567891011堆JVM内存管理最大的一块,堆被线程共享,目的是存放对象的实例,几乎所有对象的实例都会放在这里。当堆没有可用空间时,会抛出OOM异常(Out of Menory内存溢出),根据对象的存活周期不同,JVM把对象进 ...
java8新特性
Java8新特性Java8新特性的好处
速度更快
代码更少(Lambda简化代码书写)
强大的Stream API(我就是冲着它来的,真滴好用)
便于并行
最大化减少空指针异常:Optional
Nashorn引擎,允许在JVM上运行JS应用
并行流与串行流
并行流就是把一个内容分为多个数据块,并用不同的线程分别处理每个数据块的流,相比较于串行流,可以很大程度上提高程序的执行效率
Java8中将其进行了优化,我们可以很容易的对数据进行并行操作。
Stream API 可以声明性地通过parallel()和sequential()在并行流与顺序流之间进行切换
Lambda表达式
Lambda是一个匿名函数,我们可以把Lambda表达式理解为是一段可以传递的代码(将代码像数据一样进行传递)。
使用它可以写出更简洁、更灵活的代码。作为一种更紧凑的代码风格,是Java的语言表达能力得到了提升
Lambda举例
举例一
1234567891011121314151617JAVA@Testpublic void test01(){ //1. 以前的写法 Runnab ...
周杰伦演唱会
周杰伦
RabbitMq
RabbitMQ初始MQ高性能异步通信组件
同步通讯:就如同打视频电话,双方的交互都是实时的。因此同一时刻你只能跟一个人打视频电话。
异步通讯:就如同发微信聊天,双方的交互不是实时的,你不需要立刻给对方回应。因此你可以多线操作,同时跟多人聊天。
两种方式各有优劣,打电话可以立即得到响应,但是你却不能跟多个人同时通话。发微信可以同时与多个人收发微信,但是往往响应会有延迟。
所以,如果我们的业务需要实时得到服务提供方的响应,则应该选择同步通讯(同步调用)。而如果我们追求更高的效率,并且不需要实时响应,则应该选择异步通讯(异步调用)。
同步调用:拓展性差
性能下降
级联失败
异步调用:异步调用方式其实就是基于消息通知的方式,一般包含三个角色:
消息发送者:投递消息的人,就是原来的调用方
消息Broker:管理、暂存、转发消息,你可以把它理解成微信服务器
消息接收者:接收和处理消息的人,就是原来的服务提供方
在异步调用中,发送者不再直接同步调用接收者的业务接口,而是发送一条消息投递给消息Broker。然后接收者根据自己的需求从消息Broker那里订阅消息。每当发送方发送消息后,接受者都 ...