java开发者必备思维 对于java基础,是应该掌握底层原理,还是方法的熟练使用?

[更新]
·
·
分类:互联网
3603 阅读

java开发者必备思维

java开发者必备思维 对于java基础,是应该掌握底层原理,还是方法的熟练使用?

对于java基础,是应该掌握底层原理,还是方法的熟练使用?

对于java基础,是应该掌握底层原理,还是方法的熟练使用?

作为一名即将从业的java语言从业者,我对这个问题深有体会,因为我正在准备面试。

首先,当我们第一次学习java时,我们当然不知道。;I don我不知道基本原理,初学者也不知道。;I don我不理解深层的东西。这个时候,我们学习了一些基础,基础方法的调用,然后做一些项目,熟练掌握这些基础的东西。

然后,经过初学者 的时期,我的逻辑思维和编码能力都有了很大的提高。这时候我们就可以去看看底层的源代码实现了。一方面,我们可以在别人写代码的时候学习规范和架构设计。另一方面,我们可以更深入地了解一些方法的工作原理和机制,这将有助于我们更生动地使用方法。

在大型互联网公司的面试中,底层源代码的调查必不可少,一些基本方法的运用是自己的基本功。有些东西,不看底层源代码你永远不知道怎么设计! (疾病)开始

你平时主要使用什么Java开发框架?

以我们的项目为例。

我们的项目是纯后台服务项目,即没有前端页面,只对外提供服务;项目基于Spring Boot,引入spring-boot-starter-web,直接公开接口,消息使用的JSON,很少接口是从旧系统迁移过来的,所以为了让调用方尽可能小的修改,保留了XML消息;在正式的生产环境中,内置的Tomcat也是用;集成了Swagger,在线自动生成界面文档。

ORM框架选择MyBatis。由于项目中的查询大多是单表查询,且查询条件相对固定,所以标注做出的SQL语句是直接绑定的。

因为项目不仅使用了关系型数据库,而且经过处理关联后在MongoDB中保存了更多的数据,所以项目也使用了Spring数据MongoDB。我们的MongoDB已经部署了副本集,使用Spring数据MongoDB,通过简单的配置就可以完成对多个mongob的访问。如果其中一个MongoDB挂了,对服务没有影响,所以我们可以在扩展MongoDB时在线进行(扩展内存和CPU时MongoDB需要停止)。

在与一些系统的交互中使用RabbitMQ,只要将spring-boot-starter-amqp引入Spring Boot,其实可以很容易地与RabbitMQ集成。生产者和消费者都很方便。

因为是纯界面套装。为了减轻数据库的压力,我们根据业务场景(数据变化不频繁,业务场景对实时性要求不是很高)将部分接口的结果直接缓存到Redis中。在整合Redis的时候,我们前后尝试了两种

Spring Boot项目,最简单的与Redis集成可以直接使用@Cacheable注释完成,但是后来因为设置缓存超时不够灵活,我们后来改成了第二种方案;

使用RedisTemplate,可以完成Redis上的大部分操作。

我会继续分享我对Java开发、架构设计、程序员职业发展等方面的看法,希望得到大家的关注。