想在百度入职的朋友可以关注一下他的职级体系!

百度技术线是 T 序列,T5、T6 是技术线,占比最大的级别。一般而言,在百度 T5 是高级工程师、T6 是资深工程师,但实际上百度的 title 并没有职级重要。从 T7 级别开始,就开始要做带团队、做管理的事情,升到 T7 以上后基本就不做写代码的事情了。T10-T12 的人数非常少,具有代表性的人物有前百度首席科学家吴恩达、百度最年轻 T10 楼天城等。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果批量查询的接口入参更加细分,可以根据性别和职级查询,你可以将入参作为缓存的key,将查询结果作为缓存的value。具体实现可以按照以下步骤进行: 1. 定义一个CacheKeyGenerator类,用于生成缓存的key。例如: ``` @Component public class CacheKeyGenerator implements KeyGenerator { @Override public Object generate(Object target, Method method, Object... params) { StringBuilder sb = new StringBuilder(); sb.append(method.getName()).append(":"); for (Object param : params) { sb.append(param.toString()).append(":"); } return sb.toString(); } } ``` 在上面的代码中,CacheKeyGenerator类实现了KeyGenerator接口,重写了generate方法,用于生成缓存的key。在生成key时,可以将方法名和入参拼接在一起作为key。 2. 在接口上添加@Cacheable注解,并指定缓存的key和缓存的过期时间。例如: ``` @Cacheable(value = "userCache", keyGenerator = "cacheKeyGenerator", unless = "#result == null", condition = "#sex != null and #level != null", cacheManager = "cacheManager") public List<User> getUsersBySexAndLevel(String sex, String level) { // 查询数据库 return userDao.getUsersBySexAndLevel(sex, level); } ``` 在上面的代码中,@Cacheable注解指定了value、keyGenerator、unless、condition和cacheManager属性。其中,value属性指定了缓存名称;keyGenerator属性指定了缓存的key生成器;unless属性表示如果查询结果为null,则不缓存;condition属性表示只有当sex和level不为null时才进行缓存;cacheManager属性指定了缓存管理器。 需要注意的是,在使用@Cacheable注解时,需要在配置类中定义CacheManager和KeyGenerator的bean。例如: ``` @Configuration @EnableCaching public class CacheConfig extends CachingConfigurerSupport { @Bean public CacheManager cacheManager(RedisConnectionFactory redisConnectionFactory) { RedisCacheConfiguration redisCacheConfiguration = RedisCacheConfiguration.defaultCacheConfig() .entryTtl(Duration.ofMinutes(10)) .serializeKeysWith(RedisSerializationContext.SerializationPair.fromSerializer(new StringRedisSerializer())) .serializeValuesWith(RedisSerializationContext.SerializationPair.fromSerializer(new GenericJackson2JsonRedisSerializer())); return RedisCacheManager.builder(redisConnectionFactory) .cacheDefaults(redisCacheConfiguration) .transactionAware() .build(); } @Bean public KeyGenerator cacheKeyGenerator() { return new CacheKeyGenerator(); } } ``` 在上面的代码中,CacheConfig类使用@EnableCaching注解开启缓存,并定义了cacheManager和cacheKeyGenerator的bean。cacheManager方法用于配置RedisCacheManager,cacheKeyGenerator方法用于配置CacheKeyGenerator。 这样就可以根据性别和职级查询用户,并缓存查询结果了。需要注意的是,缓存的key需要根据具体业务来设计,以保证缓存的准确性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值