{"id":16832155,"url":"https://github.com/nivelle/java-all","last_synced_at":"2025-03-22T04:30:44.908Z","repository":{"id":37109088,"uuid":"183406571","full_name":"nivelle/java-all","owner":"nivelle","description":"编程基础（java实现）","archived":false,"fork":false,"pushed_at":"2023-06-14T22:32:38.000Z","size":143829,"stargazers_count":7,"open_issues_count":34,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-01T12:51:47.283Z","etag":null,"topics":["clickhouse","ddd","docker","elasticsearch","hbase","interview","java","jdk","jvm","kafka","mysql","netty","rabbitmq","redis","spark","spring","springboot","tomcat","vue","zookeeper"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nivelle.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-04-25T09:54:40.000Z","updated_at":"2023-05-22T13:40:42.000Z","dependencies_parsed_at":"2024-10-28T12:46:00.460Z","dependency_job_id":null,"html_url":"https://github.com/nivelle/java-all","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nivelle%2Fjava-all","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nivelle%2Fjava-all/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nivelle%2Fjava-all/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nivelle%2Fjava-all/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nivelle","download_url":"https://codeload.github.com/nivelle/java-all/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244181419,"owners_count":20411603,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["clickhouse","ddd","docker","elasticsearch","hbase","interview","java","jdk","jvm","kafka","mysql","netty","rabbitmq","redis","spark","spring","springboot","tomcat","vue","zookeeper"],"created_at":"2024-10-13T11:47:52.265Z","updated_at":"2025-03-22T04:30:39.900Z","avatar_url":"https://github.com/nivelle.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"## java 编程每天学\n\n### notes 多数文章来自网上优秀文章摘要整合,学习时自己记录的笔记\n\n### 依赖环境: \n\n- **JDK版本:1.8;**\n- **Mysql版本:8.0.16;**\n- **Kafka版本:2.2.1;** \n- **RabbitMQ版本:3.7.15;** \n- **Redis版本:5.0.4;** \n- **Maven版本:3.6.1** \n- **ZooKeeper版本:3.4.13;**\n- **Nginx版本:1.17.1**\n- **Dubbo版本：0.2.0**\n- **Elasticsearch版本：6.8.6**\n- **MongoDB版本：v4.0.9**\n- **ClickHouse版本:21.1.3**\n- **Spark版本：3.1.0**\n\n#### docker整合\n\n- 【下载:docker pull nivelle/nivelle:1.0.2】\n\n- 【运行:sudo docker run -p 28080:8088 -it --rm nivelle/nivelle:1.0.2 bash \n\n\n#### 使用的工具\n\n✅ 【asm bytecode outline】 代码编译\n\n--------------------\n\n### spring-all项目\n\n✅ 【spring refresh()方法学习路径】\n\n✅ 【生命周期学习】\n\n✅ 【CommandLineRunner】\n\n✅ 【shutdown 实现优雅停机】\n\n✅ 【InitializingBean】\n\n✅ 【BeanFactoryAware】\n\n✅ 【FactoryBean】\n\n✅ 【ApplicationContextAware】\n\n✅ 【EmbeddedValueResolverAware】\n\n✅ 【SpringAOP】\n\n✅ 【BeanDefinitionRegistryPostProcessor】\n\n✅ 【springApplicationRunListeners:springBoot自带事件】\n\n✅ 【ContextRefreshedEvent:spring自带监听器】\n\n✅ 【ServletContextListener:servlet容器监听器】\n\n✅ 【ApplicationEvent:自定义事件】\n\n✅ 【javaConfig:配置类】\n\n✅ 【validate:注解校验】\n \n✅ 【exception:全局异常处理】 \n\n✅ 【Filter:过滤器】\n\n✅ 【interceptor:拦截器】\n\n✅ 【starter:自定义starter】\n\n✅ 【xml:对xml格式参数的支持】\n\n✅ 【消息转化:HttpMessageConverters】\n\n✅ 【Shiro:权限管理】\n\n✅ 【定时任务】\n\n✅ 【swagger:接口文档自动生成】\n\n✅ 【JdbcTemplate \u0026\u0026 Mybatis 多数据源配置整合】\n\n✅ 【CorsFilter 解决跨域问题】\n\n✅ 【xml配置文件扫描】\n\n✅ 【@Async\u0026@EnableAsync】\n\n✅ 【@Lazy\u0026@Scope\u0026@ComponentScan】\n\n✅ 【自定义扫描过滤器】\n\n✅ 【@Profile】\n\n✅ 【AbstractGenericHttpMessageConverter】\n\n✅ 【HandlerMethodArgumentResolver:请求参数消息转换器】\n\n✅ 【HandlerMethodReturnValueHandler:返回消息转换器】\n\n✅ 【RequestBodyAdvice】\n\n✅ 【ResponseBodyAdvice】\n\n✅ 【ApplicationRunner\u0026\u0026CommandLineRunner】\n\n✅ 【WebMvcConfigurer \u0026\u0026 @EnableWebMvc】\n\n✅ 【@Scheduled】\u0026\u0026 【@EnableScheduling】\n\n✅ 【TestNG】\n\n✅ 【ignoreDependencyInterface】\n\n✅ 【registerResolvableDependency】\n\n\n--------------------\n\n### middleware项目\n\n✅ 【mybatis 整合到springBoot】\n\n✅ 【mybatis 使用redis做缓存组件】\n\n\n##### JVM实践\n\n✅ 【自定义类加载器】\n\n✅ 【类实例化过程实例】\n\n\n#### zookeeper实践\n\n⌛ 自己实现RPC \n\n✅ 【zookeeper选主】\n\n✅ 【zookeeper分布式锁】\n\n⌛ 分布式事物\n\n\n##### Redis实践\n\n✅ 【redis实践】\n\n#### RabbitMQ\n\n✅ 【rabbitMQ】\n\n#### Kafka\n\n✅【Produce】\n\n✅【Consumer】\n\n✅【Filter:过滤器】\n\n✅【ErrorHandler】\n\n✅【Partitioner:自定义分区】\n\n#### MySQL实践\n\n✅ 【mysql常用语句】\n\n✅️ 乐观锁，悲观锁，事物，传播特性\n\n✅ 【mysql explain】\n\n\n#### HBase实践\n\n✅【put】\n\n✅【scan】\n\n✅【get】\n\n✅【delete】\n\n✅【delete所有版本数据】\n\n#### Netty实践 \n\n✅【客户端\u0026服务端】\n\n✅【EventLoop】\n\n✅【EventLoopGroup】\n\n✅【ChannelInbound】\n\n✅【ChannelOutbound】\n\n\n\n\n--------------------------\n\n\n### container-all项目\n\n#### Tomcat实践\n\n✅ 【SPI\u0026SCI机制】\n\n✅ 【AbstractAnnotationConfigDispatcherServletInitializer】\n\n✅ 【ServletContainerInitializer】\n\n✅ 【ServletContextInitializer】\n\n✅ 【SpringBootServletInitializer】\n\n✅ 【SpringServletContainerInitializer】\n\n✅ 【WebApplicationInitializer】\n\n-------------------------\n\n### rpc-base\n\n✅ 【ConfigurableServletWebServerFactory:自定义Tomcat】\n\n✅ 【dubbo service】\n\n✅ 【AsyncService】\n\n### java-base项目\n\n#### 算法实践\n\n✅ 【有序二维数组查】\n\n✅ 【空格字符窜替换】\n\n✅ 【从尾到头打印数组】\n\n✅ 【构建二叉树】\n\n✅ 【两个栈实现队列】\n\n✅ 【最小旋转数组】\n\n✅ 【斐波那契数列】\n\n✅ 【二进制1的个数】\n\n✅ 【数值的整数次方】\n\n✅ 【数组奇数偶数相对排序】\n\n#### Java2e实践\n\n✅【自定义注解】\n\n✅【动态代理】\n\n✅【多线程示例】\n\n✅【jdk8 Lambda表达式,Stream的使用】\n\n✅【java 关键字(instanceof,final,continue)】\n\n✅【范型:范型类,范性方法,范型接口】\n\n✅【java序列化】\n\n#### JDK源码\n\n✅【Integer】\n\n✅【String】\n\n✅【Float】\n\n✅【Byte】\n\n✅【Long】\n\n--- \n✅【BigDecimal】\n\n✅【Enum】\n\n✅【Math】\n\n✅【System】 \n\n✅【Unsafe】\n\n✅【Reflection】\n\n✅【Object】\n\n✅【Thread】\n\n✅【striped64】 \n\n✅【Contended】 \n\n--------------------\n\n✅【ArrayList】\n\n✅【LinkedList】\n\n✅【HashMap】\n\n✅【LinkedHashMap】\n\n✅【TreeMap】\n\n✅【TreeSet】\n\n✅【WeakHashMap】\n\n✅【HashSet】\n\n✅【LinkedHashSet】\n\n✅【Stack】\n\n✅【DelayQueue】\n\n--------------------\n\n✅【ThreadPool】\n\n✅【ScheduledThreadPoolExecutor】\n\n✅【ThreadLocal】\n\n✅【CountDownLatch】\n\n✅【ConcurrentHashMap】\n\n✅【LongAccumulator】\n\n✅【LongAdder】\n\n✅【AtomicStampedReference】\n\n✅【AtomicInteger】\n\n✅【ArrayDeque】\n\n✅【PriorityQueue】\n\n✅【ArrayBlockingQueue】\n\n✅【LinkedBlockingQueue】\n\n✅【PriorityBlockingQueue】\n\n✅【SynchronizedQueue】\n\n✅【ConcurrentSkipListMap】\n\n✅【CopyOnWriteArrayList】\n\n✅【CopyOnWriteArraySet】\n\n✅【ConcurrentLinkedQueue】\n\n✅【LinkedTransferQueue】\n\n✅【CyclicBarrier】\n\n✅【Phaser】\n\n✅【Condition】\n\n✅【ReentrantReadWriteLock】\n\n✅【Semaphore】\n\n✅【StampedLock】\n\n✅【LockSupport】\n\n✅【FutureTask】\n\n✅【ForkJoin】\n\n✅【AtomicIntegerArray】\n\n✅【ThreadLocalRandom】\n\n\n#### 设计模式实践\n\n✅ 【迭代器模式】\n\n✅ 【适配器模式】\n\n✅ 【模板方法模式】\n\n✅ 【工厂方法模式】\n\n✅ 【代理模式】\n\n✅ 【责任链模式】\n\n✅ 【桥梁模式】\n\n✅ 【策略模式】\n \n✅ 【构建模式】\n\n✅ 【抽象工厂模式】\n\n✅ 【观察者模式】\n\n✅ 【写时复制模式】\n\n✅ 【Balking模式】\n\n✅ 【等待唤醒模式】\n\n✅ 【不可变模式】\n\n✅ 【生产者消费者模式】\n\n✅ 【线程本地存储模式】\n\n✅ 【Thread-Per-Message模式】\n\n✅ 【两阶段终止模式】\n\n\n-------------------------\n\n#### 基础学习\n\n✅【git 指令学习】\n\n✅【linux 基础指令】\n\n✅【shell 编程】\n\n✅【docker 学习】\n\n✅【nginx 基础】\n\n✅【maven 基础】\n\n----------------------------\n\n### bigdata\n\n#### Spark\n\n✅ 【Spark 实践】\n\n#### Flink\n\n#### Kafka\n\n✅ 【Kafka 实践】\n\n#### clickHouse\n\n✅ 【clickHouse 实践】\n\n#### Mongo实践\n\n✅ 【mongoDB 实践】\n\n#### ElasticSearch实践\n\n✅ 【ElasticSearch实践】\n\n#### Kibana\n\n✅ 【Kibana实践】\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnivelle%2Fjava-all","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnivelle%2Fjava-all","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnivelle%2Fjava-all/lists"}