Java 泥腿子想到一个高工水平,各位老哥给点意见
刚转 java3 个多月 以前只是自己随便学了点基本的 java 语法,然后用 java 在 LeetCode 上刷了几题。 目前终于在公司实战项目当中使用 spring-boot 开发项目了。自己有一点基础,靠搜索引擎跟文档也能完成日常增删改查的一些任务
自己也遇到了一些困惑 希望大家解答
1.目前公司的项目当中是用了一个类似 activerecord 的包来完成数据库的增删改查,自己也用过 mybatis,xml 的配置我感觉有点反人类 注解的方式没使用过,是不是外面的主流都是 mybatis
2.对于 spring-boot 的一些注解,目前也只是会基本使用的地步,需要自己再去从头补 spring 框架基础吗,或者有什么好的建议,自己只是简单会用框架,对于框架的底层实现确实还一头雾水。
3.目前自己项目也有几台机器的小集群,项目当中除了使用原子类,锁的话也是借助于 redis 这种来实现分布式锁,对于 synchronized 同步锁这种,感觉缺乏实际的应用场景,是不是大家的项目中也基本上很少用锁。
4.对于多线程跟 jvm 感觉了解不多,目前多线程的应用主要在数据库连接池、redis 连接池、启动时候配置的 tomcat 的线程数,目前有些异步运算的接口,我从线程池里取线程然后多个线程去计算,各个结果都出来后 一起拼好数据返给业务方,也没涉及到锁。还有 如何学习 jvm, 目前也只会简单的用 jstack 查看一些基本情况 假如线上出了疑难杂症,一般都是使用哪些工具来具体解决的,比如如何看什么堆栈,如何定位问题 目前我一些小问题,大部分可以查看通过 log 来解决