java开源项目学习
文章平均质量分 62
xiaomagezuishuai
这个作者很懒,什么都没留下…
展开
-
Java类型擦除
Java类型擦除泛型的本质就是“参数化类型”,也就是说所操作的数据类型被指定为一个参数。 创建集合时就指定集合元素的数据类型,该集合只能保存其指定类型的元素, 避免使用强制类型转换。 Java 编译器生成的字节码是不包含泛型信息的,泛型类型信息将在编译处理时 被擦除,这个过程即类型擦除。类型擦除可以简单的理解为将泛型 java 代码转 换为普通 java 代码,只不过编译器更直接点,将泛型 java 代码直接转换成普通 java 字节码。 类型擦除的主要过程如下: 一.将所有的泛型参数用其最左边界(最原创 2021-03-01 13:18:18 · 121 阅读 · 0 评论 -
Java并发编程
Java并发编程原创 2021-02-20 23:23:09 · 202 阅读 · 0 评论 -
Java单例模式
Java单例模式饿汉模式//饿汉模式public class Single { private static Single instance = new Single(); private Single(){ } private static Single getInstance(){ return instance; }}懒汉模式//懒汉模式public class SingleV2 { private static Sing原创 2021-02-19 13:56:39 · 92 阅读 · 0 评论 -
Java基础整理
Java集合ConcurrentHashMapjdk1.7采用的是segment方法,初始化容量为16,每次插入entry时,需要先hash定位segment,在segment的table里定位索引,在插入数据,加锁力度是segment。jdk1.8采用node+cas+synchronized方法,实现并发线程安全,4.如果没有hash冲突,直接通过CAS将数据放置到tab中,如果发生冲突了,则通过synchronized对node上锁。 /** Implementation for原创 2021-02-19 11:44:21 · 180 阅读 · 0 评论 -
violate关键字
Violate关键字引用:https://www.cnblogs.com/dolphin0520/p/3920373.html这篇博客讲的比较好转载 2021-01-25 19:54:59 · 2221 阅读 · 0 评论 -
Java类加载机制
jvm启动java程序过程Java类加载机制。1.首先类的加载分为 加载、验证、准备、解析、初始化。首先要区分下加载和类加载的概念。2.加载指的是加载class文件到内存中,并实例化class对象,这里加载到内存中,指的是两部分:a. 将class信息,加载到方法区中,包括类信息,常量,静态变量等信息。b.类对象放在堆中,具有类的方法,成员变量等信息,通过反射能够获取。3.在jvm中存放类信息的类限定名和(类名,类在的包名,类的加载器实例名共同决定的),也就是不同的类加载器实例如果不遵循双亲委派原创 2021-01-21 20:57:34 · 231 阅读 · 1 评论 -
springboot秒杀系统第七弹
springboot秒杀系统第七弹秒杀功能的实现及秒杀安全优化。秒杀功能为了缓解数据库压力,采用rabbitmq,异步下单的方式,使用rabbitmq的好处常见有消峰,异步,解耦。秒杀功能第一步1秒杀接口地址隐藏,首先good_detail.htm界面如下:<!DOCTYPE HTML><html ><head> <title>商品详情</title> <meta http-equiv="Content-Type原创 2021-01-07 21:08:20 · 89 阅读 · 0 评论 -
springboot秒杀系统第六弹
springboot秒杀系统第六弹页面的静态化分离原创 2021-01-06 10:18:02 · 92 阅读 · 0 评论 -
springboot秒杀系统第四弹
springboot秒杀系统第四弹设计知识点:全局异常处理1.定义全局异常package com.rong.miaosha.exception;import com.rong.miaosha.result.CodeMessage;public class GlobalException extends RuntimeException{ private static final long serialVersionUID = 1L; private CodeMessage c原创 2021-01-03 11:59:04 · 138 阅读 · 1 评论 -
SpringBoot秒杀系统第五弹
SpringBoot秒杀系统第四弹设计知识点,分布式Session,Springboot拦截器,参数解析器。package com.rong.miaosha.service;import com.rong.miaosha.dao.MiaoshaUserDao;import com.rong.miaosha.model.MiaoshaUser;import com.rong.miaosha.redis.MiaoshaUserKey;import com.rong.miaosha.redis.R原创 2021-01-03 11:46:23 · 158 阅读 · 3 评论 -
Spring boot 秒杀系统第三单
Spring boot 秒杀系统第三单涉及知识点:JSR303参数校验1.添加依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-validation</artifactId></dependency>2.修改LoginVo类,给变量加注解package com.rong.m原创 2020-12-06 22:48:30 · 109 阅读 · 0 评论 -
Spring boot 秒杀系统第二单
使用mybatis和druid继承mysql1.添加mybatis依赖:<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId></dependency><dependency> <groupId>com.alibaba</groupId> <a原创 2020-12-06 22:40:52 · 128 阅读 · 0 评论 -
SpringBoot实战第一弹
Java基础第一弹Mac环境下Java安装1.jdk下载网站 https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html2. 一步一步安装完成后配置环境变量a.在当前目录下~,新建.bash_profile文件,如果存在则不用创建。b.新增配置:JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_261.jdk/Contents/HomePATH=JA原创 2020-10-17 11:24:01 · 138 阅读 · 1 评论