
Java
菜鸟在进步
记录在技术上的探索历程
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Mysql8.0开启忽略表大小写,无法启动,解决方案
Mysql8.0开启忽略表大小写,无法启动,解决方案mysql8.0默认是区分大小写。因此如果要设置忽略大小写,需要在安装完成之后,初始化数据库的时候进行设置。/usr/sbin/mysqld --initialize --user=mysql --lower-case-table-names=1初始化完成之后在启动数据库。否则的话就会是无效的。如果要是已经启动了数据库,在配置文件中再去修改,就会造成数据库无法启动的情况。如果出现这个情况,首先需要删除掉/var/lib/mysql文件夹下原创 2020-10-13 19:17:12 · 4802 阅读 · 2 评论 -
多线程--05(线程池的创建)
线程池: 什么是线程池: Java中的线程池是应用场景最多的并发框架,几乎所有需要异步或并发执行任务的程序,都可以使用线程池,在并发的过程中合理的使用线程池能够带来3个好处。 降低资源的消耗:通过重复利用已创建线程,降低线程的创建和线程销毁的所造成资源的消耗; 提高响应速度:当任务达到时,任务可以不需要等待线程的创建就...原创 2018-09-12 11:21:35 · 211 阅读 · 0 评论 -
Java自定义注解和设计模式
什么是注解: JDk1.5新增技术,注解。很多的框架为了简化代码,都会提供一下注解,可以理解为插件,是代码级别的 插件。在类的方法上写:@XXX,就是在代码上插入了一个插件。 注解不会也不能影响代码的实际逻辑,仅仅是起到辅助的作用。 注解分类: 内置注解,(元注解jdk自带的注解) 自定义注解:(Spring 框架注解) Object类中...原创 2018-09-16 16:22:25 · 1034 阅读 · 0 评论 -
Java设计模式
设计模式: 是一套被反复使用,多数人知晓的,经过分类编目的,代码设计经验总结。使用设计模式是为了可重用代码,让代码更容易让别人理解,保证代码的可靠性。毫无疑问,设计模式与给予他人于系统都是多赢的。设计模式使代码编制真正工程化。设计模式的软件工程的基石,如同大厦的一块砖石一样,项目中合理的运用设计模式可以完美的解决很多问题。每种设计模式中在现在中都有相应的原理来与之对应,每一个模式描述了一...原创 2018-09-16 23:29:58 · 115 阅读 · 0 评论 -
多线程--06
线程池的原理分析: Java中的线程池核心使用构造函数: ThreadPoolExecutor()构造函数的参数: int corePoolSize:线程核心池的大小,表示初始化线程池的大小 int maximumPoolSize:最大线程池,表示线程池的最大容量。 long keepAliveTime:任务超时终止...原创 2018-09-12 23:34:46 · 129 阅读 · 0 评论 -
数据交换格式--01(json字符串)
数据交换格式:json,xml,html json:一种轻量级的数据交换格式, xml:是一种标记性语言,是一种重量级的数据交换格式。 json与xml区别: 1.json占用宽带小,xml占用宽带大。 2.微服务架构,基本上都是采用http+json格式进行数据传输。 3.在配置文件中使用xml,webservi...原创 2018-09-13 22:29:46 · 581 阅读 · 0 评论 -
NIO编程基础
IO和NIO区别:其本质就是阻塞和非阻塞的区别。阻塞的概念:应用程序在获取网络数据的时候,如果网络传输数据很慢,就会一直等待,直到传输完毕。非阻塞概念:应用程序直接可以获取已经准备就绪好的数据,无需等待。IO为同步阻塞形式,NIO为非同步阻塞形式,NIO病咩有实现异步,在JDK1.7后升级NIO库包,支持异步非阻塞同步模型NIO2.0;IO模式:同步阻塞模式IO,服务器实现模式为一个连接...原创 2018-09-26 09:42:00 · 448 阅读 · 0 评论 -
Netty框架
Netty框架:Netty是一个基于JAVA NIO类库的异步通讯框架,它的架构特点是异步非阻塞,基于事件驱动,高性能,高可靠性和高可定制性。Netty应用场景:1.分布式开源框架dubbo,Zookeeper,RocketMQ底层rpc通讯使用就是netty。2.游戏开发中,底层是用netty通讯。为啥子选择netty:NIO的类库和api繁杂,使用麻烦。需要熟悉掌握Selector...原创 2018-09-27 09:43:01 · 1847 阅读 · 0 评论 -
正则表达式总结
常用的正则表达式:1。去除括号,包含括号里面的内容。(),()[] {}四种类型的括号。package athena.test;public class SubStringTest { public static void main(String[] args) { String str="广州市 荔 湾 区芳村花地大道坑口工业区A座二层(3L07D30PAU00858)更换机(深圳...原创 2018-10-15 17:30:12 · 124 阅读 · 0 评论 -
Netty编程高级
长连接:连接之后不会立即断开。移动端消息推送 MQ短连接:连接传输完毕之后就断开。(http协议)粘包:将多个包合在一起一起发送。拆包:将一个包拆开成多个包分开发送。解决方法:1.消息定长,报文大小固定长度,不够的空格补全,发送方和接收方遵循相同的约定,这样既是粘包了通过接收方编程实现获取固定的长度的报文也能区分。2.报文添加特殊的分隔符,例如每条报文结束都添加回车换行,或者指定特殊字...原创 2018-10-09 17:31:32 · 877 阅读 · 0 评论 -
垃圾回收机制
package com.itmayiedu.day06;/**垃圾回收机制概述:Java语言中最显著的一个特点就是引入了垃圾回收机制,使C++程序员最头疼的内存管理问题迎刃而解,它使得Java程序员在编程的时候不需要考虑内存管理,由于有个垃圾回收机制,Java中的对象不再有作用域的概念,只有对象的引用才有作用域,垃圾回收机制可以有效防止内存泄露,有效的使用空闲的内存ps:内存泄露,是...原创 2018-10-09 17:32:32 · 412 阅读 · 0 评论 -
数据交换格式--02(xml)+SpringIOC底层实现
xml定义:是一种可扩展标记语言,简称xml,是一种标记语言, xml全称为可扩展的标记语言,主要用于描述数据和用作配置文件。 xml文档在逻辑上主要由以下5个部分组成: xml声明:指出xml文档所用的DTD。 文档类型声明:指明所用的xml的版本,文档的编码,文档的独立性信息。 元素:由开始标签,元素内容和结束标签构成。 注释:已结束...原创 2018-09-15 20:23:59 · 182 阅读 · 0 评论 -
Java--生成二维码(2)
1.jsp生成二维码: 借助第三方的jar包,入zxing.jar和qrcode.jar 2.javaScript 比如:jquery.qrcode.js 在这次的讲解中我们使用的是maven工程项目,首先我们在pom.xml文件中引入两个依赖 <!-- https://mvnrepository.com/artifact/com.google.zxing/core ...原创 2018-07-25 23:29:02 · 210 阅读 · 0 评论 -
Quartz任务调度简介---01
1.特点: 强大的调度功能, 灵活的应用方式 分布式和集群能力 2.主要的设计模式: Builder模式,Factory模式,组件模式,链式写法原创 2018-08-02 23:10:39 · 260 阅读 · 0 评论 -
多线程--02
多线程的状态: 新建:new Thread()表示程序进入新建状态。 就绪:调用start()方法。表示进入就绪状态,一个新创建的线程并不会立即执行,必须滴啊用start()方法,启动线程。strat()方法创建线程运行的资源。并调度运行run方法,当start()方法返回后,线程处在就绪状态。 运行:cpu开始执行run方法。表示进入运行状态。 休眠:调用...原创 2018-08-30 22:59:19 · 115 阅读 · 0 评论 -
分页工具类,大量数据分批处理工具类
package com.itmayiedu.day01;import java.util.ArrayList; import java.util.List;public class ListUtils { static public List原创 2018-08-30 23:00:41 · 517 阅读 · 0 评论 -
多线程--01
线程和进程的区别: 线程:一个执行顺序或者一个执行流程或者一个执行路径。 进程:执行中的程序,进程中有多个不同的执行路径,进程是多个线程的集合,一个操作系统可以包含多个进程。在线程中一定有一个线程,这个线程是主线程。 使用多线程,可以提供程序的执行效率,每个线程互不影响(都是自己独立运行)。 多线程的应用场景: 迅雷批量下载,批量发送短信,...原创 2018-08-29 23:39:49 · 146 阅读 · 0 评论 -
多线程--02
线程的安全问题: 多个线程共享一个全局变量或者静态变量,做写的时候可以是受到其他线程的干扰,导致数据问题,这就是线程的安全问题。在读取数据的时候不会产生线程安全问题。 经典的模拟抢票程序:/** * 两个线程同时抢100张火车票 */public class ThreadTraindemo01 implements Runnable { private ...原创 2018-09-01 18:27:39 · 114 阅读 · 0 评论 -
Java--内存模型
多线程的三大特性: 1.原子性。保证线程安全问题,保证数据的原子性和完整性。 2.可见性。当多个多线程访问同一个变量的时候,一个线程的值改变话其他的线程可以立即看到修改后的值。 3.有序性。程序的执行顺序按照代码的执行顺序。 Java内存模型:简称JMM Java内存模型表明一个线程对共享变量进行写入时,能对另外一个线程可见。从抽象的角度来看,JMM定义了...原创 2018-09-01 23:01:24 · 146 阅读 · 0 评论 -
多线程--03
多线程之间的通讯: 多个线程对同一个资源(共享资源),每个线程对共享资源做的不同,操作不同。 多线程的通讯,生产者和消费者。 wait();调用wait()方法后,是当前线程把该对象的控制权交出去,然后处于等待状态。(释放当前锁的资源。) nitify():让当前线程从休眠状态变成运行状态。 notifyal...原创 2018-09-02 22:56:48 · 116 阅读 · 0 评论 -
多线程--04
线程安全的类:Vector与ArrayList: 实现的原理都是通过数组实现的,查询速度比较快,增加,删除修改的速度比较慢。数组的增加和删除需要涉及到数据的copy。所以速度会慢一些。 区别: Vector是线程安全的,方法使用synchronized关键字,使用同步函数来保证线程的安全。 ArrayList是线程不安全,但是效率是比较高的...原创 2018-09-11 19:43:34 · 162 阅读 · 0 评论 -
Java多线程--04
Lock锁的介绍: synchronized 是在代码开始的是上锁的,在代码结束的时候释放锁的资源的。 在JDK1.5中并发包lock锁保证线程安全问题。 lock锁和synchronized同步锁。 lock是手动加锁,手动释放锁。 多线程并发:指的是多个Thread同时操作一个资源。 网站并发:多个请求同时请求同台服务器。 ...原创 2018-09-05 20:01:31 · 118 阅读 · 0 评论 -
Java--生成二维码(1)
一.二维码的概念: 1.二维码是指有某种特定的几何图形按一定的规律在平面上分布的黑白相间的图形记录数据符号信息的图形。. 2.二维码的分类: 二维码存在许多不同的码制,就码制的编码原理而言,通常分为三种类型: 1.线性堆叠式二维码 编码原理:建立在一维码的基础上,按需要堆积成两行或者多行。 2.矩阵式二维码 在一个矩形空间通过黑白像素...原创 2018-07-25 22:01:05 · 206 阅读 · 0 评论