数据校验

软考_计算机组成与结构

我怕爱的太早我们不能终老 提交于 2019-12-02 19:21:15
一,计算机基本工作原理 定点数: 定点数一般小数点是最低位或者最高位,就代表了纯小数和纯整数 移码: 符号位和补码相反,数据位和补码相同 奇偶校验码: 分为奇数校验和偶数校验,校验位补在最后或者最前位,校验码只有一位,只能检测出奇数个位出现了变化的错误,变化偶数个错就检测不出来,只能检错不能纠错; 比如 10100 1(奇数校验),如果发过去变成 10111 1(奇数校验) 不能检测出数据有错 海明码: 给定一个数据,有r个数据位,k个校验位,k的值是满足 2^k>=r+k 的 最小值,比如10010,那么k求出来就等于5,为什么必须满足这个式子,这就和他存储方式有关,他的校验位是按2的幂次存储, 通过 ***1 **1* *1** 1*** 这种形式的所有异或出来就是对应校验位的值 纠错判断:如果后面校验的时候把对应位异或起来不是 0 ,那就代表有错,并且位置就是所有位异或出来的二进制 https://www.cnblogs.com/lesroad/p/8688634.html 具备一位的纠错能力 循环冗余校验: 思维给定一个生成多项式,然后先把加上生成多项式最高次幂位数在原数据后面,然后求出数据对生成多项式的余数,就代表了校验位,具备一位的纠错能力。 https://www.jianshu.com/p/7f4fd7f62de2 来源: https://www.cnblogs

form组件

匆匆过客 提交于 2019-12-02 19:14:58
Form介绍 我们之前在HTML页面中利用form表单向后端提交数据时,都会写一些获取用户输入的标签并且用form标签把它们包起来。 与此同时我们在好多场景下都需要对用户的输入做校验,比如校验用户是否输入,输入的长度和格式等正不正确。如果用户输入的内容有错误就需要在页面上相应的位置显示对应的错误信息.。 Django form组件就实现了上面所述的功能。 总结一下,其实form组件的主要功能如下: 生成页面可用的HTML标签 对用户提交的数据进行校验 保留上次输入内容 普通方式手写注册功能 views.py # 注册 def register(request): error_msg = "" if request.method == "POST": username = request.POST.get("name") pwd = request.POST.get("pwd") # 对注册信息做校验 if len(username) < 6: # 用户长度小于6位 error_msg = "用户名长度不能小于6位" else: # 将用户名和密码存到数据库 return HttpResponse("注册成功") return render(request, "register.html", {"error_msg": error_msg}) login.html <!DOCTYPE

ModelSerializer(重点) 基表 测试脚本 多表关系建外键 正反查 级联 插拔式连表 序列化反序列化整合 增删查 封装response

筅森魡賤 提交于 2019-12-02 16:22:21
一、前戏要做好 配置:settings.py #注册drf INSTALLED_APPS = [ # ... 'api.apps.ApiConfig', 'rest_framework', ] ​ #配置数据库 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'dg_proj', 'USER': 'root', 'PASSWORD': '123', } } """ 在任何(根或者app)的__init__文件中声明数据库 import pymysql pymysql.install_as_MySQLdb() """ #国际化 提示时间等从英语转化为汉字 LANGUAGE_CODE = 'zh-hans' TIME_ZONE = 'Asia/Shanghai' USE_I18N = True USE_L10N = True USE_TZ = False ​ # 开放图像路经,后面还有他用,这个配置和静态文件路径配置非常相似,暴露图像资源 MEDIA_URL = '/media/' MEDIA_ROOT = os.path.join(BASE_DIR, 'media') 路由 # 主路由 from django.conf.urls import url, include from

Form和ModelForm组件1

ε祈祈猫儿з 提交于 2019-12-02 12:55:29
Form介绍 我们之前在HTML页面中利用form表单向后端提交数据时,都会写一些获取用户输入的标签并且用form标签把它们包起来。 与此同时我们在好多场景下都需要对用户的输入做校验,比如校验用户是否输入,输入的长度和格式等正不正确。如果用户输入的内容有错误就需要在页面上相应的位置显示对应的错误信息.。 Django form组件就实现了上面所述的功能。 总结一下,其实form组件的主要功能如下: 生成页面可用的HTML标签 对用户提交的数据进行校验 保留上次输入内容 普通方式手写注册功能 views.py # 注册 def register(request): error_msg = "" if request.method == "POST": username = request.POST.get("name") pwd = request.POST.get("pwd") # 对注册信息做校验 if len(username) < 6: # 用户长度小于6位 error_msg = "用户名长度不能小于6位" else: # 将用户名和密码存到数据库 return HttpResponse("注册成功") return render(request, "register.html", {"error_msg": error_msg}) login.html <!DOCTYPE

Form和ModelForm组件

戏子无情 提交于 2019-12-02 12:55:23
Form介绍 我们之前在HTML页面中利用form表单向后端提交数据时,都会写一些获取用户输入的标签并且用form标签把它们包起来。 与此同时我们在好多场景下都需要对用户的输入做校验,比如校验用户是否输入,输入的长度和格式等正不正确。如果用户输入的内容有错误就需要在页面上相应的位置显示对应的错误信息.。 Django form组件就实现了上面所述的功能。 总结一下,其实form组件的主要功能如下: 生成页面可用的HTML标签 对用户提交的数据进行校验 保留上次输入内容 普通方式手写注册功能 views.py # 注册 def register(request): error_msg = "" if request.method == "POST": username = request.POST.get("name") pwd = request.POST.get("pwd") # 对注册信息做校验 if len(username) < 6: # 用户长度小于6位 error_msg = "用户名长度不能小于6位" else: # 将用户名和密码存到数据库 return HttpResponse("注册成功") return render(request, "register.html", {"error_msg": error_msg}) login.html <!DOCTYPE

九、页面数据校验

℡╲_俬逩灬. 提交于 2019-12-02 12:05:15
以一个student学生表为例子 class Student(models.Model): name = models.CharField(verbose_name='名称',max_length=10) phone = models.CharField(max_length=11,unique=True,verbose_name='手机号') money = models.FloatField(verbose_name='钱',default=0,null=True) class Meta: verbose_name = '学生表' verbose_name_plural = verbose_name db_table = 'student' def __str__(self): return self.name 校验代码实现views.py from django import forms #校验 #写一个校验的类,用于校验数据 class StudentForm(forms.Form): # 校验的类 name = forms.CharField(min_length=2,max_length=10,required=True) # required=True 必传,默认就是 phone = forms.CharField(min_length=11,max_length

Java后台数据校验validator

久未见 提交于 2019-12-02 11:38:49
jar包 <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-validator</artifactId> <version>5.1.3.Final</version> </dependency> 在实体类上加注解 package com.mytaotao.sso.bean; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.Table; import org.hibernate.validator.constraints.Length; import com.fasterxml.jackson.annotation.JsonIgnore; import com.mytaotao.bean.BaseTime; @Table(name="tb_users") public class Users extends BaseTime{ @Id @GeneratedValue(strategy=GenerationType.IDENTITY) private Long id;

jwt token认证

夙愿已清 提交于 2019-12-02 06:41:39
目录 1、drf-jwt手动签发与校验 2、drf小组件:过滤、筛选、排序、分页 => 针对与群查接口 jwt_token源码分析(入口) 签发token源码分析 校验token源码分析 手动签发token 签发源码小总结: 手动校验token 校验源码小总结 1、drf-jwt手动签发与校验 2、drf小组件:过滤、筛选、排序、分页 => 针对与群查接口 jwt_token源码分析(入口) rest_framework_jwt --> views.py --> ObtainJSONWebToken(JSONWebTokenAPIView) class ObtainJSONWebToken(JSONWebTokenAPIView): serializer_class = JSONWebTokenSerializer 然后到父类中JSONWebTokenAPIView的post方法 def post(self, request, *args, **kwargs): #从get_serializer获取serializer serializer = self.get_serializer(data=request.data) ........ 点击get_serializer def get_serializer(self, *args, **kwargs):

springMVC使用JSR303数据校验

不羁的心 提交于 2019-12-02 06:27:48
JSR303注解 hibernate validate是jsr 303的一个参考实现,除支持所有的标准校验注解外,他还支持扩展注解 spring4.0拥有自己独立的数据校验框架,同时支持jsr 303标准的校验框架。 spring在进行数据 绑定时,可通过调用校验框架完成数据校验工作。在springMVC中,可直接通过注解驱动的方式进行数据校验。 spring的localvalidatorFactoryBean既实现了spring的validator接口,也实现了jsr 303的validate接口。只要在spring容器中定义了一个LocalValidateFactoryBean,即可将注入到需要的数据校验bean中。 spring本身并没有提供jsr 303的实现,所以必须将jsr 303的实现者jar包放在类路径下。 在maven配置文件中加入hibernate validator的依赖包。 <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-validator</artifactId> <version>5.4.1.Final</version> </dependency> <mvc:annotation-driven></mvc:annotation

jwt认证

不羁的心 提交于 2019-12-02 05:44:58
drf-jwt插件 官网 https://github.com/jpadilla/django-rest-framework-jwt 安装 >: pip3 install djangorestframework-jwt 登录 - 签发token:api/urls.py # ObtainJSONWebToken视图类就是通过username和password得到user对象然后签发token from rest_framework_jwt.views import ObtainJSONWebToken, obtain_jwt_token urlpatterns = [ # url(r'^jogin/$', ObtainJSONWebToken.as_view()), url(r'^jogin/$', obtain_jwt_token), ] 认证 - 校验token:全局或局部配置drf-jwt的认证类 JSONWebTokenAuthentication from rest_framework.views import APIView from utils.response import APIResponse # 必须登录后才能访问 - 通过了认证权限组件 from rest_framework.permissions import IsAuthenticated from