1JDBC简介JDBC概念JDBC就是使用Java语言操作关系型数据库的一套API。全称:(JavaDataBaseConnectivity)Java数据库连接JDBC本质官方(sun公司)定义的一套操作所有关系型数据库的规则,即接口各个数据库厂商去实现这套接口,提供数据库驱动jar包我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类。使用JDBC优点各数据库厂商使用相同的接口,Java代码不需要针对不同的数据库开发不同的代码。可以随时替换底层的数据库而访问数据库的Java代码基本不变。在需要替换其他数据库时只需要导入相应数据库的驱动jar包即可。JDBC与各关系型数
Http Http(超文本输出协议)是一种分布式、协作式和超媒体信息系统的应用层协议,它通常运行在TCP之上,因特网应用最广泛的便是Http协议,所有www都遵循这个标准。主要用于Web浏览器与Web服务器之间的通信而设计的,但也可以用于其他目的,是一个基于TCP/IP通信协议来传递数据的(HTML文件、图片文件、查询结果等)。简单的来说,是用于获取和请求,客户端和服务端传递数据常用请求方式*get:从服务器获取请求*post:更新、修改数据*delete:删除数据*put:创建数据,和insert对应Https HTTPS(超文本传输安全协议)是一种透过计算机网络进行安全通信的传
Http Http(超文本输出协议)是一种分布式、协作式和超媒体信息系统的应用层协议,它通常运行在TCP之上,因特网应用最广泛的便是Http协议,所有www都遵循这个标准。主要用于Web浏览器与Web服务器之间的通信而设计的,但也可以用于其他目的,是一个基于TCP/IP通信协议来传递数据的(HTML文件、图片文件、查询结果等)。简单的来说,是用于获取和请求,客户端和服务端传递数据常用请求方式*get:从服务器获取请求*post:更新、修改数据*delete:删除数据*put:创建数据,和insert对应Https HTTPS(超文本传输安全协议)是一种透过计算机网络进行安全通信的传
ConcurrentHashMap思考:HashTable是线程安全的,为什么不推荐使用?HashTable是一个线程安全的类,它使用synchronized来锁住整张Hash表来实现线程安全,即每次锁住整张表让线程独占,相当于所有线程进行读写时都去竞争一把锁,导致效率非常低下。1ConcurrentHashMap1.7在JDK1.7中ConcurrentHashMap采用了数组+分段锁的方式实现。Segment(分段锁)-减少锁的粒度ConcurrentHashMap中的分段锁称为Segment,它即类似于HashMap的结构,即内部拥有一个Entry数组,数组中的每个元素又是一个链表,同时
ConcurrentHashMap思考:HashTable是线程安全的,为什么不推荐使用?HashTable是一个线程安全的类,它使用synchronized来锁住整张Hash表来实现线程安全,即每次锁住整张表让线程独占,相当于所有线程进行读写时都去竞争一把锁,导致效率非常低下。1ConcurrentHashMap1.7在JDK1.7中ConcurrentHashMap采用了数组+分段锁的方式实现。Segment(分段锁)-减少锁的粒度ConcurrentHashMap中的分段锁称为Segment,它即类似于HashMap的结构,即内部拥有一个Entry数组,数组中的每个元素又是一个链表,同时
本篇重点:1.HashMap的存储结构2.HashMap的put和get操作过程3.HashMap的扩容4.关于transient关键字5.HashMap,HashTable,ConcurrentHashMap对照6.关于volatile关键字 HashMap的存储结构1.HashMap总体是数组+链表的存储结构,从JDK1.8开始,当数组的长度大于64,且链表的长度大于8的时候,会把链表转为红黑树。2.数组的默认长度是16。数组中的每一个元素为一个node,也就是链表的一个节点,node的数据包含:key的hashcode,key,value,指向下一个node节点的指针。部分源码如下:st
本篇重点:1.HashMap的存储结构2.HashMap的put和get操作过程3.HashMap的扩容4.关于transient关键字5.HashMap,HashTable,ConcurrentHashMap对照6.关于volatile关键字 HashMap的存储结构1.HashMap总体是数组+链表的存储结构,从JDK1.8开始,当数组的长度大于64,且链表的长度大于8的时候,会把链表转为红黑树。2.数组的默认长度是16。数组中的每一个元素为一个node,也就是链表的一个节点,node的数据包含:key的hashcode,key,value,指向下一个node节点的指针。部分源码如下:st
一、简介官网:http://mp.baomidou.com/参考教程:https://baomidou.com/pages/24112f/MyBatis-Plus(简称MP)是一个MyBatis的增强工具,在MyBatis的基础上只做增强不做改变,为简化开发、提高效率而生。二、特性无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑损耗小:启动即会自动注入基本CURD,性能基本无损耗,直接面向对象操作强大的CRUD操作:内置通用Mapper、通用Service,仅仅通过少量配置即可实现单表大部分CRUD操作,更有强大的条件构造器,满足各类使用需求支持Lambda形式调用:通过La
一、简介官网:http://mp.baomidou.com/参考教程:https://baomidou.com/pages/24112f/MyBatis-Plus(简称MP)是一个MyBatis的增强工具,在MyBatis的基础上只做增强不做改变,为简化开发、提高效率而生。二、特性无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑损耗小:启动即会自动注入基本CURD,性能基本无损耗,直接面向对象操作强大的CRUD操作:内置通用Mapper、通用Service,仅仅通过少量配置即可实现单表大部分CRUD操作,更有强大的条件构造器,满足各类使用需求支持Lambda形式调用:通过La
2023-01-09 一、在IDEA中创建Maven版的web工程(1)步骤:①创建一个maven模块,命名为“maven_web_end”,之后需要创建web工程的目录。在“maven_web_end.src.main”下创建“webapp”文件夹(命名必须为webapp,否则识别不了);在“webapp”文件夹下创建“WEB_INF”文件夹;在“WEB-INF”文件夹下创建“web.xml”②在“web.xml”中添加代码xmlversion="1.0"encoding="UTF-8"?>web-appxmlns="http://xmlns.jcp.org/xml/ns/javaee"xm