Java
文章平均质量分 69
2a3b4c
2a3b4c
展开
-
Interface 中 的 default 方法、static方法
之前学习/工作中一直没特别注意过Interface 中 的 default 方法、static方法,一早上来偶然看见做以记录。原创 2023-08-08 10:39:03 · 229 阅读 · 0 评论 -
ByteBuffer
五. 调用compact方法切换为写模式,在不清空缓冲区的前提下,继续写如信息,将未读取的数据前移,postion指针置为未读取数据的末尾下标,limit置为capacity。划重点:由此可见,读写模式由于共用相同的position等参数,因此,需要切换模式,才能正确的读写。例如 存在接收到的数据是不完整的,无法进行读操作,那么需要在原来的基础上,继续写数据怎么办?(先写后读)切换后,需要调用clear()方法进行重置,才能进行一轮新的写读.写模式下,写数据时,position会不断前移。原创 2023-08-01 17:59:13 · 245 阅读 · 0 评论 -
Redis3
文章目录大小切换数据库查看大小查看所有的key清空当前数据库清空全部数据库6379默认端口号redis 单线程作用redis key基本命令5大基本数据类型大小默认有16个数据库使用的是第0个切换数据库select [n] n是几就切换到第几个查看大小DBSIZE 仅仅查的是当前数据库大小查看所有的keykeys *清空当前数据库flushdb清空全部数据库flushall6379默认端口号哈哈哈哈redis 单线程操作很快基于内存操作cpu不原创 2020-09-27 09:40:26 · 277 阅读 · 0 评论 -
用Idea打jar包时显示:红色乱码+archetypeCatalog=internal
解决方法:File---Setting---Maven---Runner中的VM Options中的archetypeCatalog=internal替换成-Dfile.encoding=GB2312即可。原创 2020-04-22 12:29:29 · 561 阅读 · 0 评论 -
Java对Mysql实现增删改查
Java对mysql数据库的增删改查主要分为三步1:建立客户端就相当于MySQL是服务器端,我们在Java端建立一个客户端,与服务器端相连接即可。2:准备sql语句3:执行sql语句4:资源清理public class Mysql { public static void main(String[] args) throws SQLException { //1...原创 2018-12-18 19:38:08 · 1769 阅读 · 0 评论 -
Web服务器
文章目录Web服务器1.分类2.nginx(1)目录结构(2)启动nginx(3)检查nginx是否启动(4)访问Web浏览器(5)对nginx的常见命令3.tomcat(apache公司 用java语言编写的)(1)目录结构(2)停止方式(3)配置tomcat:(4)管理虚拟主机4.java开发web应用程序Servlet服务器端的程序JSP(java server page)5.maven表单...原创 2019-01-11 10:56:01 · 152 阅读 · 0 评论 -
Servlet和JSP生成动态图片验证码
这是由Servlet和jsp代码生成的图片验证码主要功能是可以实现在网页上生成一个图片验证码,通过点击事件可以进行动态的切换。Servlet2.java文件package MyServlet;import javax.imageio.ImageIO;import javax.servlet.ServletException;import javax.servlet.annotatio...原创 2019-01-14 10:56:32 · 271 阅读 · 0 评论 -
Servlet 与 JSP
文章目录Servlet 与 JSPServlet1.post请求中的汉字会有乱码问题2.request重要方法3.一个请求分为几个部分Get请求分为两个部分Post请求分为三个部分4.响应(1)状态码(2)响应头(3)响应体5.返回一个动态图片6.请求转发(1)servlet请求转发至jsp(2)作用域传参Servlet 与 JSPServlet1.post请求中的汉字会有乱码问题原因:...原创 2019-01-14 11:31:12 · 134 阅读 · 0 评论 -
spring devtools
spring devtools是一种开发工具, 让修改代码快速生效, 提高服务器启动速度(1)要使用spring devtools 首先要配置pom文件<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools&...原创 2019-02-27 21:25:30 · 1474 阅读 · 0 评论 -
JSP底层原理
文章目录jsp底层原理新的方式就的生成动态内容的方式1)`&lt;% 代码 %&gt;`2)`&lt;%= 表达式%&gt;`3)`&lt;%! 代码 %&gt;`4)注释 `&lt;%-- 注释内容 --%&gt;`5)`&lt;%@ 指令名 %&gt;`jsp底层原理在第一次发送请求时,会把jsp文件转义为java(servlet)代码,并原创 2019-01-15 21:43:39 · 860 阅读 · 0 评论 -
Java学习之Stream
Stream【1】Stream的引入我们先提出问题:一般情况下我们要从集合中找出所有偶数,并返回一个由所有偶数构成的集合。按照我们之前的方法会怎样解决呢?小北一开始是这样做的:public class Leadinto { public static void main(String[] args) { //一般情况下我们要从集合中找出所有偶数,并返回一个由所有...原创 2018-12-03 23:18:02 · 157 阅读 · 1 评论 -
Java学习之反射
#反射【1】反射的定义:在运行期间可以获取对象的类型,类型的方法,类型的属性,类型的构造方法等,让对象可以认识到自身的结构。【2】方法:(1)获取对象的类型(获取类对象)方法1:Object.getClass()(返回类型包括类名包名等)方法2:Class.forName(&amp;quot;类名)(和方法一的返回类型一致)方法3:类名.class()//反射 //【1】获取对象的...原创 2018-12-03 19:42:45 · 597 阅读 · 0 评论 -
Java学习之设计模式
写在前面: 设计模式(设计模式) 概述:编程中的一些套路,让我们的代码实现特定的目的,结构上更加优秀有23种【1】单例模式(singleton)的 (1)定义:虚拟机中这个类只有一个实例(对象) 方法1):饿汉式单例(一开始就创建好) 过程:A:让构造方法私...原创 2018-11-27 12:51:09 · 119 阅读 · 0 评论 -
Java学习之枚举类(enum)
【1】枚举类的语法 public enumeration 枚举类名{ }【2】枚举类的应用场景 当对象的个数已经固定,并且有限时,使用。例如:性别,星期等public enum Sex{ Male,FMale; //默认调用的是空参构造}public class EnumDemo { publi...原创 2018-11-26 22:29:32 · 207 阅读 · 0 评论 -
JAVA学习之TCP/IP协议
【1】TCP/IP协议概述TCP协议: 网络传输控制协议IP协议: 网络地址协议,(作用定位在网络上计算机) TCP/IP采用的是如下【3】的四层结构,每一层都依靠它的下一层所提供的协议来完成自己的需求。我们大部分时间工作在应用层。【2】TCP/IP协议栈概述 ...原创 2018-11-26 22:04:34 · 1451 阅读 · 0 评论 -
Java学习之线程与线程池
【1】线程的状态(1)新建:线程被创建出来。(2)就绪:线程有执行资格,但无执行权(未抢到时间片)。(3)运行:线程有执行资格有执行权。(4)阻塞:线程无执行资格,无执行权。(3)死亡:线程无执行资格无执行权,线程死亡,等待回收。【2】线程的状态转换下面是线程的状态转换图: 首先通过new 一个线程-------------经过start()方法---...原创 2018-11-20 19:06:52 · 101 阅读 · 0 评论 -
Java学习之多线程复制文件
【1】一个线程复制一个文件import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;public class MyThread extends Thread { @Override public void run() { Stri...原创 2018-11-20 14:05:52 · 265 阅读 · 0 评论 -
Java学习之多线程
写在前面: 首先想要了解多线程,必须先要了解线程; 想要了解线程呢,就必须先了解进程; 为什么嘞?因为线程是依赖于进程而存在哒。【1】什么是进程?进程:进程就是正在运行的程序。 进程是系统进行资源分配和调度的独立单位。每一个进程都有其自己的内存空间和系统资源。 ...原创 2018-11-20 11:23:09 · 146 阅读 · 1 评论 -
Cookie学习
文章目录cookie(1)作用(2)应用场景(3)实现过程[1]创建cookie对象[2]返回cookie对象[3]重新发送cookie值[4]遍历cookies数组(4)cookie属性[1]maxAge[2]httpOnlycookie(1)作用在web开发中是用来维系状态的一种技术(2)应用场景自动登录记录访问网页(3)实现过程服务器要向浏览器返回cookie[1]创建...原创 2019-01-15 21:59:39 · 883 阅读 · 0 评论 -
分布式程序开发
文章目录方式一:http(HttpUrlConnection)(1)特点(2)RestTemplate(基于HTTP协议调用)(3)好处方式二:RPC(1)RPC是什么意思呢?(2)RPC的特点(3)RPC框架---&gt;Dubbo(4.1)注册中心(4.2)dubbo控制台(5)开发公共的dubbo项目1) 开发公共api 项目2) 开发 provider (提供者)配置3) 开发 服务消费者...原创 2019-02-27 20:47:28 · 755 阅读 · 0 评论 -
Spring boot框架
文章目录spring boot1.创建spring boot项目两种方式:2.编写spring boot代码及运行3.spring boot整合Mybatis4. banner 可以自定义spring boot特点是:在spring 的基础上进行了简化,提供了一些配置的默认值1.创建spring boot项目两种方式:方式一:使用向导(web页面)联网创建方式二:使用maven项目,...原创 2019-02-27 21:16:33 · 159 阅读 · 0 评论 -
设计模式_五种单例模式
五种单例实现:(1)饿汉模式:(线程安全,调用率高,但是不能延时加载) public class Singleton1{ //类初始化时就立即加载对象(没有延迟加载的优势),天然的线程安全。 private static Singleton1 singleton1 = new Singleton1(); privat...原创 2019-06-30 22:48:15 · 237 阅读 · 1 评论 -
对象序列化
文章目录(1) 什么是将该对象序列化?(2)序列化有什么作用?(3)如何实现对象序列化?(4)实现序列化接口付出了什么代价?(5)transient(6)反序列化默认值(7)UID因为之前面试中被问到过序列化的问题,所以今天就来整理一下关于对象序列化的知识点。(1) 什么是将该对象序列化?概念:对象序列化就是将对象编码成字节流,并从字节流编码中重新构建对象。“将一个对象编码成一个字节流”,称...原创 2019-06-27 21:33:13 · 581 阅读 · 0 评论 -
Dubbo(RPC框架的实现)
今天来复习一下RPC(远程过程调用)框架的典型实现Dubbo什么叫远程方法调用呢?顾名思义,在这里就是消费者远程调用服务器的方法。apache官网的Dubbo 框架已经很形象的展示了具体的调用过程:简单分析主要分为三个部分:服务提供者、服务消费者、注册中心。整体的思路是:服务提供者启动后,会向注册中心注册提供者信息(包括IP地址,服务名,方法定义等),之后服务消费者启动后,会向注册中心订...原创 2019-06-25 21:20:02 · 5219 阅读 · 0 评论 -
JVM复习之OutofMemaryError StackOverflowError
文章目录第一:什么是OutofMemaryErrorJVM的哪些区域可能会发生OutofMemaryError第二:什么是StackOverflowError在 Java 虚拟机规范中描述了两种异常:OutofMemaryError和StackOverflowError。今天这个部分:第一:什么是OutofMemaryError如果虚拟机在扩展栈时无法申请到足够的内存空间,则抛出 OutO...原创 2019-04-02 22:27:37 · 462 阅读 · 0 评论 -
Shiro的实现机制(源码解析)
文章目录什么是shiro?什么是shiro?shiro是原创 2019-04-02 16:49:13 · 5879 阅读 · 2 评论 -
ArrayList的扩容机制(源码解读)
文章目录(1)ArrayList所继承的接口(2)ArrayList类所包含的属性【1】serialVersionUID【2】DEFAULT_CAPACITY【3】EMPTY_ELEMENTDATA【4】DEFAULTCAPACITY_EMPTY_ELEMENTDATA【5】elementData【6】size(3)ArrayList集合中的方法1> 构造方法【1】ArrayList(in...原创 2019-03-04 18:29:09 · 756 阅读 · 2 评论 -
反射
文章目录定义方法【1】获取对象的类型(1)方法一(2)方法二(3)方法三【2】类对象的功能[1]用反射的方式创建对象(1)正常创建对象(2)反射创建对象[2]获取方法信息[3]获取属性信息[4]获取构造方法[5]反射调用方法(1)正常调用方法(2)反射调用方法定义在运行期间可以获取对象的类型,类型的方法,类型的属性,类型的构造方法等,让对象可以认识到自身的结构。方法【1】获取对象的类型(...原创 2019-03-04 15:47:05 · 167 阅读 · 0 评论 -
Java中的设计模式(单例模式详解)
文章目录【1】单例模式(singleton)(1)定义(2)方法方法一:(饿汉式单例)方法二:(懒汉式单例)定义:方法:方法三:(枚举类实现单例:实质上属于饿汉式单例)方法四:破坏单例的方法(1)反射(2)反序列化设计模式通俗的将,就是编程中的一些套路,目的就是让我们的代码实现特定的目的,结构上也能更加优秀。【1】单例模式(singleton)(1)定义虚拟机中这个类只有一个实例对象(2...原创 2019-03-04 14:32:16 · 326 阅读 · 0 评论 -
volatile
原创 2019-03-06 13:41:11 · 134 阅读 · 0 评论 -
Spring
文章目录【1】Spring aop(1)切面(2)切点表达式(3)应用【2】动态代理(1)aop1.aop的原理(2)spring中两种实现动态代理的方式【1】Spring aop(1)切面切面(aspect) = 通知(advice) + 切点(pointcut)@Aspect@Componentpublic class 切面类{ @Around("切点表达式") public ...原创 2019-02-28 22:16:00 · 159 阅读 · 0 评论 -
VUE
文章目录VUE(1)特点(2)传统jsp方式(3)使用【3.1】引入vue.js【3.2】创建vue对象【3.3】展示模型数据【3.3.1】v-for 用来遍历一个集合【3.3.2】v-if【3.3.3】 v-show【3.3.4】事件处理【3.3.5】 双向绑定 v-model【3.3.6】简化写法VUE(1)特点渐进式的js框架(2)传统jsp方式传统‘(3)使用【3.1】引入v...原创 2019-02-27 21:58:09 · 143 阅读 · 0 评论 -
杂记
文章目录1. 新的管理 bean 的方式2. 自动创建数据库结构,导入数据3. spring boot 集成 jdbc4. 事务控制1. 新的管理 bean 的方式【1】xml <bean class="类">*【2】 给类上添加注解 @Component, @Service, @Controller, @Repository, @Mapper, @RestController...原创 2019-02-27 21:32:53 · 142 阅读 · 0 评论 -
lombok
首先lombok有什么作用嘞?当然lombok有很大的方便,它可以加在模型类上,帮助生成 get,set,toString,hashCode,equals等方法在项目中添加 lombok 依赖<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombo...原创 2019-02-27 21:20:41 · 137 阅读 · 0 评论 -
Java编译后产生class文件的命名规则
首先大家看一道题:编译下面程序会产生哪些.class文件?interface J_SuperClass { void mb_method();}public class J_Test { class J_InnerClass1 { } J_Test m_test = new J_Test() { int m_data = 1; ...原创 2018-11-23 16:51:10 · 1317 阅读 · 1 评论 -
JVM理解【1】
【1】Java的技术体系包括:A:java语言程序设计B:各种硬件平台上的java虚拟机C:Class文件格式D:Java API类库E:来自商业机构和开源社区的第三方Java类库【2】JDK概述:JDK是用于支持Java程序开发 的最小环境包括:A:java程序语言设计 B:java虚拟机 C:java API类库...原创 2018-11-16 17:01:42 · 85 阅读 · 0 评论 -
Java学习之StringBuffer类
【1】StringBuffer类概述:我们如果对字符串进行拼接操作,每次拼接都会构建一个新的String对象,耗时而且浪费空间用StringBuffer就可以解决这个问题,即线程安全的可变字符序列。一个类似于String的字符串缓冲区。【2】StringBuffer和String的区别:String为字符串常量,一旦创建不可更改;适用于少量字符串操作的情况StringBuffer为...原创 2018-10-23 17:29:18 · 217 阅读 · 0 评论 -
Java学习之String类
今天我们来了解一下java的String类首先上思维导图:【1】什么是字符串?字符串的定义:字符串就是由多个字符组成的一串数据,也就是字符序列,字符串也可也看成是字符数组字符串是常量;它们的值在创建之后不可更改。【2】String类的概述:String类代表字符串。java程序中的所有字符串字面值(如“abc”)都作为此类的实例实现,String对象是不可变的,所以可以...原创 2018-10-23 16:28:31 · 345 阅读 · 0 评论 -
Java学习之Scanner
喵喵喵~~~~可爱的小北同学又回来啦,今天要给大家分享的是Java中的Scanner首先上思维导图:【1】什么是Scanner类?答:Scanner是java.util包中的一个类【2】Scanner是用来干什么的?答:常用于控制台的输入,当需要控制台输入时会调用这个类【3】Scanner如何使用呢?答:先来说一下Scanner 的构造方法原理: ...原创 2018-10-23 12:29:51 · 222 阅读 · 0 评论 -
Java学习之排序算法(冒泡排序,选择排序,快速排序)
冒泡排序:直接上代码(其实就是相邻两两直接进行比较,如果后面比前面大,则交换,否则继续比较,每循环一次则会把最小的值传递到最后一位(之后的都是传递到后一位的前一位))话不多说,直接上代码:public class BubberSort { public static void main(String[] args) { int[] arr={34,556,3,8...原创 2018-10-23 10:37:32 · 314 阅读 · 0 评论