笔记
文章平均质量分 68
clear0217
这个作者很懒,什么都没留下…
展开
-
redis数据类型(5种)和底层实现
下面我们就学习Redis的数据结构,也是使用Redis要知道的最基础的知识。Redis是一个Key-Value型的内存数据库,它所有的key都是字符串,而value常见的数据类型有五种:string,list,set,zset,hash。Redis的这些数据结构,在底层都是使用redisObject来进行表示。redisObject中有三个重要的属性,分别是。表示保存的value的类型。。常用的命令有常用命令:等。...原创 2022-08-10 20:59:59 · 1123 阅读 · 0 评论 -
SpringMVC的工作流程
HttpMessageConveter: 将请求消息(如Json、xml等数据)转换成一个对象,将对象转换为指定的响应信息数据转换:对请求消息进行数据转换。然后根据该URI,调用HandlerMapping获得该Handler配置的所有相关的对象(包括Handler对象以及Handler对象对应的拦截器),最后以HandlerExecutionChain对象的形式返回给DispatcherServlet(中央处理器);是通过前端控制器controller中的注解来完成请求处理的。...原创 2022-08-06 11:58:30 · 92 阅读 · 0 评论 -
IOC理解总结
控制反转(Inversion of Control,缩写为IoC),是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。其中最常见的方式叫做),还有一种方式叫“依赖查找”(Dependency Lookup)。通过控制反转,对象在被创建的时候,由一个调控系统内所有对象的外界实体将其所依赖的对象的引用传递给它。也可以说,依赖被注入到对象中。就是将对象的创建与对象之间的调用这一过程交给Sping进行管理。Ioc的目的:降低。而IoC的底层就是通过xml解析、工厂模式、反射结合使用进行操作。...原创 2022-08-06 10:59:40 · 586 阅读 · 0 评论 -
Log4j2基本使用
log4j2是log4j 1.x 的升级版,2015年5月,Apache宣布log4j1.x 停止更新。最新版为1.2.17。log4j2参考了logback的一些优秀的设计,并且修复了一些问题,因此带来了一些重大的提升,主要有:1、异常处理:在logback中,Appender中的异常不会被应用感知到,但是在log4j2中,提供了一些异常处理机制。2、性能提升:log4j2相较于log4j 1和logback都具有很明显的性能提升。...原创 2022-08-06 10:20:27 · 382 阅读 · 0 评论 -
CAP介绍
CAP原则又称CAP定理,指的是在一个分布式系统中, Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可得兼。:在分布式系统中的所有数据备份,在同一时刻是否同样的值。(等同于所有节点访问同一份最新的数据副本):保证每个请求不管成功或者失败都有响应。:系统中任意信息的丢失或失败不会影响系统的继续运作。...原创 2022-08-05 20:25:38 · 1163 阅读 · 0 评论 -
ReentrantLock
ReentrantLock是可重入的互斥锁,虽然具有与相同功能,但是会比更加灵活原创 2022-07-25 20:57:49 · 136 阅读 · 0 评论 -
比较并交换 (CAS) 原理
synchronized相当于是悲观锁,CAS相当于是乐观锁。我现在要操作一个共享数据,我很悲观,我认为我操作的过程中,一定会被人给修改,会导致数据错误;我在操作这个数据之前,先给这个数据加了一把锁,synchronized,在我操作这个数据的期间,就只能是我来操作,其他任何人都操作不了。**乐观锁**我感觉在我操作这个数据的过程中,应该不会被人给修改。CAS操作包含三个操作数——、)和。如果内存位置的值与预期原值相匹配,那么处理器会自动将该位置值更新为新值。否则,处理器不做任何操作。...原创 2022-07-25 20:56:09 · 499 阅读 · 0 评论 -
vue03
vue03原创 2022-06-05 11:31:24 · 62 阅读 · 0 评论 -
前端框架基础 vue01
前端框架基础 vue01原创 2022-05-26 14:12:31 · 56 阅读 · 0 评论 -
doGet与doPost
doGet调用用于获取服务器信息,并将其做为相应放回给客户端。经由Web浏览器或通过HTML、JSP直接访问Servlet的URL时,一般用Get调用。原创 2022-07-21 21:01:23 · 275 阅读 · 0 评论 -
MyBaits
持久层框架:完成数据库操作的框架,替代了JDBC的作用原创 2022-07-21 20:48:59 · 180 阅读 · 0 评论 -
Cookie、cookie与session区别
当然,伪造的时候需要注意,直接copycookie文件到cookie目录,浏览器是不认的,他有一个index.dat文件,存储了cookie文件的建立时间,以及是否有修改,所以你必须先要有该网站的cookie文件,并且要从保证时间上骗过浏览器。sessionid是服务器和客户端连接时候随机分配的,如果浏览器使用的是cookie,那么所有数据都保存在浏览器端,比如你登陆以后,服务器设置了cookie用户名,那么当你再次请求服务器的时候,浏览器会将用户名一块发送给服务器,这些变量有一定的特殊标记。......原创 2022-07-19 19:56:55 · 833 阅读 · 0 评论 -
vue基础02
vue基础原创 2022-06-03 16:28:20 · 52 阅读 · 0 评论 -
JDBC调用存储过程、MySQL触发器
加载驱动Class.forName创建数据库连接conn= DriverManager.getConnection创建处理块CallableStatement cs = conn.prepareCall放入参数prepareCall.setString执行存储过程prepareCall.execute()关闭连接无参数的存储过程JDBC编码调用带参数的存储过程定义调用存储过程特殊存储过程参数inoutJDBC调用存储过程包含多个查询结果集JDBC调用MySQL触发器触发器是一种数据库对象,原创 2022-05-17 18:06:23 · 753 阅读 · 0 评论 -
MySQL存储过程
存储过程就是在数据库中定义的一些sql语句的集合,可以直接调用存储过程执行已经定义好的sql语句,从而避免重复编写相同的sql语句的问题。存储过程是一组为了完成特定功能的sql语句的集合,使用存储过程的目的在于将常用的复杂工作预先使用sql语句定义好,并指定一个名称存储起来,数据库管理系统会将存储过程进行编译和优化后存储在数据库服务器中。以后需要使用对应功能时,只需要通过存储过程名称即可直接调用。一个存储过程是一个可编程的函数,在数据库中创建并保存,可以SQL语句和一些特殊控制结构组成常见的sql语句在执行原创 2022-05-16 20:23:34 · 99 阅读 · 0 评论 -
MySQL事务
MySQL事务机制主要用于处理操作量大、复杂度高的数据在MySQL中只有使用了Innodb数据库引擎的数据表和数据库才支持事务事务处理可以用来维护数据的完整性,保证多条SQL语句要么全部执行,要么全部不执行事务用于管理insert、update和delete之类的DML语句,[select语句],其它类型的SQL语句没有事务的概念事务必须满足ACID4个条件:A原子性、C一致性、I隔离性、D持久性原子性:一个事务中的所有操作要么全部完成、要不一个都不做,不会结束在中间某个环节一致性:事务执行结束后数据库的完原创 2022-05-13 15:45:32 · 202 阅读 · 0 评论 -
数据库连接池、操作方法补充
数据库连接是一种关键的、有限的、昂贵的资源,这一点在多用户的应用中体现得尤为突出。对数据库连接的管理能显著影响到整个应用程序的伸缩性和健壮性,影响到程序的性能指标。数据库连接池正是针对这个问题提出来的数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个;释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏。这项技术能明显提高对数据库操作的性能。1、什么是数据库连池连接Connection对象的缓冲区。由连接池的管理原创 2022-05-09 16:31:53 · 378 阅读 · 0 评论 -
函数式接口
函数式接口原创 2022-03-16 17:20:38 · 73 阅读 · 0 评论 -
Lambda表达式、
### 1. Lambda表达式**1.1 介绍**> Lambda表达式是一种没有名字的函数,也可称为闭包,是Java 8 发布的最重要新特性。> 本质上是一段匿名内部类,也可以是一段可以传递的代码。 还有叫箭头函数的…闭包> 闭包就是能够读取其他函数内部变量的函数,比如在java中,方法内部的局部变量只能在方法内部使用,所以闭包可以理解为定义在一个函数内部的函数> 闭包的本质就是将函数内部和函数外部链接起来的桥梁> > **1.2 特点**- 允许把函数作为一个方法原创 2022-02-23 15:58:31 · 145 阅读 · 0 评论 -
集合框架总结
collectionmapCollection与MapJava定义两种集合,这两种集合的顶层接口分别是Collection和Map,这两个接口不能直接被使用,分别代表着两种不同的容器;Collection是存储对象元素的集合,派生出三个子接口,set,list,queue;Map代表的是键值对集合;List接口(1)List接口是允许重复的,指定索引的有序集合;有两个具体实现的类,分别是ArrayList和LinkedList;(2)ArrayList:是实现list接口的可变大小的数组;原创 2022-03-20 11:09:41 · 105 阅读 · 0 评论 -
网络编程基础
网络编程基础原创 2022-02-14 16:58:08 · 54 阅读 · 0 评论 -
JDBC编程
JDBC即java数据库互连,是java语言和数据库之间独立于数据库的连接标准API,JDBC从根本上来说是一种规范,具体的实现需要依赖于具体数据库生产商提供jar包【驱动】,提供了统一的接口用于访问不同的底层数据库,允许使用java语言编写不同的应用程序以访问数据库。为Java语言定义了一个SQL调用级别的统一界面为访问关系型数据库提供了一个标准的界面所谓的JDBC实际上就是一种用于执行SQL语句的API,可以采用一致的方式连接不同的额数据库系统,从而使用标准的SQL语言来存取数据库中的数据[外链图片转存原创 2022-05-08 14:20:36 · 78 阅读 · 0 评论 -
MySQL运算符、5类聚集函数
MySQL运算符主要包括3大类:比较运算符、算术运算符、逻辑运算符特殊操作比较运算符运算符语法说明=a=b如果参与计算的两个操作数相等则为true,否则false!=或者a!=b或者ab如果两个操作数不相等则true[1],否则false[0]<aa>b如果a大于b则true=b大于等于in或者not inin用于判断某个列的取值是否为指...原创 2022-05-02 10:54:33 · 132 阅读 · 0 评论 -
MYSQL基本使用
原创 2022-04-26 18:55:54 · 486 阅读 · 0 评论 -
java知识点总结
Java部分知识点总结原创 2022-04-23 14:56:51 · 130 阅读 · 0 评论 -
线程同步、生命周期
原创 2022-02-10 10:26:24 · 60 阅读 · 0 评论 -
反射机制、优缺点、应用场景
地方哈哈哈哈哈原创 2022-04-21 17:15:04 · 787 阅读 · 0 评论 -
集合collection、Map
原创 2022-04-08 17:18:47 · 66 阅读 · 0 评论 -
分别用Comparable和Comparator两个接口对下列四位同学的成绩做降序排序,如果成绩一样,那 在成绩排序的基础上按照年龄由小到大排序。
public class Test17 { public static void main(String[] args) { Student2 student = new Student2(); List<Student2> list = new ArrayList<>(); list.add(new Student2("1", 20, 90.0F)); list.add(new Student2("2", 22, 90.0F)); list.add(new..原创 2022-04-16 10:09:29 · 1339 阅读 · 0 评论 -
集合练习题
集合练习题1、产生10个1-100的随机数,并放到一个数组中,把数组中大于等于10的数字放到一个list集合中,并打印到控制台public static void main(String[] args) { Random r = new Random(); int[] arr = new int[10]; List<Integer> list = new ArrayList<>(); for (int i = 0; i < arr.length; i++)原创 2022-04-13 20:03:30 · 241 阅读 · 0 评论 -
锁机制及synchronized和Lock
原创 2022-02-07 18:56:33 · 300 阅读 · 0 评论 -
线程的创建方式
原创 2022-01-28 21:09:29 · 1354 阅读 · 0 评论 -
#要求实现一个发牌程序,完成游戏挖坑的发牌处理
原创 2022-04-12 16:21:59 · 2600 阅读 · 0 评论 -
线程的五种转态
原创 2022-02-04 09:53:20 · 331 阅读 · 0 评论 -
IO流练习题
第一题使用绝对路径,在D盘创建一个testIO文件夹,然后再testIO文件中创建一个1.txt文件中;使用相对路径,在当前项目下创建一个testIO文件夹,然后再testIO文件中创建一个2.txt文件中public static void main(String[] args) throws Exception { File file = new File("testIO/2.txt"); // File file1 = new File("D:/testIO/1.txt"); File原创 2022-01-25 14:10:25 · 595 阅读 · 0 评论 -
Java基础之File
File的定义Java文件以抽象的方式代表文件名和目录路径名。该类主要用于文件和目录的创建、文件的查找和文件的删除等。File对象用于指代某个文件或者文件夹 * 需要掌握的方法: * * File f1=new File("data/dd.txt"); //相对路径 * File f2=new File("d:/bb.txt");//绝对路径 public static void main(String[] args) { File f1 = new File("原创 2022-01-12 21:54:04 · 69 阅读 · 0 评论 -
面向对象编程练习(一)
编程练习第一题:案例:声明员工类Employee,包含属性:编号、姓名、年龄、薪资,声明Test01测试类,并在main方法中,创建2个员工对象,并为属性赋值,并打印两个员工的信息。public class Employee { private String code; private String name; private int age; private double salary; @Override public String toString() { // TODO原创 2022-01-10 16:14:00 · 2049 阅读 · 0 评论 -
单例模式和装饰器模式
单例模式懒汉模式**是否 Lazy 初始化:**是**是否多线程安全:**否**实现难度:**易**描述:**这种方式是最基本的实现方式,这种实现最大的问题就是不支持多线程。因为没有加锁 synchronized,所以严格意义上它并不算单例模式。这种方式 lazy loading 很明显,不要求线程安全,在多线程不能正常工作。private Singleton() { } public static Singleton instance = null; public static S原创 2022-01-06 08:53:20 · 101 阅读 · 0 评论 -
接口知识点
原创 2022-01-06 08:19:54 · 36 阅读 · 0 评论 -
多态性知识点
多态性多态性是发送消息给某个对象,让该对象自行决定响应何种行为。通过将子类对象引用赋值给超类对象引用变量来实现动态方法调用多态形成的三个条件:有继承,父类定义方法,子类重写方法父类的引用指向子类的对象Object obj = new Date();可以使用参数传递时多态,也可以直接创建对象时多态多态可以用三个定义和两个方法来总结三个定义分别是父类定义子类构建、接口定义实现类构建和抽象类定义实体类构建两个方法分别是方法重载和方法重写多态分为两种:编译时多态:方法的重原创 2021-12-15 17:12:02 · 477 阅读 · 0 评论