1.熟悉 Java 知识(如集合类、异常处理),能熟练运用 Lambda、Hutool、HttpClient、Apache Utils 编程
2. 熟悉 SSM + Spring Boot 开发框架,能够使用 MyBatis Plus + MyBatis X 自动生成基础 CRUD 代码
3. 熟悉 MySQL 数据库及库表设计,能够通过创建索引、Explain 分析等方式优化性能
4.熟悉RocketMQ、Elasticsearch等中间件的使用,如用MQ延迟消息自动取消订单、ES做全文检索
5. 熟悉常见的业务开发场景:比如 jsoup 爬虫、分词搜索功能、数据同步、API 签名认证、用户权限管理、Spring Boot Starter SDK 开发等
6. 熟悉并实践过多种设计模式,比如门面模式、适配器模式、注册器模式
7. 能够使用 Canal、Logstash、定时任务、双写等方式实现 Elasticsearch 和 MySQL 的同步
8. 熟练使用 Git、IDEA、Swagger、Navicat 等工具提高开发协作效率。
9. 熟悉 Nacos 和 Dubbo RPC 框架,能使用 Spring Cloud Gateway 实现 API 网关、访问控制 10. 熟悉vue、elementUI、iview、ant-design等前端技术
11. 熟练使用 Git、IDEA、ChatGPT、Swagger、Navicat 等工具提高开发协作效率
接口一站通
基于 React + Spring Boot + Dubbo + Gateway 的 API 接口开放调用平台。管理员可以接入并发布接口,可视化各接口调用情况;用户可以开通接口调用权限、浏览接口及在线调试,并通过客户端 SDK 轻松调用接口。
主要工作
1. 为防止接口被恶意调用,设计 API 签名认证算法,为用户分配唯一一对密钥以鉴权,保障调用的安全性、可溯源性。
2. 为解决开发者调用成本过高的问题,基于 Spring Boot Starter 开发了客户端 SDK,一行代码即可调用接口,提高开发体验。
3. 选用 Spring Cloud Gateway 作为 API 网关,实现了路由转发、访问控制、流量染色,并集中处理签名校验、请求参 数校验、接口调用统计等业务逻辑,提高安全性的同时、便于系统开发维护。
4. 为解决多个子系统内代码大量重复的问题,抽象模型层和业务层代码为公共模块,并使用 Dubbo RPC 框架实现子系统 间的高性能接口调用,大幅减少重复代码。
云易生活
云易生活是一个综合性的B2C平台,会员可以在商城浏览商品、下订单,以及参加各种活动。此项目分为后台项目管理部分和前台使用部分,使用SpringCloud分布式架构,使用SpringBoot开发微服务,使用SpringCloudALiBaBa的Nocas作服务注册中心和配置中心。
主要工作
1.使用Redis缓存常用的商品信息,并使用Redisson分布式锁解决缓存击穿问题
2.使用rocketMq延迟消息,解决订单在规定时间内未支付占用库存的问题,并确保订单从创建到结束、从占有库存到释放整个过程的正常流转。
3.收集慢sql语句,使用explain语句分析sql查询,使大部分查询接口速度小于200ms
4.使用 Knife4j + Swagger 自动生成后端接口文档,并通过编写 @ApiOperation 等注解补充接口注释,避免了人工编写维护文档的麻烦。