
狂神说Java学习
文章平均质量分 92
Java学习
一只野良猫w
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
JVM--Java虚拟机
内存效率:复制算法>标记清除算法>标记压缩算法(时间复杂度)内存整齐度:复制算法=标记压缩算法>标记清除算法内存利用率:标记压缩算法=标记清除算法>复制算法难道没有最优算法吗?没有最优的方案,永远只是时间或者空间的权衡,而现在因为不缺空间,所以都是优先复制算法答案:无,没有最好的算法,只有合适的算法(GC也被称为分代收集算法)。年轻代:存活率低,用复制算法。老年代:存活率高,区域大,用标记-清除-压缩。参考和研究:《深入理解Java虚拟机》......原创 2022-08-28 13:01:40 · 341 阅读 · 0 评论 -
ElasticSearch
简称为es,es是一个开源的高扩展的分布式全文检索引擎,它可以近乎实时的存储、检索数据;本身扩展性很好,可以扩展到上百台服务器,处理PB级别(大数据时代)的数据。es也使用java开发并使用Lucene作为其核心来实现所有索引和搜索的功能,但是它的目的是通过简单的来隐藏Lucene的复杂性,从而让全文搜索变得简单。据国际权威的数据库产品评测机构DB Engines的统计,在2016年1月,ElasticSearch已超过Solr等,成为排名第一的搜索引擎类应用。原创 2022-08-25 10:34:32 · 575 阅读 · 0 评论 -
MyBatisPlus
学习MyBatis-Plus之前要先学MyBatis–>Spring—>SpringMVC,为什么要学它?MyBatisPlus可以节省我们大量的时间,所有CRUD代码都可以自动完成JPA, tk-mapper ,MyBatisPlus偷懒用的!原创 2022-08-15 21:13:04 · 190 阅读 · 0 评论 -
Docker
一款产品: 开发–上线 两套环境!应用环境,应用配置!开发 - - - 运维。问题:我在我的电脑上可以允许!版本更新,导致服务不可用!对于运维来说考验十分大?环境配置是十分的麻烦,每一个机器都要部署环境(集群Redis、ES、Hadoop…)!费时费力。发布一个项目( jar + (Redis MySQL JDK ES) ),项目能不能带上环境安装打包!之前在服务器配置一个应用的环境 Redis MySQL JDK ES Hadoop 配置超麻烦了,不能够跨平台。......原创 2022-08-13 17:03:52 · 1336 阅读 · 0 评论 -
Redis
90年代,一个网站的访问量一般不会太大,单个数据库完全够用。随着用户增多,网站出现以下问题网站80%的情况都是在读,每次都要去查询数据库的话就十分的麻烦!所以说我们希望减轻数据库的压力,我们可以使用缓存来保证效率!优化过程经历了以下几个过程:NoSQL = Not Only SQL(不仅仅是SQL)Not Only Structured Query Language关系型数据库:列+行,同一个表下数据的结构是一样的。非关系型数据库:数据存储没有固定的格式,并且可以进行横向扩展。NoSQL泛指非关系型数据库原创 2022-08-12 10:39:45 · 414 阅读 · 0 评论 -
SpringCloud
springcloud就是一个生态api网关,zuul组件Feign—基于Httpclient —Http通信方式:同步、阻塞服务注册发现:Eureka熔断机制:HystrixAPI:没有,找第三方组件,或者自己实现Dubbo:高性能的基于JAVA RPC的通信框架服务注册发现:Zookeeper熔断机制 没有,可以借助HystrixDubbo和Zookeeper这个方案并不完善万变不离其宗,一通百通!微服务(Microservice Architecture)最近几年流行的一种架构思想,关于他的概念很难一原创 2022-08-09 16:19:05 · 1072 阅读 · 0 评论 -
SpringBoot
Spring是一个开源框架,2003 年兴起的一个轻量级的Java 开发框架,作者:Rod Johnson 。Spring是为了解决企业级应用开发的复杂性而创建的,简化开发。为了降低Java开发的复杂性,Spring采用了以下4种关键策略:1、基于POJO的轻量级和最小侵入性编程,所有东西都是bean;2、通过IOC,依赖注入(DI)和面向接口实现松耦合;3、基于切面(AOP)和惯例进行声明式编程;4、通过切面和模版减少样式代码,RedisTemplate,xxxTemplate; 学过javaweb的原创 2022-08-07 14:32:44 · 1371 阅读 · 0 评论 -
Vue框架
Soc原则:关注点分离原则Vue 的核心库只关注视图层,方便与第三方库或既有项目整合。HTML + CSS + JS : 视图 : 给用户看,刷新后台给的数据网络通信 : axios页面跳转 : vue-router状态管理:vuexVue-UI : ICE , Element UI太简单,略 CSS层叠样式表是一门标记语言,并不是编程语言,因此不可以自定义变量,不可以引用等,换句话说就是不具备任何语法支持,它主要缺陷如下: 这就导致了我们在工作中无端增加了许多工作量。为了解决这个问题,前端开发人员会使原创 2022-07-31 15:21:45 · 21271 阅读 · 0 评论 -
SpringMVC
Model(模型):数据模型,提供要展示的数据,因此包含数据和行为,可以认为是领域模型或JavaBean组件(包含数据和行为),不过现在一般都分离开来:Value Object(数据Dao) 和 服务层(行为Service)。也就是模型提供了模型数据查询和模型数据的状态更新等功能,包括数据和业务。View(视图):负责进行模型的展示,一般就是我们见到的用户界面,客户想看到的东西。Controller(控制器):接收用户请求,委托给模型进行处理(状态改变),处理完毕后把返回的模型数据返回给视图,由视图负责展示原创 2022-07-28 21:56:49 · 162 阅读 · 0 评论 -
Spring
Spring:春天-------->给软件行业带来了春天2002年,首次推出了spring框架的雏形:interfaace21框架Spring框架即以interface21框架为基础,经过重新设计,并不断丰富其内涵,于2004年3月24日发布了1.0正式版Rod Johnson,Spring Framework创始人,著名作者。很难想象Rod Johnson的学历,真的让好多人大吃一惊,他是悉尼大学的博士,然而他的专业不是计算机,而是音乐学。Spring理念:使现有的技术更加容易使用,本身是一个大杂烩,整合原创 2022-07-25 16:27:19 · 201 阅读 · 0 评论 -
Mybatis
如何获得Mybatis?数据持久化(放到数据库里)为什么要持久化?Dao层、Service层、Controller层帮助程序员将数据存入到数据库中方便传统的JDBC代码太复杂了,简化,框架,自动化不用MyBatis也可以,技术没有高低之分,更容易上手。优点:思路:搭建环境 --> 导入MyBatis --> 编写代码 --> 测试搭建数据库新建项目1.创建一个普通的maven项目2.删除src目录 (就可以把此工程当做父工程了,然后创建子工程)3.导入maven依赖2.2 创建一个模块编写mybat原创 2022-07-23 21:02:48 · 821 阅读 · 0 评论 -
JavaWeb
1. 基本概念1.1 前言web开发:web,网页的意思 , www.baidu.com静态webhtml,css 提供给所有人看的数据始终不会发生变化!动态web淘宝,几乎是所有的网站; 提供给所有人看的数据始终会发生变化,每个人在不同的时间,不同的地点看到的信息各不相同!技术栈:Servlet/JSP,ASP,PHP在Java中,动态web资源开发的技术统称为JavaWeb;1.2 web应用程序web应用程序:可以提供浏览器访问的程序;a.html、b.html…多个we原创 2022-07-21 12:56:50 · 504 阅读 · 0 评论 -
MySQL
1. 初识MySQL1.1 为什么学习数据库岗位技能需求现在的世界,得数据者得天下存储数据的方法程序,网站中,大量数据如何长久保存?数据库是几乎软件体系中最核心的一个存在。1.2 什么是数据库数据库 ( DataBase , 简称DB )概念 : 长期存放在计算机内,有组织,可共享的大量数据的集合,是一个数据 “仓库”。作用 : 保存,并能安全管理数据(如:增删改查等),减少冗余…数据库总览 :1.关系型数据库 ( SQL ):关系型数据库通过外键关联来建立表与表之间的关系。原创 2022-03-01 21:44:41 · 3141 阅读 · 0 评论 -
JAVA注解与反射
1. 注解1.2 注解概念Annotation 是从JDK 5.0开始引入的新技术。Annotation的作用: 不是程序本身,可以对程序作出解释(这一点和注释(comment)没什么区别)。 可以被其他程序(比如:编译器等)读取。Annotation 的格式 注解是以“@注释名”在代码中存储在的,还可以添加一些参数值,例如:@SuppressWarnings(value=“unchecked”)。Annotation 在哪里使用? 可以附加在package 、class、met原创 2021-12-02 14:53:56 · 418 阅读 · 0 评论 -
JAVA多线程
1. 线程概述1.1 什么是进程进程是系统进行资源分配的基本单位,也是独立运行的基本单位。目前操作系统都是支持多进程,可以同时执行多个进程,通过进程ID区分。单核CPU在同一时刻,只能运行一个进程;宏观并行、微观串行。1.2 什么是线程线程又称轻量级进程(Light Weight Process),它是进程内一个相对独立的、可调度的执行单元,也是CPU的基本调度单位。一个进程由一个或多个线程组成,彼此间完成不同的工作,同时执行,称为多线程,此处宏观并行、微观串行。JAVA虚拟机是一个进原创 2021-11-22 13:12:36 · 401 阅读 · 0 评论 -
JavaScript
1. 什么是JavaScript1.1 概述JavaScript是一门世界上最流行的脚本语言。JavaScript(简称“JS”) 是一种具有函数优先的轻量级,解释型或即时编译型的编程语言。虽然它是作为 开发Web页面的脚本语言而出名,但是它也被 用到了很多非浏览器环境中,JavaScript 基于原型编程、多范式的动态脚本语言,并且 支持面向对象、命令式和声明式(如函数式编 程)风格。一个合格的后端人员,必须精通JavaScript。1.2 历史历史相关链接:https://www.w3原创 2022-01-03 15:07:48 · 1021 阅读 · 0 评论 -
JAVA常用类
JAVA常用包1.java.lang包该包是java语言中的核心包,该包中的内容由java虚拟机自动导入。如:String类,System类等2.java.util包该包是java语言中的工具包,里面包含了大量的工具类和集合类等。如:Scanner类,Random类等3.java.io包该包是java语言中的输入输出包,里面包含了大量的读写文件类等。如:FileOutputStream类,FileInputStream类等4.java.net包该包是java语言中的网络包,里面包含了大原创 2021-10-13 19:59:42 · 397 阅读 · 1 评论 -
JAVA网络编程
1. 计算机网络概念 计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接(有线性、无线)起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。网络编程的目的: 1.传播交流信息 2.数据交换、通信网络编程中两个主要问题: 1.如何准确定位到网络上的一台或多台主机 2.找到主机之后如何进行通信网络编程中的要素: 1.IP 和 端口号 2.网络通信协议Java 万物皆对象Ja原创 2021-11-24 10:52:01 · 86 阅读 · 0 评论 -
HTML+CSS
HTML学习1. HTMLHyper Text Markup Language(超文本标记语言)< body >、< /body>等成对的标签,分别叫做开放标签和闭合标签,单独呈现的标签(空元素),如< hr/ >;意为用/来关闭空元素。html注释:< !–注释内容–><!--DOCTYPE:告诉浏览器使用什么规范(默认是html)--><!DOCTYPE html><!--语言 zh中文 en英文-->原创 2021-12-23 19:23:33 · 220 阅读 · 0 评论 -
I/O框架
一、流的概念 内存与存储设备之间传输数据的通道。二、流的分类(1)按流向输入流:将存储设备当中的内容读入到内存中。输出流:将内存当中的内容写入存储设备中。(2)按单位字节流:以字节为单位,可以读写所有数据。字符流:以字符为单位,只能读写文本数据。(3)按功能节点流:具有实际传输数据的读写功能。过滤流:在节点流的基础上增强功能。三、字节流字节流的父类(抽象类)//InputStream 字节输入流public int read(){} //返回下一个数据字节;如果到原创 2021-10-24 15:24:14 · 114 阅读 · 0 评论 -
JAVA集合
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar原创 2021-10-21 21:35:05 · 101 阅读 · 0 评论 -
JAVA常用包
JAVA常用包1.java.lang包该包是java语言中的核心包,该包中的内容由java虚拟机自动导入。如:String类,System类等2.java.util包该包是java语言中的工具包,里面包含了大量的工具类和集合类等。如:Scanner类,Random类等3.java.io包该包是java语言中的输入输出包,里面包含了大量的读写文件类等。如:FileOutputStream类,FileInputStream类等4.java.net包该包是java语言中的网络包,里面包含了大原创 2021-10-14 14:02:42 · 249 阅读 · 0 评论