| route-pattern | /:user_id/:repository |
| route-controller | files |
| route-action | disambiguate |
| fetch-nonce | v2:f98a88f5-a127-85ca-6d30-7fd80dbda605 |
| current-catalog-service-hash | f3abb0cc802f3d7b95fc8762b94bdcb13bf39634c40c357301c4aa1d67a256fb |
| request-id | 9F04:8A40C:1301B47:1901691:696EC9BB |
| html-safe-nonce | 91fbadd5e2793e2e68a37b4a9d00bbe4e641112da074486ffcb229014ef9821c |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI5RjA0OjhBNDBDOjEzMDFCNDc6MTkwMTY5MTo2OTZFQzlCQiIsInZpc2l0b3JfaWQiOiIyMDMyMjI3OTE0NjE3ODk5NDUxIiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0= |
| visitor-hmac | 3c72703d7d59cc31ea48fc6ea45c10d1fb7f52d06f6ae4ffc8e6eb1adf12bb65 |
| hovercard-subject-tag | repository:248112204 |
| github-keyboard-shortcuts | repository,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | // |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/GalenZhang/JavaInterview |
| twitter:image | https://opengraph.githubassets.com/7676b32c285c6495b393ef46e1106c0859e08f1d5547b9ca5e6b2a731b08ec39/GalenZhang/JavaInterview |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/7676b32c285c6495b393ef46e1106c0859e08f1d5547b9ca5e6b2a731b08ec39/GalenZhang/JavaInterview |
| og:image:alt | Java面试整理,涵盖基础、JVM、线程并发、框架、MySQL、微服务、Redis、中间件、数据结构与算法等。陆续完善中 - GalenZhang/JavaInterview |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| hostname | github.com |
| expected-hostname | github.com |
| None | b278ad162d35332b6de714dfb005de04386c4d92df6475522bef910f491a35ee |
| turbo-cache-control | no-preview |
| go-import | github.com/GalenZhang/JavaInterview git https://github.com/GalenZhang/JavaInterview.git |
| octolytics-dimension-user_id | 7521518 |
| octolytics-dimension-user_login | GalenZhang |
| octolytics-dimension-repository_id | 248112204 |
| octolytics-dimension-repository_nwo | GalenZhang/JavaInterview |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | true |
| octolytics-dimension-repository_parent_id | 245599072 |
| octolytics-dimension-repository_parent_nwo | gsjqwyl/JavaInterview |
| octolytics-dimension-repository_network_root_id | 245599072 |
| octolytics-dimension-repository_network_root_nwo | gsjqwyl/JavaInterview |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 39aed5006635ab6f45e6b77d23e73b08a00272a3 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
| Skip to content | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#start-of-content |
|
| https://patch-diff.githubusercontent.com/ |
|
Sign in
| https://patch-diff.githubusercontent.com/login?return_to=https%3A%2F%2Fgithub.com%2FGalenZhang%2FJavaInterview |
| GitHub CopilotWrite better code with AI | https://github.com/features/copilot |
| GitHub SparkBuild and deploy intelligent apps | https://github.com/features/spark |
| GitHub ModelsManage and compare prompts | https://github.com/features/models |
| MCP RegistryNewIntegrate external tools | https://github.com/mcp |
| ActionsAutomate any workflow | https://github.com/features/actions |
| CodespacesInstant dev environments | https://github.com/features/codespaces |
| IssuesPlan and track work | https://github.com/features/issues |
| Code ReviewManage code changes | https://github.com/features/code-review |
| GitHub Advanced SecurityFind and fix vulnerabilities | https://github.com/security/advanced-security |
| Code securitySecure your code as you build | https://github.com/security/advanced-security/code-security |
| Secret protectionStop leaks before they start | https://github.com/security/advanced-security/secret-protection |
| Why GitHub | https://github.com/why-github |
| Documentation | https://docs.github.com |
| Blog | https://github.blog |
| Changelog | https://github.blog/changelog |
| Marketplace | https://github.com/marketplace |
| View all features | https://github.com/features |
| Enterprises | https://github.com/enterprise |
| Small and medium teams | https://github.com/team |
| Startups | https://github.com/enterprise/startups |
| Nonprofits | https://github.com/solutions/industry/nonprofits |
| App Modernization | https://github.com/solutions/use-case/app-modernization |
| DevSecOps | https://github.com/solutions/use-case/devsecops |
| DevOps | https://github.com/solutions/use-case/devops |
| CI/CD | https://github.com/solutions/use-case/ci-cd |
| View all use cases | https://github.com/solutions/use-case |
| Healthcare | https://github.com/solutions/industry/healthcare |
| Financial services | https://github.com/solutions/industry/financial-services |
| Manufacturing | https://github.com/solutions/industry/manufacturing |
| Government | https://github.com/solutions/industry/government |
| View all industries | https://github.com/solutions/industry |
| View all solutions | https://github.com/solutions |
| AI | https://github.com/resources/articles?topic=ai |
| Software Development | https://github.com/resources/articles?topic=software-development |
| DevOps | https://github.com/resources/articles?topic=devops |
| Security | https://github.com/resources/articles?topic=security |
| View all topics | https://github.com/resources/articles |
| Customer stories | https://github.com/customer-stories |
| Events & webinars | https://github.com/resources/events |
| Ebooks & reports | https://github.com/resources/whitepapers |
| Business insights | https://github.com/solutions/executive-insights |
| GitHub Skills | https://skills.github.com |
| Documentation | https://docs.github.com |
| Customer support | https://support.github.com |
| Community forum | https://github.com/orgs/community/discussions |
| Trust center | https://github.com/trust-center |
| Partners | https://github.com/partners |
| GitHub SponsorsFund open source developers | https://github.com/sponsors |
| Security Lab | https://securitylab.github.com |
| Maintainer Community | https://maintainers.github.com |
| Accelerator | https://github.com/accelerator |
| Archive Program | https://archiveprogram.github.com |
| Topics | https://github.com/topics |
| Trending | https://github.com/trending |
| Collections | https://github.com/collections |
| Enterprise platformAI-powered developer platform | https://github.com/enterprise |
| GitHub Advanced SecurityEnterprise-grade security features | https://github.com/security/advanced-security |
| Copilot for BusinessEnterprise-grade AI features | https://github.com/features/copilot/copilot-business |
| Premium SupportEnterprise-grade 24/7 support | https://github.com/premium-support |
| Pricing | https://github.com/pricing |
| Search syntax tips | https://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax |
| documentation | https://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax |
|
Sign in
| https://patch-diff.githubusercontent.com/login?return_to=https%3A%2F%2Fgithub.com%2FGalenZhang%2FJavaInterview |
|
Sign up
| https://patch-diff.githubusercontent.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E&source=header-repo&source_repo=GalenZhang%2FJavaInterview |
| Reload | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview |
| Reload | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview |
| Reload | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview |
|
GalenZhang
| https://patch-diff.githubusercontent.com/GalenZhang |
| JavaInterview | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview |
| gsjqwyl/JavaInterview | https://patch-diff.githubusercontent.com/gsjqwyl/JavaInterview |
|
Notifications
| https://patch-diff.githubusercontent.com/login?return_to=%2FGalenZhang%2FJavaInterview |
|
Fork
0
| https://patch-diff.githubusercontent.com/login?return_to=%2FGalenZhang%2FJavaInterview |
|
Star
0
| https://patch-diff.githubusercontent.com/login?return_to=%2FGalenZhang%2FJavaInterview |
|
0
stars
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/stargazers |
|
350
forks
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/forks |
|
Branches
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/branches |
|
Tags
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/tags |
|
Activity
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/activity |
|
Star
| https://patch-diff.githubusercontent.com/login?return_to=%2FGalenZhang%2FJavaInterview |
|
Notifications
| https://patch-diff.githubusercontent.com/login?return_to=%2FGalenZhang%2FJavaInterview |
|
Code
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview |
|
Pull requests
0
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/pulls |
|
Actions
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/actions |
|
Projects
0
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/projects |
|
Security
Uh oh!
There was an error while loading. Please reload this page.
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/security |
| Please reload this page | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview |
|
Insights
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/pulse |
|
Code
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview |
|
Pull requests
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/pulls |
|
Actions
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/actions |
|
Projects
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/projects |
|
Security
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/security |
|
Insights
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/pulse |
| Branches | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/branches |
| Tags | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/tags |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/branches |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/tags |
| 4 Commits | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/commits/master/ |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/commits/master/ |
| README.md | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/blob/master/README.md |
| README.md | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/blob/master/README.md |
| qr_code.jpg | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/blob/master/qr_code.jpg |
| qr_code.jpg | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/blob/master/qr_code.jpg |
| README | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/blob/master/qr_code.jpg |
| 基础篇 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#--- |
| 1、 Java语言有哪些特点 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1--java------- |
| 2、面向对象和面向过程的区别 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2------------- |
| 3 、八种基本数据类型的大小,以及他们的封装类 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3---------------------- |
| 4、标识符的命名规则。 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4---------- |
| 5、instanceof 关键字的作用 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5-instanceof------- |
| 6、Java自动装箱与拆箱 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#6-java------- |
| 7、 重载和重写的区别 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#7---------- |
| 8、 equals与==的区别 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#8--equals------ |
| 9、 Hashcode的作用 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#9--hashcode--- |
| 10、String、String StringBuffer 和 StringBuilder 的区别是什么? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#10-string-string-stringbuffer---stringbuilder-------- |
| 11、ArrayList和linkedList的区别 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#11-arraylist-linkedlist--- |
| 12、 HashMap和HashTable的区别 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#12--hashmap-hashtable--- |
| 13、 Collection包结构,与Collections的区别 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#13--collection-----collections--- |
| 14、 Java的四种引用,强弱软虚 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#14--java---------- |
| 15、 泛型常用特点 (待补充) | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#15-------------- |
| 16、Java创建对象有几种方式? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#16-java---------- |
| 17、有没有可能两个不相等的对象有相同的hashcode | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#17------------------hashcode |
| 18、深拷贝和浅拷贝的区别是什么? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#18--------------- |
| 19、final有哪些用法? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#19-final------ |
| 20、static都有哪些用法? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#20-static------- |
| 21、3*0.1==0.3返回值是什么 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#21-3-01----03------ |
| 22、a=a+b与a+=b有什么区别吗? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#22-a-a-b-a--b------- |
| 23、try catch finally,try里有return,finally还执行么? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#23-try-catch-finally-try--return-finally----- |
| 24、 Excption与Error包结构 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#24--excption-error--- |
| 25、OOM你遇到过哪些情况,SOF你遇到过哪些情况 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#25-oom---------sof-------- |
| 26、 简述线程、程序、进程的基本概念。以及他们之间关系是什么? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#26------------------------------ |
| 27、线程有哪些基本状态?(补充) | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#27--------------- |
| 28、Java 序列化中如果有些字段不想进行序列化,怎么办? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#28-java----------------------- |
| 29、Java 中 IO 流 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#29-java---io-- |
| 30、 Java IO与 NIO的区别(补充) | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#30--java-io--nio------- |
| 31、java反射的作用于原理 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#31-java-------- |
| 32、说说List,Set,Map三者的区别? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#32---list-set-map------ |
| JVM篇 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#jvm- |
| 1、知识点汇总 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1------ |
| 2、知识点详解: | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2------- |
| 3、类加载与卸载 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3------- |
| 4、简述一下JVM的内存模型 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4-----jvm----- |
| 线程私有区 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#----- |
| 线程共享区 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#----- |
| 5、堆和栈的区别 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5------- |
| 6、 什么时候会触发FullGC | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#6---------fullgc |
| 7、什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#7----java-------java---------------- |
| 8、Java内存结构 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#8-java---- |
| 9、对象分配规则 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#9------- |
| 10、描述一下JVM加载class文件的原理机制? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#10-----jvm--class-------- |
| 11、Java对象创建过程 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#11-java------ |
| 12、类的生命周期 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#12------- |
| 13、简述Java的对象结构 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#13---java----- |
| 14、如何判断对象可以被回收? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#14------------- |
| 15、JVM的永久代中会发生垃圾回收么? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#15-jvm-------------- |
| 16、垃圾收集算法 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#16------- |
| 17、调优命令有哪些? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#17--------- |
| 18、调优工具 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#18----- |
| 19、Minor GC与Full GC分别在什么时候发生? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#19-minor-gc-full-gc---------- |
| 20、你知道哪些JVM性能调优 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#20------jvm---- |
| 多线程&并发篇 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#------- |
| 1、Java中实现多线程有几种方法 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1-java----------- |
| 2、如何停止一个正在运行的线程 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2-------------- |
| 3、notify()和notifyAll()有什么区别? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3-notify---notifyall-------- |
| 4、sleep()和wait() 有什么区别? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4-sleep---wait--------- |
| 5、volatile 是什么?可以保证有序性吗? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5-volatile-------------- |
| 6、Thread 类中的start() 和 run() 方法有什么区别? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#6-thread----start-----run----------- |
| 7、为什么wait, notify 和 notifyAll这些方法不在thread类里面? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#7----wait--notify---notifyall------thread---- |
| 8、为什么wait和notify方法要在同步块中调用? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#8----wait-notify----------- |
| 9、Java中interrupted 和 isInterruptedd方法的区别? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#9-java-interrupted---isinterruptedd------ |
| 10、Java中synchronized 和 ReentrantLock 有什么不同? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#10-java-synchronized---reentrantlock------- |
| 11、有三个线程T1,T2,T3,如何保证顺序执行? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#11------t1-t2-t3---------- |
| 12、SynchronizedMap和ConcurrentHashMap有什么区别? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#--12-synchronizedmap-concurrenthashmap-------- |
| 13、什么是线程安全 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#13-------- |
| 14、Thread类中的yield方法有什么作用? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#14-thread---yield-------- |
| 15、Java线程池中submit() 和 execute()方法有什么区别? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#15-java----submit-----execute---------- |
| 16、说一说自己对于 synchronized 关键字的了解 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#16---------synchronized------- |
| 17、说说自己是怎么使用 synchronized 关键字,在项目中用到了吗synchronized关键字最主要的三种使用方式: | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#17-----------synchronized-------------synchronized-------------- |
| 18、什么是线程安全?Vector是一个线程安全类吗? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#18---------vector---------- |
| 19、 volatile关键字的作用? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#19----volatile--------- |
| 20、常用的线程池有哪些? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#20----------- |
| 21、简述一下你对线程池的理解 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#21------------- |
| 22、Java程序是如何执行的 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#22-java-------- |
| Spring篇 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#spring- |
| 1、 Spring的IOC和AOP机制? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1--spring-ioc-aop--- |
| 2、 Spring中Autowired和Resource关键字的区别? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2--spring-autowired-resource------- |
| 3、依赖注入的方式有几种,各是什么? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3----------------- |
| 4、讲一下什么是Spring | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4-------spring |
| 5、Spring MVC流程 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5-spring-mvc-- |
| 6、SpringMVC怎么样设定重定向和转发的? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#6-springmvc------------- |
| 7、 SpringMVC常用的注解有哪些? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#7-----springmvc----------- |
| 8、 Spring的AOP理解: | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#8----spring-aop----- |
| 9、Spring的IOC理解 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#9-spring-ioc-- |
| 10、解释一下spring bean的生命周期 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#10-----spring-bean----- |
| 11、 解释Spring支持的几种bean的作用域。 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#11------spring-----bean------- |
| 12、 Spring基于xml注入bean的几种方式: | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#12----spring--xml--bean-------- |
| 13、Spring框架中都用到了哪些设计模式? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#13-spring-------------- |
| MyBatis篇 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#mybatis- |
| 1、什么是MyBatis | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1----mybatis |
| 2、MyBatis的优点和缺点 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2-mybatis------ |
| 3、#{}和${}的区别是什么? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3--------------- |
| 4、当实体类中的属性名和表中的字段名不一样 ,怎么办 ? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4--------------------------- |
| 5、Mybatis是如何进行分页的?分页插件的原理是什么? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5-mybatis-------------------- |
| 6、Mybatis是如何将sql执行结果封装为目标对象并返回的?都有哪些映射形式? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#6-mybatis----sql------------------------- |
| 7、 如何执行批量插入? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#7----------- |
| 8、Xml映射文件中,除了常见的select|insert|updae|delete标签之外,还有哪些标签? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#8-xml-----------select-insert-updae-delete------------ |
| 9、MyBatis实现一对一有几种方式?具体怎么操作的? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#9-mybatis------------------- |
| 10、Mybatis是否支持延迟加载?如果支持,它的实现原理是什么? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#10-mybatis------------------------ |
| 11、Mybatis的一级、二级缓存: | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#11-mybatis--------- |
| SpringBoot篇 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#springboot- |
| 1、为什么要用SpringBoot | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1------springboot |
| 2、Spring Boot 的核心注解是哪个?它主要由哪几个注解组成的? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2-spring-boot----------------------- |
| 3、运行Spring Boot有哪几种方式? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3---spring-boot------- |
| 4、如何理解 Spring Boot 中的 Starters? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4------spring-boot----starters- |
| 5、 如何在Spring Boot启动的时候运行一些特定的代码? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5-----spring-boot--------------- |
| 6、 Spring Boot 需要独立的容器运行吗? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#6----spring-boot-------------- |
| 7、 Spring Boot中的监视器是什么? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#7----spring-boot----------- |
| 8、 如何使用Spring Boot实现异常处理? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#8--------spring-boot--------- |
| 9、 你如何理解 Spring Boot 中的 Starters? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#9----------spring-boot----starters--- |
| 10、 springboot常用的starter有哪些 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#10----springboot---starter----- |
| 11、 SpringBoot 实现热部署有哪几种方式? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#11----springboot--------------- |
| 12、 如何理解 Spring Boot 配置加载顺序? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#12---------spring-boot---------- |
| 13、 Spring Boot 的核心配置文件有哪几个?它们的区别是什么? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#13----spring-boot------------------------ |
| 14、如何集成 Spring Boot 和 ActiveMQ? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#14------spring-boot---activemq- |
| MySQL篇 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#mysql- |
| 1、数据库的三范式是什么 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1----------- |
| 2、数据库引擎有哪些 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2--------- |
| 3、InnoDB与MyISAM的区别 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3-innodb-myisam--- |
| 4、数据库的事务 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4------- |
| 5、索引问题 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5----- |
| 6、SQL优化 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#6-sql-- |
| 7、简单说一说drop、delete与truncate的区别 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#7------drop-delete-truncate--- |
| 8、什么是视图 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#8------ |
| 9、 什么是内联接、左外联接、右外联接? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#9------------------- |
| 10、并发事务带来哪些问题? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#10------------ |
| 事务隔离级别有哪些?MySQL的默认隔离级别是? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#----------mysql--------- |
| 大表如何优化? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#------- |
| 1. 限定数据的范围 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1-------- |
| 2. 读/写分离 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2------ |
| 3. 垂直分区 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3----- |
| 4. 水平分区 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4----- |
| 5、分库分表之后,id 主键如何处理? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5--------id-------- |
| Redis篇 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#redis- |
| 1、Redis持久化机制 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1-redis----- |
| 2、缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级等问题 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2---------------------------- |
| 3、热点数据和冷数据是什么 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3------------ |
| 4、Memcache与Redis的区别都有哪些? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4-memcache-redis-------- |
| 5、单线程的redis为什么这么快 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5-----redis------ |
| 6、redis的数据类型,以及每种数据类型的使用场景 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#6-redis------------------- |
| 7、redis的过期策略以及内存淘汰机制 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#7-redis------------- |
| 8、Redis 为什么是单线程的 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#8-redis--------- |
| 9、Redis 常见性能问题和解决方案? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#9-redis------------- |
| 10、为什么Redis的操作是原子性的,怎么保证原子性的? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#10----redis------------------ |
| 11、Redis事务 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#11-redis-- |
| SpringCloud篇 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#springcloud- |
| 1、什么是SpringCloud | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1----springcloud |
| 2、什么是微服务 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2------- |
| 3、SpringCloud有什么优势 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3-springcloud----- |
| 4、 什么是服务熔断?什么是服务降级? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4---------------------- |
| 5、 Eureka和zookeeper都可以提供服务注册与发现的功能,请说说两个的区别? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5----eureka-zookeeper--------------------------- |
| 6、SpringBoot和SpringCloud的区别? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#6-springboot-springcloud---- |
| 7、负载平衡的意义什么? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#7----------- |
| 8、什么是Hystrix?它如何实现容错? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#8----hystrix--------- |
| 9、什么是Hystrix断路器?我们需要它吗? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#9----hystrix----------- |
| 10、说说 RPC 的实现原理 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#10----rpc------ |
| Nginx篇 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#nginx- |
| 1、简述一下什么是Nginx,它有什么优势和功能? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1--------nginx----------- |
| 2、Nginx是如何处理一个HTTP请求的呢? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2-nginx-------http----- |
| 3、列举一些Nginx的特性 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3-----nginx--- |
| 4、请列举Nginx和Apache 之间的不同点 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4----nginx-apache------- |
| 5、在Nginx中,如何使用未定义的服务器名称来阻止处理请求? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5--nginx----------------------- |
| 6、请解释Nginx服务器上的Master和Worker进程分别是什么? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#6----nginx-----master-worker-------- |
| 7、请解释代理中的正向代理和反向代理 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#7----------------- |
| 8、解释Nginx用途 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#8---nginx-- |
| MQ篇 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#mq- |
| 1、为什么使用MQ | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1------mq |
| 2、MQ优缺点 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2-mq--- |
| 3、Kafka、ActiveMQ、RabbitMQ、RocketMQ 都有什么区别? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3-kafka-activemq-rabbitmq-rocketmq-------- |
| 4、如何保证高可用的? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4---------- |
| 5、如何保证消息的可靠传输?如果消息丢了怎么办 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5---------------------- |
| 6、如何保证消息的顺序性 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#6----------- |
| 7、 如何解决消息队列的延时以及过期失效问题?消息队列满了以后该怎么处理?有几百万消息持续积压几小时,说说怎么解决? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#7--------------------------------------------------------- |
| 8、设计MQ的思路 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#8---mq--- |
| 数据结构与算法篇 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#-------- |
| 1、常用的数据结构 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1-------- |
| 1. 数组 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1--- |
| 2. 栈 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2-- |
| 3. 队列 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3--- |
| 4. 链表 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4--- |
| 5. 图 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5-- |
| 6. 树 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#6-- |
| 7. 前缀树 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#7---- |
| 8. 哈希表 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#8---- |
| 2、 数据里有{1,2,3,4,5,6,7,8,9},请随机打乱顺序,生成一个新的数组(请以代码实现) | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2-------1-2-3-4-5-6-7-8-9-------------------------- |
| 3、 写出代码判断一个整数是不是2的阶次方(请代码实现,谢绝调用API方法) | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3---------------2---------------api--- |
| 4、 假设今日是2015年3月1日,星期日,请算出13个月零6天后是星期几,距离现在多少天(请用代码实现,谢绝调用API方法) | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4-------2015-3-1---------13---6--------------------------api--- |
| 5、 有两个篮子,分别为A 和 B,篮子A里装有鸡蛋,篮子B里装有苹果,请用面向对象的思想实现两个篮子里的物品交换(请用代码实现) | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5-----------a---b---a--------b----------------------------------- |
| 6、更多算法练习 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#6------- |
| Linux篇 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#linux- |
| 1、 绝对路径用什么符号表示?当前目录、上层目录用什么表示?主目录用什么表示? 切换目录用什么命令? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1------------------------------------------------- |
| 2、 怎么查看当前进程?怎么执行退出?怎么查看当前路径? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2--------------------------- |
| 3、查看文件有哪些命令 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3---------- |
| 4、列举几个常用的Linux命令 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4--------linux-- |
| 5、你平时是怎么查看日志的? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5------------- |
| 简历篇 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#--- |
| 为什么说简历很重要? | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#---------- |
| 先从面试来说 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#------ |
| 再从面试说起 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#------ |
| 必知必会的几点 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#------- |
| 必须了解的两大法则 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#--------- |
| 项目经历怎么写 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#------- |
| 专业技能怎么写 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#------- |
| 排版注意事项 | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#------ |
| 其他一些小tips | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#-----tips |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#基础篇 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1-java语言有哪些特点 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2面向对象和面向过程的区别 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3-八种基本数据类型的大小以及他们的封装类 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4标识符的命名规则 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5instanceof-关键字的作用 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#6java自动装箱与拆箱 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#7-重载和重写的区别 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#8-equals与的区别 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#9-hashcode的作用 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#10stringstring-stringbuffer-和-stringbuilder-的区别是什么 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#11arraylist和linkedlist的区别 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#12-hashmap和hashtable的区别 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#13-collection包结构与collections的区别 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#14-java的四种引用强弱软虚 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#15-泛型常用特点-待补充 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#16java创建对象有几种方式 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#17有没有可能两个不相等的对象有相同的hashcode |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#18深拷贝和浅拷贝的区别是什么 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#19final有哪些用法 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#20static都有哪些用法 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2130103返回值是什么 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#22aab与ab有什么区别吗 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#23try-catch-finallytry里有returnfinally还执行么 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#24-excption与error包结构 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#25oom你遇到过哪些情况sof你遇到过哪些情况 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#26-简述线程程序进程的基本概念以及他们之间关系是什么 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#27线程有哪些基本状态补充 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#28java-序列化中如果有些字段不想进行序列化怎么办 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#29java-中-io-流 |
| https://camo.githubusercontent.com/639ec442b39898de071c3e4fd098215fb48f11e9/68747470733a2f2f6d792d626c6f672d746f2d7573652e6f73732d636e2d6265696a696e672e616c6979756e63732e636f6d2f323031392d362f494f2d2545362539332538442545342542442539432545362539362542392545352542432538462545352538382538362545372542312542422e706e67 |
| https://camo.githubusercontent.com/4a44e49ab13eacac26cbb0e481db73d6d11181b7/68747470733a2f2f6d792d626c6f672d746f2d7573652e6f73732d636e2d6265696a696e672e616c6979756e63732e636f6d2f323031392d362f494f2d2545362539332538442545342542442539432545352541462542392545382542312541312545352538382538362545372542312542422e706e67 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#30-java-io与-nio的区别补充 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#31java反射的作用于原理 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#32说说listsetmap三者的区别 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#jvm篇 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1知识点汇总 |
| https://camo.githubusercontent.com/d10a33c88557ce17a1d799df82ab7c931d3c895d330b17df6fcbc563c85f3b77/68747470733a2f2f696d672d626c6f672e6373646e696d672e636e2f32303139303532393130303135373431362e706e673f782d6f73732d70726f636573733d696d6167652f77617465726d61726b2c747970655f5a6d46755a33706f5a57356e6147567064476b2c736861646f775f31302c746578745f6148523063484d364c7939696247396e4c6d4e7a5a473475626d56304c326876626d6436614756754f54453d2c73697a655f31342c636f6c6f725f4646464646462c745f3730 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2知识点详解 |
| https://camo.githubusercontent.com/06e9c834f9e71ccf6a6465a73fd8425feb08133841958366bcf43a83dd4e1a20/68747470733a2f2f696d672d626c6f672e6373646e696d672e636e2f32303139303532393130303535393437332e706e673f782d6f73732d70726f636573733d696d6167652f77617465726d61726b2c747970655f5a6d46755a33706f5a57356e6147567064476b2c736861646f775f31302c746578745f6148523063484d364c7939696247396e4c6d4e7a5a473475626d56304c326876626d6436614756754f54453d2c73697a655f31322c636f6c6f725f4646464646462c745f3730 |
| https://camo.githubusercontent.com/bb9978a1bdb1323f23f42d5e0a22ec37e75e0c6e75c47933fd81218508adc30b/68747470733a2f2f696d672d626c6f672e6373646e696d672e636e2f32303139303532393130303631363230362e706e67 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3类加载与卸载 |
| https://camo.githubusercontent.com/28c261a3464e176469be0a2b6fdbb7123509db6ad4efb6a3315017067d9d2c88/68747470733a2f2f696d672d626c6f672e6373646e696d672e636e2f32303139303532393130303634313232302e706e673f782d6f73732d70726f636573733d696d6167652f77617465726d61726b2c747970655f5a6d46755a33706f5a57356e6147567064476b2c736861646f775f31302c746578745f6148523063484d364c7939696247396e4c6d4e7a5a473475626d56304c326876626d6436614756754f54453d2c73697a655f31322c636f6c6f725f4646464646462c745f3730 |
| https://camo.githubusercontent.com/642449f0ffbe33734d2d06836f2cb68fbb9be5f2f2ef005ef827a9e82bdc49f8/68747470733a2f2f696d672d626c6f672e6373646e696d672e636e2f323031393035323931303037353335322e706e673f782d6f73732d70726f636573733d696d6167652f77617465726d61726b2c747970655f5a6d46755a33706f5a57356e6147567064476b2c736861646f775f31302c746578745f6148523063484d364c7939696247396e4c6d4e7a5a473475626d56304c326876626d6436614756754f54453d2c73697a655f31302c636f6c6f725f4646464646462c745f3730 |
| https://camo.githubusercontent.com/50dfdc20acf1df03a3f038b903960ee1e20c0a8d38c61ed46d95762414438062/68747470733a2f2f696d672d626c6f672e6373646e696d672e636e2f32303139303532393130303832343531322e706e67 |
| https://camo.githubusercontent.com/7b700692c4583d4974a53da9ff14095faa2eb67a222aaedcdc2cb5670a113ae1/68747470733a2f2f696d672d626c6f672e6373646e696d672e636e2f32303139303532393130313232323634382e706e673f782d6f73732d70726f636573733d696d6167652f77617465726d61726b2c747970655f5a6d46755a33706f5a57356e6147567064476b2c736861646f775f31302c746578745f6148523063484d364c7939696247396e4c6d4e7a5a473475626d56304c326876626d6436614756754f54453d2c73697a655f31302c636f6c6f725f4646464646462c745f3730 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4简述一下jvm的内存模型 |
| 官方网站 | https://link.jianshu.com?t=http://www.oracle.com/webfolder/technetwork/tutorials/obe/java/gc01/index.html |
| https://camo.githubusercontent.com/a5e22c23ea6421cdec1780b8ffb0187a33731881437493b759a271dd8d18ff64/68747470733a2f2f75706c6f61642d696d616765732e6a69616e7368752e696f2f75706c6f61645f696d616765732f353332313735302d373135336564636436303938326662622e706e673f696d6167654d6f6772322f6175746f2d6f7269656e742f7374726970253743696d61676556696577322f322f772f3936302f666f726d61742f77656270 |
| https://camo.githubusercontent.com/74efa5e2bbb883895ea22c511a4954997357b3f30666a1f4c0710380e7f616f4/68747470733a2f2f75706c6f61642d696d616765732e6a69616e7368752e696f2f75706c6f61645f696d616765732f353332313735302d663735643966313931393037646464612e706e673f696d6167654d6f6772322f6175746f2d6f7269656e742f7374726970253743696d61676556696577322f322f772f3734362f666f726d61742f77656270 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#线程私有区 |
| https://camo.githubusercontent.com/ec0b406a34b1291e1d4d194c82ef76d95df8eed67231120d808a8bdcdeb71de5/68747470733a2f2f75706c6f61642d696d616765732e6a69616e7368752e696f2f75706c6f61645f696d616765732f353332313735302d616136306165336239323235643039662e706e673f696d6167654d6f6772322f6175746f2d6f7269656e742f7374726970253743696d61676556696577322f322f772f3630362f666f726d61742f77656270 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#线程共享区 |
| https://camo.githubusercontent.com/c47614f4df186ae708b23d31c35131d26ae6f9e07c157dc11aaa0a8fac6f30f9/68747470733a2f2f75706c6f61642d696d616765732e6a69616e7368752e696f2f75706c6f61645f696d616765732f353332313735302d396534633237656364666565336435382e706e673f696d6167654d6f6772322f6175746f2d6f7269656e742f7374726970253743696d61676556696577322f322f772f3537332f666f726d61742f77656270 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5堆和栈的区别 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#6-什么时候会触发fullgc |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#7什么是java虚拟机为什么java被称作是平台无关的编程语言 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#8java内存结构 |
| https://camo.githubusercontent.com/3d08568d6d5e8bf0b13e737e99a68206fa724808/687474703a2f2f7374617469632e7a7962756c756f2e636f6d2f686f6d6973732f3030327a6f347a61643369393770366935617878313473782f696d6167655f31626c39743671366c6162306f6b6f666f7631756d7637637431332e706e67 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#9对象分配规则 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#10描述一下jvm加载class文件的原理机制 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#11java对象创建过程 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#12类的生命周期 |
| https://camo.githubusercontent.com/e2722f0655be7b02c6f8b128e3675c14e9c0c013/687474703a2f2f7374617469632e7a7962756c756f2e636f6d2f686f6d6973732f737936663436726165787437676c6179673832776274786e2f696d6167655f31626c39743167656731356c6a35387034316b643135316b3639392e706e67 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#13简述java的对象结构 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#14如何判断对象可以被回收 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#15jvm的永久代中会发生垃圾回收么 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#16垃圾收集算法 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#17调优命令有哪些 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#18调优工具 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#19minor-gc与full-gc分别在什么时候发生 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#20你知道哪些jvm性能调优 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#多线程并发篇 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1java中实现多线程有几种方法 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2如何停止一个正在运行的线程 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3notify和notifyall有什么区别 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4sleep和wait-有什么区别 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5volatile-是什么可以保证有序性吗 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#6thread-类中的start-和-run-方法有什么区别 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#7为什么wait-notify-和-notifyall这些方法不在thread类里面 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#8为什么wait和notify方法要在同步块中调用 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#9java中interrupted-和-isinterruptedd方法的区别 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#10java中synchronized-和-reentrantlock-有什么不同 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#11有三个线程t1t2t3如何保证顺序执行 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#12synchronizedmap和concurrenthashmap有什么区别 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#13什么是线程安全 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#14thread类中的yield方法有什么作用 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#15java线程池中submit-和-execute方法有什么区别 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#16说一说自己对于-synchronized-关键字的了解 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#17说说自己是怎么使用-synchronized-关键字在项目中用到了吗synchronized关键字最主要的三种使用方式 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#18什么是线程安全vector是一个线程安全类吗 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#19-volatile关键字的作用 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#20常用的线程池有哪些 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#21简述一下你对线程池的理解 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#22java程序是如何执行的 |
| https://camo.githubusercontent.com/cb845ce39bc7f73806a9f75984cb366bb5a14e4a4605c1ee557dc260849dec0f/68747470733a2f2f70696373372e62616964752e636f6d2f666565642f393932323732306530636633643763616638623232376165636237626536306336613633613930662e706e673f746f6b656e3d356263306131373833343539353836666234653231623133353739393530633926733d4238413035443332313530463635343931383635443034323033303046304631 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#spring篇 |
| 极客学院Spring Wiki | http://wiki.jikexueyuan.com/project/spring/transaction-management.html |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1-spring的ioc和aop机制 |
| https://camo.githubusercontent.com/3b07a520440ff631990c027c2437d131fba25efe/68747470733a2f2f757365722d676f6c642d63646e2e786974752e696f2f323031382f352f32322f313633383739303365653732633833313f773d37303926683d353626663d706e6726733d34363733 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2-spring中autowired和resource关键字的区别 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3依赖注入的方式有几种各是什么 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4讲一下什么是spring |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5spring-mvc流程 |
| https://camo.githubusercontent.com/ca87775fc634ac4753a2c34c62ba096b668ddc177b4d9805afc33195ca7eb5cd/68747470733a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3234393939332f3230313631322f3234393939332d32303136313231323134323534323034322d323131373637393139352e6a7067 |
| https://camo.githubusercontent.com/2c413d383104f7df0d38fc3a4343541d04d78abe580c276c99645d818e1fd8cc/68747470733a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3234393939332f3230313730322f3234393939332d32303137303230373133353935393430312d3430343834313635322e706e67 |
| https://camo.githubusercontent.com/5acede4f8641367ec696f3f769f9ac693cf9824f4dce19f131bb0d463c6fcfa0/68747470733a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3234393939332f3230313730322f3234393939332d32303137303230373134303135313739312d313933323132303037302e706e67 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#6springmvc怎么样设定重定向和转发的 |
| http://www.baidu.com | http://www.baidu.com |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#7--springmvc常用的注解有哪些 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#8-spring的aop理解 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#9spring的ioc理解 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#10解释一下spring-bean的生命周期 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#11-解释spring支持的几种bean的作用域 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#12-spring基于xml注入bean的几种方式 |
| https://blog.csdn.net/a745233700/article/details/89307518 | https://blog.csdn.net/a745233700/article/details/89307518 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#13spring框架中都用到了哪些设计模式 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#mybatis篇 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1什么是mybatis |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2mybatis的优点和缺点 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3和的区别是什么 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4当实体类中的属性名和表中的字段名不一样-怎么办- |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5mybatis是如何进行分页的分页插件的原理是什么 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#6mybatis是如何将sql执行结果封装为目标对象并返回的都有哪些映射形式 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#7-如何执行批量插入 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#8xml映射文件中除了常见的selectinsertupdaedelete标签之外还有哪些标签 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#9mybatis实现一对一有几种方式具体怎么操作的 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#10mybatis是否支持延迟加载如果支持它的实现原理是什么 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#11mybatis的一级二级缓存 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#springboot篇 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1为什么要用springboot |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2spring-boot-的核心注解是哪个它主要由哪几个注解组成的 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3运行spring-boot有哪几种方式 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4如何理解-spring-boot-中的-starters |
| https://camo.githubusercontent.com/45f71d799b3ee05b655ed57412930d985e30d07e69d5265261bc2a8cbb605473/68747470733a2f2f696d672d626c6f672e6373646e696d672e636e2f32303139303331343135323135333632322e706e673f782d6f73732d70726f636573733d696d6167652f77617465726d61726b2c747970655f5a6d46755a33706f5a57356e6147567064476b2c736861646f775f31302c746578745f6148523063484d364c7939696247396e4c6d4e7a5a473475626d56304c30746c646d6c75583064314e673d3d2c73697a655f31362c636f6c6f725f4646464646462c745f3730 |
| https://camo.githubusercontent.com/10f0557535aa6e9b6c5f4d321fa4be0b2221ae430abe51fff9c5ec70e2bbcc8c/68747470733a2f2f696d672d626c6f672e6373646e696d672e636e2f32303139303331343135323233373532342e706e67 |
| https://camo.githubusercontent.com/469512bed31d6ef241e6a7ed19b7c68db63908e48d4bf7255bfab1610590681b/68747470733a2f2f696d672d626c6f672e6373646e696d672e636e2f32303139303331343135323330333531372e706e67 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5-如何在spring-boot启动的时候运行一些特定的代码 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#6-spring-boot-需要独立的容器运行吗 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#7-spring-boot中的监视器是什么 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#8-如何使用spring-boot实现异常处理 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#9-你如何理解-spring-boot-中的-starters |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#10-springboot常用的starter有哪些 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#11-springboot-实现热部署有哪几种方式 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#12-如何理解-spring-boot-配置加载顺序 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#13-spring-boot-的核心配置文件有哪几个它们的区别是什么 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#14如何集成-spring-boot-和-activemq |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#mysql篇 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1数据库的三范式是什么 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2数据库引擎有哪些 |
| https://camo.githubusercontent.com/34b24ff87145208403dce01554932f05bbe3f167/68747470733a2f2f6d792d626c6f672d746f2d7573652e6f73732d636e2d6265696a696e672e616c6979756e63732e636f6d2f323031392d362f6d7973716c2d656e67696e65732e706e67 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3innodb与myisam的区别 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4数据库的事务 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5索引问题 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#6sql优化 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#7简单说一说dropdelete与truncate的区别 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#8什么是视图 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#9-什么是内联接左外联接右外联接 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#10并发事务带来哪些问题 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#事务隔离级别有哪些mysql的默认隔离级别是 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#大表如何优化 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1-限定数据的范围 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2-读写分离 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3-垂直分区 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4-水平分区 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview |
| https://segmentfault.com/a/1190000006158186 | https://segmentfault.com/a/1190000006158186 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5分库分表之后id-主键如何处理 |
| https://github.com/twitter-archive/snowflake。 | https://github.com/twitter-archive/snowflake%E3%80%82 |
| Leaf | https://tech.meituan.com/2017/04/21/mt-leaf.html |
| https://tech.meituan.com/2017/04/21/mt-leaf.html | https://tech.meituan.com/2017/04/21/mt-leaf.html |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#redis篇 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1redis持久化机制 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2缓存雪崩缓存穿透缓存预热缓存更新缓存降级等问题 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3热点数据和冷数据是什么 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4memcache与redis的区别都有哪些 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5单线程的redis为什么这么快 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#6redis的数据类型以及每种数据类型的使用场景 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#7redis的过期策略以及内存淘汰机制 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#8redis-为什么是单线程的 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#9redis-常见性能问题和解决方案 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#10为什么redis的操作是原子性的怎么保证原子性的 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#11redis事务 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#springcloud篇 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1什么是springcloud |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2什么是微服务 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3springcloud有什么优势 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4-什么是服务熔断什么是服务降级 |
| https://camo.githubusercontent.com/c52a921321e706d2bc9bd79e8cedceffb3fc3a6243ba2b3a1628301cf9cabb94/68747470733a2f2f6f7363696d672e6f736368696e612e6e65742f6f73636e65742f61336537646165633233343362393138386266643734356237646665306139333639332e6a7067 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5-eureka和zookeeper都可以提供服务注册与发现的功能请说说两个的区别 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#6springboot和springcloud的区别 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#7负载平衡的意义什么 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#8什么是hystrix它如何实现容错 |
| https://camo.githubusercontent.com/0015d6104a5045e72fc35f4c29c50538a5fb72b6742b7e965790a85c13395d6e/68747470733a2f2f75706c6f61642d696d616765732e6a69616e7368752e696f2f75706c6f61645f696d616765732f31333434393538342d333935636662656230303136336365312e706e673f696d6167654d6f6772322f6175746f2d6f7269656e742f7374726970253743696d61676556696577322f322f772f3535302f666f726d61742f77656270 |
| https://camo.githubusercontent.com/2d1734c5a0dae7138e699eb2c6b390c69d23384ed1f3fb760a4d222bbd7cf132/68747470733a2f2f75706c6f61642d696d616765732e6a69616e7368752e696f2f75706c6f61645f696d616765732f31333434393538342d363063353439336161633065313566322e706e673f696d6167654d6f6772322f6175746f2d6f7269656e742f7374726970253743696d61676556696577322f322f772f3535302f666f726d61742f77656270 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#9什么是hystrix断路器我们需要它吗 |
| https://camo.githubusercontent.com/3fa1c6af3c9edebd129e67e3705751686494c58dd49a23a15fbf72c79193ae8b/68747470733a2f2f75706c6f61642d696d616765732e6a69616e7368752e696f2f75706c6f61645f696d616765732f31333434393538342d646531323835613639356662366535302e706e673f696d6167654d6f6772322f6175746f2d6f7269656e742f7374726970253743696d61676556696577322f322f772f3535302f666f726d61742f77656270 |
| https://camo.githubusercontent.com/f520d08c352b3b070b019800f05a73866e70dc344b3bba4921eda0b1067a4a22/68747470733a2f2f75706c6f61642d696d616765732e6a69616e7368752e696f2f75706c6f61645f696d616765732f31333434393538342d623532633937396538303264323063312e706e673f696d6167654d6f6772322f6175746f2d6f7269656e742f7374726970253743696d61676556696577322f322f772f3535302f666f726d61742f77656270 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#10说说-rpc-的实现原理 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#nginx篇 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1简述一下什么是nginx它有什么优势和功能 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2nginx是如何处理一个http请求的呢 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3列举一些nginx的特性 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4请列举nginx和apache-之间的不同点 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5在nginx中如何使用未定义的服务器名称来阻止处理请求 |
| https://camo.githubusercontent.com/fa6a8cf18e0b7a9e6030aa2660a4eca9c3da388da1d3bea46e26ba1ba9a3a152/68747470733a2f2f73732e6373646e2e6e65742f703f68747470733a2f2f6d6d62697a2e717069632e636e2f6d6d62697a5f6a70672f557457644467796e4c64594a7a667975314c3872493861736961384e6b754b743558395a424e6761617769614667314b4541775a616962587569636868504e6748545a5271584c696364326176517a4d4d784f5463326d424458412f3634303f |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#6请解释nginx服务器上的master和worker进程分别是什么 |
| https://camo.githubusercontent.com/a49ce3a159f0a3277398e61cf923978283e0f234cc3bd7fc6957464661efce10/68747470733a2f2f73732e6373646e2e6e65742f703f68747470733a2f2f6d6d62697a2e717069632e636e2f6d6d62697a5f706e672f557457644467796e4c64594a7a667975314c3872493861736961384e6b754b74355269616a4b4f7935687a6d7041324e78715a4271616b6279566a37517472696379426961314d4567744d4f6b7a6f696146375a317346633168672f3634303f |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#7请解释代理中的正向代理和反向代理 |
| https://camo.githubusercontent.com/865821db4d75449ad33dfd410e6e329d4312134d1769b6627d0c0d81a88c9729/68747470733a2f2f73732e6373646e2e6e65742f703f68747470733a2f2f6d6d62697a2e717069632e636e2f6d6d62697a5f706e672f557457644467796e4c64594a7a667975314c3872493861736961384e6b754b74357658646961315269636a6853707a566b766d4f7548445652574d636c6a516836305a3930636d4c484651344d6438634a71344b6e307468672f3634303f |
| https://camo.githubusercontent.com/bf1e7624439410aed7d931636be55c96b45a01dda831f026badc74fd175cbe25/68747470733a2f2f73732e6373646e2e6e65742f703f68747470733a2f2f6d6d62697a2e717069632e636e2f6d6d62697a5f706e672f557457644467796e4c64594a7a667975314c3872493861736961384e6b754b74354547465142424c714f4732774d4e6832374350636e64776962654d72526151735539713535335a6b777351614237534e7472386169624a772f3634303f |
| https://camo.githubusercontent.com/818bcbc37de2ccb66c4ab9775b198165c87ffe818d770c1ff5e9bcdb109b9521/68747470733a2f2f73732e6373646e2e6e65742f703f68747470733a2f2f6d6d62697a2e717069632e636e2f6d6d62697a5f706e672f557457644467796e4c64594a7a667975314c3872493861736961384e6b754b7435554f4c765454744146493034446269636d7a3743623233726a567754696139624a696350596b6842376c534b55414f37594f7a6d58774538412f3634303f |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#8解释nginx用途 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#mq篇 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1为什么使用mq |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2mq优缺点 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3kafkaactivemqrabbitmqrocketmq-都有什么区别 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4如何保证高可用的 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5如何保证消息的可靠传输如果消息丢了怎么办 |
| https://camo.githubusercontent.com/7bf295810373bccc02a70fb6ed75b120eb36de44882f9c91c715510876564902/68747470733a2f2f696d672d626c6f672e6373646e696d672e636e2f32303138313232343135333232393932352e706e673f782d6f73732d70726f636573733d696d6167652f77617465726d61726b2c747970655f5a6d46755a33706f5a57356e6147567064476b2c736861646f775f31302c746578745f6148523063484d364c7939696247396e4c6d4e7a5a473475626d56304c32786c6448523561584e745a513d3d2c73697a655f31362c636f6c6f725f4646464646462c745f3730 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#6如何保证消息的顺序性 |
| https://camo.githubusercontent.com/dccc574d3f49344ed592ad479b5bd7a284850d94a8608abc96944283787a0b2e/68747470733a2f2f696d672d626c6f672e6373646e696d672e636e2f32303138313232343135333633363538342e706e673f782d6f73732d70726f636573733d696d6167652f77617465726d61726b2c747970655f5a6d46755a33706f5a57356e6147567064476b2c736861646f775f31302c746578745f6148523063484d364c7939696247396e4c6d4e7a5a473475626d56304c32786c6448523561584e745a513d3d2c73697a655f31362c636f6c6f725f4646464646462c745f3730 |
| https://camo.githubusercontent.com/f6a771fd181534e7346556a43d268558a269685fffe422a29737b54deb2d8534/68747470733a2f2f696d672d626c6f672e6373646e696d672e636e2f32303138313232343135333731373339362e706e673f782d6f73732d70726f636573733d696d6167652f77617465726d61726b2c747970655f5a6d46755a33706f5a57356e6147567064476b2c736861646f775f31302c746578745f6148523063484d364c7939696247396e4c6d4e7a5a473475626d56304c32786c6448523561584e745a513d3d2c73697a655f31362c636f6c6f725f4646464646462c745f3730 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#7-如何解决消息队列的延时以及过期失效问题消息队列满了以后该怎么处理有几百万消息持续积压几小时说说怎么解决 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#8设计mq的思路 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#数据结构与算法篇 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1常用的数据结构 |
| The top data structures you should know for your next coding interview | https://medium.freecodecamp.org/the-top-data-structures-you-should-know-for-your-next-coding-interview-36af0831f5e3 |
| Fundebug | https://www.fundebug.com/ |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1-数组 |
| https://camo.githubusercontent.com/0ec53c6ab128e5ac711f486c7090e562d550b6442903a1a0ff61226f26847869/68747470733a2f2f696d6167652e66756e64656275672e636f6d2f323031392d30332d32372d61727261792e706e67 |
| 查找数组中第二小的元素 | https://www.geeksforgeeks.org/to-find-smallest-and-second-smallest-element-in-an-array/ |
| https://www.geeksforgeeks.org/to-find-smallest-and-second-smallest-element-in-an-array/ | https://www.geeksforgeeks.org/to-find-smallest-and-second-smallest-element-in-an-array/ |
| 查找第一个没有重复的数组元素 | https://www.geeksforgeeks.org/non-repeating-element/ |
| https://www.geeksforgeeks.org/non-repeating-element/ | https://www.geeksforgeeks.org/non-repeating-element/ |
| 合并 2 个排序好的数组 | https://www.geeksforgeeks.org/merge-two-sorted-arrays/ |
| https://www.geeksforgeeks.org/merge-two-sorted-arrays/ | https://www.geeksforgeeks.org/merge-two-sorted-arrays/ |
| 重新排列数组中的正数和负数 | https://www.geeksforgeeks.org/rearrange-positive-and-negative-numbers-publish/ |
| https://www.geeksforgeeks.org/rearrange-positive-and-negative-numbers-publish/ | https://www.geeksforgeeks.org/rearrange-positive-and-negative-numbers-publish/ |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2-栈 |
| https://camo.githubusercontent.com/a1b074a347cde7c35ce2ea372b3440bd4bc1bfd1d35ea5e3c46023128d82691e/68747470733a2f2f696d6167652e66756e64656275672e636f6d2f323031392d30332d32372d737461636b2e706e67 |
| 使用栈计算后缀表达式 | https://www.geeksforgeeks.org/stack-set-4-evaluation-postfix-expression/ |
| https://www.geeksforgeeks.org/stack-set-4-evaluation-postfix-expression/ | https://www.geeksforgeeks.org/stack-set-4-evaluation-postfix-expression/ |
| 使用栈为栈中的元素排序 | https://www.geeksforgeeks.org/sort-stack-using-temporary-stack/ |
| https://www.geeksforgeeks.org/sort-stack-using-temporary-stack/ | https://www.geeksforgeeks.org/sort-stack-using-temporary-stack/ |
| 检查字符串中的括号是否匹配正确 | https://www.geeksforgeeks.org/check-for-balanced-parentheses-in-an-expression/ |
| https://www.geeksforgeeks.org/check-for-balanced-parentheses-in-an-expression/ | https://www.geeksforgeeks.org/check-for-balanced-parentheses-in-an-expression/ |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3-队列 |
| https://camo.githubusercontent.com/735ac789bde90103c13ffb371767de559d90eccfe6c4d5065725ce1cbb7eab2a/68747470733a2f2f696d6167652e66756e64656275672e636f6d2f323031392d30332d32372d71756575652e706e67 |
| 使用队列实现栈 | https://www.geeksforgeeks.org/implement-stack-using-queue/ |
| https://www.geeksforgeeks.org/implement-stack-using-queue/ | https://www.geeksforgeeks.org/implement-stack-using-queue/ |
| 倒转队列的前 K 个元素 | https://www.geeksforgeeks.org/reversing-first-k-elements-queue/ |
| https://www.geeksforgeeks.org/reversing-first-k-elements-queue/ | https://www.geeksforgeeks.org/reversing-first-k-elements-queue/ |
| 使用队列将 1 到 n 转换为二进制 | https://www.geeksforgeeks.org/interesting-method-generate-binary-numbers-1-n/ |
| https://www.geeksforgeeks.org/interesting-method-generate-binary-numbers-1-n/ | https://www.geeksforgeeks.org/interesting-method-generate-binary-numbers-1-n/ |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4-链表 |
| https://camo.githubusercontent.com/8b86a99ac9a4dbb3530cce8cc907c24655dffe75083df69c5b428cd8bdfd0c6b/68747470733a2f2f696d6167652e66756e64656275672e636f6d2f323031392d30332d32372d6c696e6b65645f6c6973742e706e67 |
| 倒转 1 个链表 | https://www.geeksforgeeks.org/reverse-a-linked-list/ |
| https://www.geeksforgeeks.org/reverse-a-linked-list/ | https://www.geeksforgeeks.org/reverse-a-linked-list/ |
| 检查链表中是否存在循环 | https://www.geeksforgeeks.org/detect-loop-in-a-linked-list/ |
| https://www.geeksforgeeks.org/detect-loop-in-a-linked-list/ | https://www.geeksforgeeks.org/detect-loop-in-a-linked-list/ |
| 返回链表倒数第 N 个元素 | https://www.geeksforgeeks.org/nth-node-from-the-end-of-a-linked-list/ |
| https://www.geeksforgeeks.org/nth-node-from-the-end-of-a-linked-list/ | https://www.geeksforgeeks.org/nth-node-from-the-end-of-a-linked-list/ |
| 移除链表中的重复元素 | https://www.geeksforgeeks.org/remove-duplicates-from-an-unsorted-linked-list/ |
| https://www.geeksforgeeks.org/remove-duplicates-from-an-unsorted-linked-list/ | https://www.geeksforgeeks.org/remove-duplicates-from-an-unsorted-linked-list/ |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5-图 |
| https://camo.githubusercontent.com/8bd736bb6a4e38413bacdb44a6ae50fb0bd1bc8d6a119096ff894a99b12b358c/68747470733a2f2f696d6167652e66756e64656275672e636f6d2f323031392d30332d32372d67726170682e706e67 |
| 实现广度优先搜索 | https://www.geeksforgeeks.org/breadth-first-search-or-bfs-for-a-graph/ |
| https://www.geeksforgeeks.org/breadth-first-search-or-bfs-for-a-graph/ | https://www.geeksforgeeks.org/breadth-first-search-or-bfs-for-a-graph/ |
| 实现深度优先搜索 | https://www.geeksforgeeks.org/depth-first-search-or-dfs-for-a-graph/ |
| https://www.geeksforgeeks.org/depth-first-search-or-dfs-for-a-graph/ | https://www.geeksforgeeks.org/depth-first-search-or-dfs-for-a-graph/ |
| 检查图是否为树 | https://www.geeksforgeeks.org/check-given-graph-tree/ |
| https://www.geeksforgeeks.org/check-given-graph-tree/ | https://www.geeksforgeeks.org/check-given-graph-tree/ |
| 统计图中边的个数 | https://www.geeksforgeeks.org/count-number-edges-undirected-graph/ |
| https://www.geeksforgeeks.org/count-number-edges-undirected-graph/ | https://www.geeksforgeeks.org/count-number-edges-undirected-graph/ |
| 使用 Dijkstra 算法查找两个节点之间的最短距离 | https://www.geeksforgeeks.org/dijkstras-shortest-path-algorithm-greedy-algo-7/ |
| https://www.geeksforgeeks.org/dijkstras-shortest-path-algorithm-greedy-algo-7/ | https://www.geeksforgeeks.org/dijkstras-shortest-path-algorithm-greedy-algo-7/ |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#6-树 |
| https://camo.githubusercontent.com/d5d708c0e8da276bc492f1f32b9118846fc9a42d4ede58589862471b2c5c5e28/68747470733a2f2f696d6167652e66756e64656275672e636f6d2f323031392d30332d32372d747265652e706e67 |
| 计算树的高度 | https://www.geeksforgeeks.org/write-a-c-program-to-find-the-maximum-depth-or-height-of-a-tree/ |
| https://www.geeksforgeeks.org/write-a-c-program-to-find-the-maximum-depth-or-height-of-a-tree/ | https://www.geeksforgeeks.org/write-a-c-program-to-find-the-maximum-depth-or-height-of-a-tree/ |
| 查找二叉平衡树中第 K 大的元素 | https://www.geeksforgeeks.org/kth-largest-element-in-bst-when-modification-to-bst-is-not-allowed/ |
| https://www.geeksforgeeks.org/kth-largest-element-in-bst-when-modification-to-bst-is-not-allowed/ | https://www.geeksforgeeks.org/kth-largest-element-in-bst-when-modification-to-bst-is-not-allowed/ |
| 查找树中与根节点距离为 k 的节点 | https://www.geeksforgeeks.org/print-nodes-at-k-distance-from-root/ |
| https://www.geeksforgeeks.org/print-nodes-at-k-distance-from-root/ | https://www.geeksforgeeks.org/print-nodes-at-k-distance-from-root/ |
| 查找二叉树中某个节点所有祖先节点 | https://www.geeksforgeeks.org/print-ancestors-of-a-given-node-in-binary-tree/ |
| https://www.geeksforgeeks.org/print-ancestors-of-a-given-node-in-binary-tree/ | https://www.geeksforgeeks.org/print-ancestors-of-a-given-node-in-binary-tree/ |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#7-前缀树 |
| https://camo.githubusercontent.com/37c8456e8d84a0bff7cfc85addfbe2680fed2df00bef663754280f8da4e46978/68747470733a2f2f696d6167652e66756e64656275672e636f6d2f323031392d30332d32372d74726965732e706e67 |
| 统计前缀树表示的单词个数 | https://www.geeksforgeeks.org/counting-number-words-trie/ |
| https://www.geeksforgeeks.org/counting-number-words-trie/ | https://www.geeksforgeeks.org/counting-number-words-trie/ |
| 使用前缀树为字符串数组排序 | https://www.geeksforgeeks.org/sorting-array-strings-words-using-trie/ |
| https://www.geeksforgeeks.org/sorting-array-strings-words-using-trie/ | https://www.geeksforgeeks.org/sorting-array-strings-words-using-trie/ |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#8-哈希表 |
| https://camo.githubusercontent.com/abf29a0b7fcd2afa3b9290dd0de1b3f54ef7eedc1ef769359d2880ec3c0f3491/68747470733a2f2f696d6167652e66756e64656275672e636f6d2f323031392d30332d32372d686173685f7461626c652e706e67 |
| 查找数组中对称的组合 | https://www.geeksforgeseks.org/given-an-array-of-pairs-find-all-symmetric-pairs-in-it/ |
| https://www.geeksforgeseks.org/given-an-array-of-pairs-find-all-symmetric-pairs-in-it/ | https://www.geeksforgeseks.org/given-an-array-of-pairs-find-all-symmetric-pairs-in-it/ |
| 确认某个数组的元素是否为另一个数组元素的子集 | https://www.geeksforgeeks.org/find-whether-an-array-is-subset-of-another-array-set-1/ |
| https://www.geeksforgeeks.org/find-whether-an-array-is-subset-of-another-array-set-1/ | https://www.geeksforgeeks.org/find-whether-an-array-is-subset-of-another-array-set-1/ |
| 确认给定的数组是否互斥 | https://www.geeksforgeeks.org/check-two-given-sets-disjoint/ |
| https://www.geeksforgeeks.org/check-two-given-sets-disjoint/ | https://www.geeksforgeeks.org/check-two-given-sets-disjoint/ |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2-数据里有123456789请随机打乱顺序生成一个新的数组请以代码实现 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3-写出代码判断一个整数是不是2的阶次方请代码实现谢绝调用api方法 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4-假设今日是2015年3月1日星期日请算出13个月零6天后是星期几距离现在多少天请用代码实现谢绝调用api方法 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5-有两个篮子分别为a-和-b篮子a里装有鸡蛋篮子b里装有苹果请用面向对象的思想实现两个篮子里的物品交换请用代码实现 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#6更多算法练习 |
| https://leetcode-cn.com/problemset/algorithms/ | https://leetcode-cn.com/problemset/algorithms/ |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#linux篇 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#1-绝对路径用什么符号表示当前目录上层目录用什么表示主目录用什么表示-切换目录用什么命令 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#2-怎么查看当前进程怎么执行退出怎么查看当前路径 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#3查看文件有哪些命令 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#4列举几个常用的linux命令 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#5你平时是怎么查看日志的 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#简历篇 |
| https://www.cnblogs.com/QQ12538552/p/12332620.html | https://www.cnblogs.com/QQ12538552/p/12332620.html |
| http://www.markdown.cn | http://www.markdown.cn/ |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#为什么说简历很重要 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#先从面试来说 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#再从面试说起 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#必知必会的几点 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#必须了解的两大法则 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#项目经历怎么写 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#专业技能怎么写 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#排版注意事项 |
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#其他一些小tips |
|
Readme
| https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview#readme-ov-file |
| Please reload this page | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview |
|
Activity | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/activity |
|
0
stars | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/stargazers |
|
0
watching | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/watchers |
|
0
forks | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/forks |
|
Report repository
| https://patch-diff.githubusercontent.com/contact/report-content?content_url=https%3A%2F%2Fgithub.com%2FGalenZhang%2FJavaInterview&report=GalenZhang+%28user%29 |
| Releases | https://patch-diff.githubusercontent.com/GalenZhang/JavaInterview/releases |
| Packages
0 | https://patch-diff.githubusercontent.com/users/GalenZhang/packages?repo_name=JavaInterview |
|
| https://github.com |
| Terms | https://docs.github.com/site-policy/github-terms/github-terms-of-service |
| Privacy | https://docs.github.com/site-policy/privacy-policies/github-privacy-statement |
| Security | https://github.com/security |
| Status | https://www.githubstatus.com/ |
| Community | https://github.community/ |
| Docs | https://docs.github.com/ |
| Contact | https://support.github.com?tags=dotcom-footer |