!(我太喜欢qt了)
《这该死的qt》
最开始我看着老师给的word文档,那边mysql版本是8.0,我是5.7,那边qt版本是6.2.3,我是5.14.2。差别这么大?应该不能跟着做吧。
然后先看了看波波给的博客,四个人中,就我出现了问题,其他人都正确连通了。这个问题貌似是说,整个百度没有什么解决方法,好像是说1: error: cannot open output file F:\Git\plugins\sqldrivers\qsqlmysql.dll 有问题还是咋滴。可是qt和我自己装的Git有什么关系啊?
当时发现我的mysql版本是5.7,博客里的是5.5,我寻思着这版本差的不大吧?难道是qt的问题?
当时就准备重装下qt
前面的是前一天晚上花了一个多小时
到了第二天,我先重装了两遍qt,发现依然是同一个原因,于是继续百度找解决办法,弄着弄着,报错往我不可掌控的方向发展下去了,我眼看远走越远,准备换一条路。
既然mysql版本不匹配,那我重装下mysql吧
后来就把mysql5.7换成了mysql8
好吧,继续,还是有问题
这时候再看看老师给word
当时觉得我俩的qt版本 ...
纠错编码:海明码
分为4步
第一步 确认校验码位数r
第二步 确定校验码和数据的位置
为什么是10为数据位?因为4位校验码+6位信息位=10位
校验码放到2的几次方的位置,其他的地方按顺序放已知的信息位
第三步 求出校验码的值一
数据位是1,那么二进制就是0001,至于二进制有几位,取决于最后一位数,比如这边最后一位是10,它的二进制为1010,四位,所以二进制需要四位
二
如何求校验码的值:
我们知道每一位校验位都可以校验几位数据,对于P1来说,它可以校验哪几位呢?
它数据所对应的2进制位 0001,”1”所在的位置是末尾,也就是第一位
那么我们就看接下来,还有哪些位的第一位是1,即D1,D2,D4,D5
因此,P1的代码可以校验的数据就是P1,D1,D2,D4,D5
如何处理这几位数据呢?
只需要让所有的要校验的位异或为0,如上图
同理:
P2所对应的2进制位第2位是1,那么我们就去找谁的第2位是1,即D1,D3,D4,D6
因此,P2的代码可以校验的数据就是P2,D1,D3,D4,D6
以此类推…
以下为具体步骤
第四步 检测并纠错
↓↓↓↓↓↓↓ ...
关于java的Calendar类的bug
这篇文章废话比较多,想看bug和本人的逆天操作的话,可以直接去看“解决办法”和“结论”部分
起源一切的一切都起源于软测这一道看似无比简单的题
简单来说就是输出20221019这样的格式,然后输出是星期几
错误的代码这是我最开始写的错误的代码
import java.util.*;
public class day {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
while (in.hasNext()) {
System.out.println("输入任意1900从年到2400年之间的8位数的一个日期(日期格式例子:20221014)");
String next = in.next();
char[] chars = next.toCharArray();
...
工作流workflow
工作流workflow状态机解决流程问题工作流:一个可以处理复杂情况的状态机
例如,员工请假这个流程,首先员工请假提交申请,假设有项目经理进行审批,审批有两种结果:通过或者拒绝。
实现上面这个需求:
创建一张请假表,表中有员工id,请假的天数,请假的理由,项目经理的id,请假的状态status
当员工请假的时候,就自动向这张表中添加记录
然后,当项目经理登录到OA的时候,就来这张表查询自己需要的请假申请,查到之后,可以选择批准或者拒绝
接下来,员工登录之后,就可以查到自己的请假申请的审批结果
在这样的实现思路中,请假的流程我们是通过status这个字段控制的。例如:
status 0 代表待审批
1 代表审批通过
2 代表拒绝
上面这个例子,status就是状态码,通过这个子弹的值来控制流程的状态,这个方式我们可以称之为使用状态机来解决流程问题,但是这种思路只能解决非常简单的流程问题。
一些复杂的流程报销审批的流程
在这个流程中,已经没法使用status去描述这个报销走到哪一步了。如果非要用status,namestatus可能会有很多个取值 。
笔记本电脑生产流程
这个 ...
SpringSecurity
SpringSecurity完成基于数据库的认证(登录)
application.yml配置
spring:
datasource:
name: test
url: jdbc:mysql://localhost:3306/javaboy?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
username: root
password: wqeq
# 使用druid数据源
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.cj.jdbc.Driver
mysql,mybatis,druid依赖必须有
<dependency>
<groupId>org.mybatis.sp ...
多线程
线程*是程序中执行的线程。 Java虚拟机允许应用程序同时执行多个执行线程。
每个线程都有优先权。
创建一个新的执行线程有两种方法。 一个是将一个类声明为Thread的子类。 这个子类应该重写run类的方法Thread 。 然后可以分配并启动子类的实例。
继承Thread类简单示例
//创建线程方式一:继承Thread类,重写run()方法,调用start开启线程
//总结:注意,线程开启不一定立即执行,由cpu调度执行
public class TestThread1 extends Thread {
@Override
public void run() {
//run方法线程体
for (int i = 0; i < 20; i++) {
System.out.println("我在看代码---"+i);
}
}
public ...
MybatisPlus
分页功能配置和依赖spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
password: wqeq
type: com.alibaba.druid.pool.DruidDataSource
url: jdbc:mysql://localhost:3306/test08?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
username: root
mybatis-plus:
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
注意:org.apache.ibatis.logging.stdout.StdOutImpl 是加入日志功能,可以返回sql语句供我们查看
maven依赖:
<!-- 引入 ...
自定义多数据源
项目地址
准备依赖:
Web
Spring Web
SQL
MyBatis Framework
MySQL Driver
关于@Retention注解作用可以看这个
@Target:注解的作用目标
配置文件
# 数据源配置
spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource
driverClassName: com.mysql.cj.jdbc.Driver
ds:
# 主库数据源
master:
url: jdbc:mysql://localhost:3306/test01?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
use ...
点餐系统学习随记
流程分析(小程序后端)
下单模块在首页进行扫码,入桌,然后会跳转到buy页面,点击选好了,如果没有问题的话,则跳转到confirmOrder页面,点击最下面的总计xxx,弹窗出现。经过一系列判断和对数据的处理,向/userOrder/create接口发送请求,对应后端的WxOrderUtils的createOrder方法
me页面
me界面,点击注册用户,跳转到change界面
点击提交修改按钮,对数据进行处理后,向/user/save接口发送请求。对应后端的WxUserController
me页面,点击会员充值,跳转到vip页面
点击充值一、二年向/user/payVip接口发送请求,对应后端的WxUserController
在app.js里,通过向/use,r/getUserInfo接口发送请求,拿到用户的数据,对应后端的WxUserController
me界面,点击我的订单,跳转到myOrder页面
根据顶上的待上餐、已取消、待评价、已完成四个选项得到对应的orderStatus属性并请求/userOrder/listByStatus接口,对应后端的 ...
2022操作系统复习
操作系统引论定义
os是配置在计算机硬件上的第一层软件,是对硬件系统的首次扩充
主要作用提高利用率并为用户和应用程序提供一个简单的接口,便于用户使用
大量的应用软件,都直接依赖于操作系统的支持,取得它所提供的服务
os的目标
方便性
有效性
可扩充性
开放性
os的作用
作为用户和计算机硬件系统之间的接口
作为计算机系统资源的管理者,资源分为【处理机、存储器、IO设备、文件(数据和程序)】
实现了对计算机资源的抽象
操作系统的特征基本特征
并发
共享
虚拟
异步
主要功能处理机管理功能
进程控制
进程同步
进程通信
调度
存储器管理功能
内存分配
内存保护
地址映射
内存扩充
设备管理功能
缓冲管理
设备分配
设备处理
文件管理功能
文件存储空间管理
目录管理
文件读写管理和保护
os和用户之间的接口
用户接口
程序接口
进程的描述和控制程序顺序执行时的特征
顺序性
封闭性
可再现性
并发执行的特征
间断性
失去封闭性
不可再现性
进程和程序的区别
进程
程序
动态
静态
是程序的执行
是有序代码的集合
独立的运行单位,能与其他的进程并发执行 ...