1、熟悉掌握java语言(反射、IO、集合),并能利用其进行java软件的开发
2、了解JVM基础原理(JVM内存模型,GC算法)
3、熟悉数据结构,操作系统,计算机网络,了解计算机组成原理
4、熟悉Spring、SpringMVC、Springboot、MyBatis、Spring Security等基础开发框架
5、掌握中间件Redis的使用
6、掌握MySQL数据库(事务、索引),基础数据库操作扎实
7、了解常见设计模式(单例模式、工厂模式、装饰模式、代理模式、观察者模式)
8、熟练使用Linux,有Linux下部署项目的实际经验
9、熟练使用Maven、Git、IDEA、Docker等开发工具
项目一
项目名称:姊曰互娱小程序
项目内角色:Java后端开发工程师
相关技术:Spring Boot、Mybatis-Plus、Redis、RabbitMQ、MySQL、MinIO、WebSocket
项目简介:使用微信小程序,提供线下陪玩业务,宣传商家
技术设计:
使用RabbitMQ技术解决了定时任务
使用WebSocket技术解决了实时聊天
使用Redis存储临时数据,缓解数据库压力
使用MinIO技术优化了图片相关服务,响应时间从3s降低到0.2s
个人收获:
规范代码开发习惯;深刻意识到数据库等端口的开放的安全性;了解微信支付API使用;学习到使用一些Spring提供的工具类来对接口入参进行非空检查;明确在开发过程中要总结错误,减少再犯。
项目二
项目名称:研究生信息平台(Springcloud+Vue)
项目内角色:项目负责人
相关技术:Springcloud、Oauth2、Redis、Mybatis、Springsecutity、Nginx、Vue
项目简介:提供高校研究生信息、计时及提问功能,能够修改个人信息
技术设计:
Oauth2+Jwt技术解决用户访问路径进行认证
Redis存储常访问数据,缓解数据库压力
这个项目类似于微博,用户可以在该平台上发布回答帖子,与其他已注册用户进行在线聊天、同时还可以进行文件上传/下载模块、亦可在个人中心修改信息。在项目中,我负责后端代码的开发与编写,数据库的设计,项目的部署。
本平台使用Springcloud微服务框架进行搭建,使用Oauth2技术对平台的安全与权限控制进行认证。为了提高研究生信息收集的效率,方便一站式使用各种工具,在此研发一个平台同时提供以上服务。在网络高速发展的背景下,各种数据资源混杂在网络中,对信息不能进行整体性了解,研发一个将各