Java基础
Jonathan113
这个作者很懒,什么都没留下…
展开
-
outofmemory-内存溢出
内存溢出的集中情况内存溢出解决方案原创 2020-03-16 17:03:08 · 243 阅读 · 0 评论 -
Java-Email服务
Email服务作为一个较为基本的服务,这里引用YSOcean的博客,已经讲解得较为清楚原创 2020-02-26 00:32:42 · 339 阅读 · 0 评论 -
中间件-RabbitMQ详解
这里参考YSOcean的博客,讲的已经十分详细。包括协议+工作流程+基本的队列+使用例子这里参考孤独的小码农的知乎帖子,给出了实际的应用-----Email+消息队列实现邮件投递...转载 2020-02-25 20:04:20 · 238 阅读 · 0 评论 -
WEB框架-servlet
servlet 处理请求流程生命周期加载、创建、初始化、运行、卸载;一般来说servlet不会卸载,随着服务器关闭才卸载doget()、dopost区别1、doget()会把传递的信息放在URL中,数据量小(2K)、且泄露数据。只可以获取从2、dopost()信息隐秘,数据量大;request对象方法四大作用域PageContext (page域) < request...原创 2020-02-25 18:39:52 · 145 阅读 · 0 评论 -
Java基础-日志log4j
为什么要用日志我们调试代码的时候;我们的应用出现了问题,我们分析、定位、解决问题的时候;我们想将某些日志信息作为离线的业务数据分析的时候等等。日志框架日志框架都是能控制什么哪?那我们需要打印的日志都能满足什么样的需求哪?通常我们希望一个日志框架能够灵活的做到以下三点:5-1:能够控制日志信息想往哪里打就往哪里打,比如:控制台、文件、邮箱、数据库等等5-2:能够控制日志信息想怎么打就怎么打...原创 2020-02-18 00:32:09 · 101 阅读 · 0 评论 -
Java基础-JDBC、MySQL
JDBC1、过程:java-mysql-connector.jar\初始化驱动class.forname()\建立连接sql.DriverManager.getconnection(IP、端口、名称、账号密码)\建立statement、prestatement\执行sql语句、s.execute(sql)、2、prestatement有点:1、参数设置,不易出错,可以防止SQL注入。2、预编译...原创 2020-02-15 00:55:54 · 226 阅读 · 0 评论 -
Java基础-锁
Java具有很多的锁机制,为保证并发和性能兼顾,需要合理选择其实锁的实现是通过对象头中的Mark Word指定线程的地址或者名称,线程栈帧中开辟一个空间Lock Record,用于存储锁对象目前的 Mark Word 的拷贝,然后拷贝对象头中的 Mark Word 复制到锁记录中。其他线程要获得锁,就修改Mark Word指定线程的地址或者名称。这里用CAS的重试来实现。1、公平锁/非公平锁。...原创 2020-02-12 14:59:49 · 217 阅读 · 0 评论 -
Java基础-多线程
线程具体讲解-生命周期、多线程通信等多线程实现方式1、继承thread类,重写run();方法。业务内容就是run();代码块2、实现Runable,重写run();方法。业务内容就是run();代码块;无返回值3、实现callable,重写run();方法。业务内容就是run();代码块;有返回值,且可以抛出异常4、禁止使用Executors去创建线程池,自己去创建ThreadPool...原创 2020-02-12 14:22:40 · 117 阅读 · 0 评论 -
Java基础-栈、队列、链表
栈和队列都是都存在顺序(底层为数组)、链表(底层为链表)之分。队列需要指明top和tail(首、尾),这样可以避免数据的不断迁移,怎么判断满和空时关键。栈需要指明top指针(或者时root节点)链式存储结构链式和顺序队列的实现...原创 2020-02-11 00:44:11 · 182 阅读 · 0 评论 -
Java基础-集合
Java集合是一个很大的框架,常用的hashmap、hashtable、linedhashmap、currenthashmap、arraylist、linkedlist等都在其中,有collection-(set、map)\map;通过继承abstractcollection等类和装饰者模式获得不同的数据结构,其中hash()、equal();entry(K,V)的重写是主要手段下面给出了两个集...原创 2020-02-11 00:22:36 · 129 阅读 · 0 评论 -
Java基础-网络编程Socked
个人理解就是建立一个长连接TCP、UPD,然后就可以实现不断的通信。不用不断建立TCP 浪费资源。多线程聊天的简单demo原创 2020-02-10 00:01:40 · 149 阅读 · 0 评论 -
Java基础-IO
文件创建File f1 = new File(“d:/LOLFolder”); 绝对路径File f2 = new File(“LOL.exe”); 相对路径File f3 = new File(f1, “LOL.exe”); 组合成的绝对路径//上诉创建的是文件对象,并不是文件。文件有可能存在和不存在文件创建、处理API文件读取1、字节流:inputstream、outputstr...原创 2020-02-09 21:51:20 · 168 阅读 · 0 评论 -
Java基础=异常处理
异常的分类定义1、可查异常:必须要catch、处理2、运行时异常:不一定要处理3、错误:这没办法了,没法处理原创 2020-02-09 16:26:18 · 86 阅读 · 0 评论 -
Java基础-对象类型转换(多态)
对象创建一个对象创建有3步:1、声明变量、引用类型;2、构造函数实例化对象;3、将实例赋值给变量,实现引用。转换实现1、子类转父类,可以实现2、接口实现类转接口,可以实现3、父类、接口实现类转父类、接口,不一定;啥时候可以–当父类也是由子类转换而来就可以,这样算是子类转子类。...原创 2020-02-09 15:13:52 · 124 阅读 · 0 评论 -
Java基础-内部类
非静态内部类1、可以随意引用外部类的任何属性和方法2、不可以拥有静态static的属性和方法3、外部实例化后才可以实例化非静态内部类,然后调用。静态内部类1、不需要实例化外部类既可调用,且可以调用非成员变量和方法。匿名类1、没有class、extends、implements修饰2、不能有构造函数,静态方法和属性、类3、不能是public、protected、private、st...原创 2020-02-09 14:40:40 · 113 阅读 · 0 评论 -
Java基础-封装、继承、多态
继承:1、子类继承了非私有的(private)父类的方法和属性;然后同名会被重写覆盖,不会继承;2、子类无法继承父类的静态方法和属性,也无法重写覆盖同名的;静态方法和属性属于类本身。但是,可以访问。多态:1、同一个方法名,不同的操作(参数可以不同)2、编译时多态:重载,一个类中有多个同名方法,但是其参数不一样;——类中方法多态性3、运行时多态:重写覆盖(继承、实现接口),重写覆盖是在相...原创 2020-02-09 14:18:55 · 174 阅读 · 1 评论 -
Java基础-单例模式
单例模式应用场景单例模式解析——懒汉、饿汉式其实单例模式就是使用同一个实例,防止在业务中出现的多实例操作导致的不安全问题(数据错乱)。这个跟并发没有多大关系。单实例进行方法同步就可以实现并发安全。...转载 2020-02-09 10:25:17 · 125 阅读 · 1 评论 -
Java基础-安装JDK和环境配置
安装JDK下载并解压JDK压缩包下载JDK安装包后,解压,然后添加环境变量Java_HOME ,然后在系统变量path上添加环境量,再通过cmd 查询java -version(%JAVA_HOME%\bin;)看是否成功...原创 2020-02-07 23:15:49 · 66 阅读 · 0 评论