1.json工具之间的比较
2.任务调度
3.消息队列说明
4.ASCII
5.redis锁(

)
6.并发问题
秒杀的场景,可以进行多级淘汰。
1 、秒杀之前几天,先把“预约”的账号洗一遍,留下预售数量 200%左右的账号,其他账号秒杀当天的请求直接抛弃。
2 、秒杀当场,按照请求缓存队列随机枪毙请求,剩下 110%。进入下单流程。
3 、最终下单再进行数据库严格校验。锁定账号——货品的对应信息
)
7.input限制输入->大于零(<input οnkeyup="if(this.value.length==1){this.value=this.value.replace(/[^1-9]/g,'')}else{this.value=this.value.replace(/\D/g,'')}" onafterpaste="if(this.value.length==1){this.value=this.value.replace(/[^1-9]/g,'')}else{this.value=this.value.replace(/\D/g,'')}">)
8.ajax提交bean接收(
)
9.正则匹配
(?<=id=)[^,]----》匹配id=,并获取id=到逗号之间的值,?<=:之后,?=:之前,?<!就是不匹配的内容里,匹配的内容
10.对collect1进行分页
List<CouponVo> couponVoList = new ArrayList<>();
int currIdx = (page > 1 ? (page -1) * pageSize : 0);
for (int i = 0; i < pageSize && i < collect1.size() - currIdx; i++) {
CouponVo couponVo = collect1.get(currIdx + i);
couponVoList.add(couponVo);
}
11.jpa关系策略
CascadeType.PERSIST 给当前设置的实体操作另一个实体的权限 保存子实体
CascadeType.REMOVE 与它有映射关系的实体也会跟着被删除
CascadeType.MERGE 级联更新 新增或者变化
CascadeType.DETACH 撤销所有相关的外键关联
CascadeType.REFRESH A对订单和关联的商品进行修改,同时,B也进行相同操作,但是B先一步比A保存了数据,那么当A保存数据的时候,就需要先刷新订单信息及关联的商品信息后,再将订单及商品保存
CascadeType.ALL 所有
12.linux常用操作
查找被占用的端口netstat -tln | grep 8000 ps -aux lsof -i:8000 ps -aux | grep java 内存free -h
kill掉该进程kill -9 PID
tail -f -n 200 aomapp.log
nohup java -jar $APP_NAME >hyt_web.log 2>&1 &
chmod 777 ./spring-boot-hyt-app.sh先给脚本授权在启动
top -u java
VIRT:进程占用的虚拟内存
RES:进程占用的物理内存
SHR:进程使用的共享内存
netstat -nupl (UDP类型的端口)
netstat -ntpl (TCP类型的端口)
13.mysql连表
14.mybatis-plus函数