当前位置:网站首页>Project development specification
Project development specification
2022-08-02 07:17:00 【chenlu4ever】
Table of Contents
I. Recommendations for creating table statements
There are always many processes in large companies, record the various specifications (pits) encountered~
Processes in the project
- Requirement review - user story, need to hold requirement review meeting
- Use case review meeting is required after writing test cases
- Submit code needs to bring user story or defect ID to achieve traceability of submitted code
- Code submission requires review
- Write unit tests and pay attention to code coverage
- The release needs to be signed,
SQL Script Specification
I. Recommendations for building a table statement
- The primary key is an auto-incrementing bigint type, preferably the table name _ID or ID
- Keywords are not allowed for attributes
- It must be created by (meaningful user name), created time, modified by, modified time
- crated_time detetime not null default current_timestamp comment 'creation time';
- crated_by varchar(100) not null default comment 'Created by';
Security Issue
One, race condition concurrency
Description: However, high concurrent threads are used to bypass registration restrictions and register a large number of users with the same name.
Solution:
(1) Controlled by the use of locks in the program;
(2) Cooperative control with transactions and locks in the database
(3) Set a higher isolation level for transactions in the database
The above three have pros and cons
Second, file upload verification
Description: The following checks must be added
1. FileUploaded directory permissions are set to non-executable
2. file file extension is judged using a whitelist mechanism
3. Maximum file limit
4. The file name cannot contain / and spaces
6. Userewrite the file name and file path with random numbers
Uuid + timestamp is usually used to rename, the relationship between file location and uploader, just write it into the database
边栏推荐
- PHP Warning: putenv() has been disabled for security reasons in phar
- MySQL高级SQL语句(二)
- APT + Transform to realize multi module Application distributed Application life cycle
- Nacos注册中心的部署与用法详细介绍
- typescript 'props' is declared but its value is never read solution
- HCIP 第二天
- MySQL driver jar package download -- nanny tutorial
- The installation of NPM, CNPM
- The stock price has repeatedly hit new lows, and the real estate SaaS giant is in trouble. How should Mingyuan Cloud transform and save itself?
- MySQL高级学习笔记
猜你喜欢

Launch Space on-premises deployment (local) Beta!
![[数据集][VOC]男女数据集voc格式6188张](/img/72/d3e46a820796a48b458cd2d0a18f8f.png)
[数据集][VOC]男女数据集voc格式6188张

Nacos database configuration
![[数据集][VOC]眼睛佩戴数据集VOC格式6000张](/img/66/37f76d9ce5d5f68d6ea0e18710fa04.png)
[数据集][VOC]眼睛佩戴数据集VOC格式6000张

MySQL 5.7 安装教程(全步骤、保姆级教程)

使用jOOQ 3.14合成外键在视图上写隐式连接

MySQL 5.7 installation tutorial (full-step, nanny-level tutorial)

HCIP 第一天

Technology empowers Lhasa's "lungs", Huawei helps Lalu Wetland Smart Management to protect lucid waters and lush mountains

npm、cnpm的安装
随机推荐
专家见解|经济低迷期把握创新机会的 3 大方法
APP专项测试:流量测试
.NET Static Code Weaving - Rougamo Release 1.1.0
NPM ---- 安装yarn
HCIP 第二天
享年94岁,图灵奖得主、计算复杂性理论先驱Juris Hartmanis逝世
Kind of weird!Access the destination URL, the host can container but not
宝塔+FastAdmin 404 Not Found
MySQL高阶---存储引擎、索引、锁
MySQL high-level statements (1)
Technology empowers Lhasa's "lungs", Huawei helps Lalu Wetland Smart Management to protect lucid waters and lush mountains
[Cartoon] 2021 full score programmer behavior comparison table (latest version)
MySQL经典50道练习题及全网最详细解析
Pagoda+FastAdmin 404 Not Found
Specified URL is not reachable,caused by :‘Read timed out
SphereEx苗立尧:云原生架构下的Database Mesh研发实践
MySQL高级学习笔记
mysql索引失效的常见9种原因详解
【npm install 报错问题合集】- npm ERR! code ENOTEMPTY npm ERR! syscall rmdir
August 2022 plan, focusing on ue4 video tutorials