源码解析MyBatis Sharding-Jdbc SQL语句执行流程详解(文末有流程图)

本文将详细介绍Mybatis SQL语句执行的全流程,本文与上篇具有一定的关联性,建议先阅读该系列中的前面3篇文章,重点掌握Mybatis Mapper类的初始化过程,因为在Mybatis中,Mapper是执行SQL语句的入口,类似下面这段代码: @Servi
分类: 编程语言 发布时间: 11-19 22:01 阅读次数: 0

66 Django -- Form组件

目录 Form组件 Form组件使用以及校验 RegexValidator验证器: 自定义函数验证(re模块): 局部钩子: 全局钩子: 批量添加样式: 图书馆系统添加书籍: ModelForm Form组件 在很多场景需要对用户的输入做校验,比如校验用户是否输入,输入的长度和格式等正不正确。如果用户输入的内容有错误就需要在页面上相应的位置显示对应的错误信息.。 Django form组件就实现了上面所述的功能。 Form组件的主要功能: 1. 生成html标签 2. 保留原来的数据 3. 检
分类: 其他 发布时间: 11-19 22:01 阅读次数: 0

羞,Java 字符串拼接竟然有这么多姿势!

二哥,我今年大二,看你分享的《阿里巴巴 Java 开发手册》上有一段内容说:“循环体内,拼接字符串最好使用 StringBuilder 的 append 方法,而不是 +号操作符。”到底为什么啊,我平常一直就用的‘+’号操作符啊!二哥有空的时候能否写一篇文章分
分类: 编程语言 发布时间: 11-19 22:01 阅读次数: 0

第三方登录绑定CSRF漏洞利用

作者:pmiaowu 文章:https://www.yuque.com/pmiaowu/web_security_1/sq87w6 这里需要使用到一个微博账号与两个某厂商账号 条件: 1、微博账号:182**77 (攻击者) 2、某厂商账号A:33*[email protected] (攻击者) 3、某厂商账号B:28*[email protected] (无辜受害者) 利用方法: 步骤1:攻击者-登录微博 步骤2:攻击者-使用某厂商账号A 登录 从上面看其实有很多绑定账号快捷登录的方法,但是微博绑定的用户肯定是比较少的
分类: 其他 发布时间: 11-19 22:01 阅读次数: 0

练习 : 数据类型之字典

1.声明一个字典保存一个学生的信息,学生信息中包括: 姓名、年龄、成绩(单科)、电话、性别(男、女、不明) student1 = {'name': '张三', 'age': 20, 'grade': 80, 'tel': '13888888888', 'gender': '男'} 2.声明一个列表,在列表中保存6个学生的信息(6个题1中的字典) students = [ {'name': '无名', 'age': 12, 'grade': 60, 'tel': '13888888881
分类: 其他 发布时间: 11-19 22:01 阅读次数: 0

vue--npm install只许成功,不许失败

npm安装时出现run `npm audit fix` to fix them, or `npm audit` for details 方案一:       1、如果你的项目里存在 package-lock.json 文件,删除它。并且删除 node_modules。然后再 npm install。       2、第一步不行的话。运行 npm cache clean --force 或者 npm cache verify 。然后再 npm install。       3、如果上面的都不
分类: 其他 发布时间: 11-19 22:01 阅读次数: 0

单例模式-静态内部类实现及原理剖析

  以我的经验为例(如有不对欢迎指正),在生产过程中,经常会遇到下面两种情况:   1.封装的某个类不包含具有具体业务含义的类成员变量,是对业务动作的封装,如MVC中的各层(HTTPRequest对象以Threadlocal方式传递进来的)。   2.某个类具有全局意义,一旦实例化为对象则对象可被全局使用。如某个类封装了全球的地理位置信息及获取某位置信息的方法(不考虑地球爆炸,板块移动),信息不会变动且可被全局使用。   3.许多时候整个系统只需要拥有一个的全局对象,这样有利于我们协调系统整体
分类: 其他 发布时间: 11-19 22:01 阅读次数: 0

springBoot+CXF开发webservice服务

前言 最近一直开发一个webservice的接口,由于是第一次接触webservice,而且还是在结合spingBoot和CXF框架的情况下开发的,所以刚开始有点懵逼,遇到了各种问题。但是,终究还是完成了,以此分享一下我的开发过程。 开发流程 添加CXF依赖
分类: 编程语言 发布时间: 11-19 22:01 阅读次数: 0

练习 : 数据类型之元组

1、不用count函数,统计出列表中每个元素出现的次数 list1 = [1, 3, 0, 9, 6, 3, 0, 5, 1, 3] n = str(input('请输入想知道重复次数的元素:')) t = 0 for ele in list1: if n == str(ele): t += 1 print(n,'元素出现的次数是',t,'次') 2、不用extend函数,一次性添加一个序列的所有值到列表 list1 = [2,5,'hello',True,-3] tu
分类: 其他 发布时间: 11-19 22:01 阅读次数: 0

面试官:Redis 这些我必问

分布式缓存 缓存好处:高性能 + 高并发 高性能(常用) 数据库查询耗费了800ms,其他用户对同一个数据再次查询 ,假设该数据在10分钟以内没有变化过,并且 10 分钟之内有 1000 个用户 都查询了同一数据,10 分钟之内,那 1000 个用户,每个人查
分类: 编程语言 发布时间: 11-19 22:01 阅读次数: 0

剑指offer-对称二叉树-树-python

题目描述 请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。 # -*- coding:utf-8 -*- # class TreeNode: # def __init__(self, x): # self.val = x # self.left = None # self.right = None class Solution: def isSymmetrical(se
分类: 其他 发布时间: 11-19 22:01 阅读次数: 0

第九个知识点:香农(Shannon)定义的熵和信息是什么?

第九个知识点:香农(Shannon)定义的熵和信息是什么 这是计算机理论的最后一篇.我们讨论信息理论的基础概念,什么是香农定义的熵和信息. 信息论在1948年被Claude E.Shannon建立.信息论最开始被应用于信号处理,但是经过几十年的发展,它现在已经被应用到各个学科了.这篇文章尝试简洁的介绍两个基础的概念,熵(entropy)和信息(information).如果你对这个感兴趣,我个人推荐你在这里学习更多.[1] 熵 熵是衡量一个或者多个变量不确定性的度量. 假设我们调查人们打开浏览
分类: 其他 发布时间: 11-19 22:01 阅读次数: 0

面试官:Netty这些我必问

Netty 最流行的 NIO 框架,由 JBOSS 提供的,整合了FTP,SMTP,HTTP协议 API 简单 成熟稳定 社区活跃· 经过大规模验证(互联网、大数据、网络游戏、电信通信)Elasticsearch、Hadoop 子项目 avro项目、阿里开源
分类: 编程语言 发布时间: 11-19 22:01 阅读次数: 0

插件 chrome 下载(内网)

网址:http://chromecj.com/list/
分类: 其他 发布时间: 11-19 22:01 阅读次数: 0

面试官:消息队列这些我必问

消息队列连环炮 项目里怎么样使用 MQ 的? 为什么要使用消息队列? 消息队列有什么优点和缺点? kafka,activemq,rabbitmq,rocketmq 都有什么去呗? 如何保证消息队列高可用? 如何保证消息不被重复消费? 如何保证消息的可靠性传输
分类: 编程语言 发布时间: 11-19 22:01 阅读次数: 0

20182314 2019-2020-1 《数据结构与面向对象程序设计》第9周学习总结

用脚写代码的残疾人
分类: 其他 发布时间: 11-19 22:01 阅读次数: 0

PTA(Basic Level)1039.到底买不买

小红想买些珠子做一串自己喜欢的珠串。卖珠子的摊主有很多串五颜六色的珠串,但是不肯把任何一串拆散了卖。于是小红要你帮忙判断一下,某串珠子里是否包含了全部自己想要的珠子?如果是,那么告诉她有多少多余的珠子;如果不是,那么告诉她缺了多少珠子。 为方便起见,我们用[0-9]、[a-z]、[A-Z]范围内的字符来表示颜色。例如在图1中,第3串是小红想做的珠串;那么第1串可以买,因为包含了全部她想要的珠子,还多了8颗不需要的珠子;第2串不能买,因为没有黑色珠子,并且少了一颗红色的珠子。 输入格式: 每个输
分类: 其他 发布时间: 11-19 22:01 阅读次数: 0

练习 : 数据类型之列表

1.已知一个数字列表,求列表中心元素。 list1 = [1, 3, 70, 9, 37, 5] length1 = int(len(list1)) if length1 & 1 == 1: print('中心元素为:',list1[int((length1 - 1) / 2)]) else: print('中心元素为:',list1[int(length1 / 2 -1)],list1[int(length1 / 2)]) 2.已知一个数字列表,求所有元素和。 list1 =
分类: 其他 发布时间: 11-19 22:01 阅读次数: 0

第70天python学习TCP粘包解决方案struct模块

接下来我们先来介绍下可以解决黏包的模块的用法: struct python中的struct模块就提供了这样的机制,该模块的主要作用就是对python基本类型值与用python字符串格式表示的C struct类型间的转化(This module performs conversions between Python values and C structs represented as Python strings.)。stuct模块提供了很简单的几个函数,下面写例子。 两个函数:pack()、
分类: 其他 发布时间: 11-19 22:01 阅读次数: 0

java性能优化之java web项目性能优化

1、概述 对于比较大的java web工程,如果出现内存溢出,操作响应时间较长,可以看一下我的教程,这是我自己的思路和想法,大家一起学习。接下来就会列举出关于性能上常常出现的问题和解决思路和方法 2、问题及解决思路 2.1 内存溢出: 项目比较大的时候,我们操作一定时间就会报内存溢出的问题,这是常见的问题。遇到这个问题,我觉得,首先是看代码时候有错误或者死循环的,如果项目比较大并且开发完成的差不多了,显然这个方法是很费时间的,最直接有效的方法是增加jvm的内存大小,不用担心,下面会一步一步的来
分类: 其他 发布时间: 11-19 22:01 阅读次数: 0