写点什么

Java 面试项目推荐,15 个项目吃透两个 offer 拿到手软

作者:冉然学Java
  • 2022 年 8 月 08 日
  • 本文字数:3600 字

    阅读完需:约 12 分钟

Java面试项目推荐,15个项目吃透两个offer拿到手软

项目名称:JeeSite


项目所用技术栈:Spring、Spring MVC、MyBatis、Apache Shiro、Bootstrap UI 等

项目简介:JeeSite 是一个 Java EE 企业级快速开发平台,基于经典技术组合(Spring Boot、Spring MVC、Apache Shiro、MyBatis、Beetl、Bootstrap、AdminLTE)采用经典开发模式,让初学者能够更快的入门并投入到团队开发中去。在线代码生成功能,包括核心模块如:组织机构、角色用户、菜单及按钮授权、数据权限、系统参数、内容管理、工作流等。采用松耦合设计;界面无刷新,一键换肤;众多账号安全设置,密码策略;在线定时任务配置;支持集群,支持 SAAS;支持多数据源;支持微服务。



由于平台限制,这里不能直接放源码链接,所以文中这 15 个项目源码和开发文档都给你们整理好了,点击此处【Java面试项目】即可免费领取!



项目名称:XMall 商城

项目所用技术栈:SSM、Elasticsearch、Redis、MySQL、ActiveMQ、Shiro、Dubbo、Zookeeper、Vue.js 等

项目简介:XMall 是一个基于 SOA 架构的分布式电商购物商城,并且前后端分离。包括如下几大模块:

  • 后台管理系统:管理商品、订单、类目、商品规格属性、用户、权限、系统统计、系统日志以及前台内容等功能

  • 前台系统:用户可以在前台系统中进行注册、登录、浏览商品、首页、下单等操作

  • 会员系统:用户可以在该系统中查询已下的订单、管理订单、我的优惠券等信息

  • 订单系统:提供下单、查询订单、修改订单状态、定时处理订单

  • 搜索系统:提供商品的搜索功能

  • 单点登录系统:为多个系统之间提供用户登录凭证以及查询登录用户的信息

是初学者练手的不错的项目。




项目名称:Cloud-Platform

项目所用技术栈:Spring Boot、Spring Cloud 全家桶、Vue.js 等

项目简介:Cloud-Platform 是国内首个基于 Spring Cloud 的微服务开发平台,具有统一授权、认证后台管理系统,其中包含具备用户管理、资源权限管理、网关 API 管理等多个模块,支持多业务系统并行开发,可以作为后端服务的开发脚手架。代码简洁,架构清晰,适合学习和直接项目中使用。




项目名称:Piggy Metrics

项目所用技术栈:Spring Boot、Spring Cloud、Docker 等

项目简介:Piggy Metrics 是一个基于 Spring Boot, Spring Cloud 和 Docker 等技术实现的微服务脚手架,项目包含了:API 网关、服务发现、负载均衡、熔断机制、配置中心、监控服务、认证服务等几大微服务项目基本模块,对学习和练手微服务项目是不错的选择。



项目名称:mall

项目所用技术栈:Spring Boot、Spring Security、MyBatis、Elasticsearch、RabbitMq、Redis、MongoDb、Docker 、Vue.js 等

项目简介:mall 项目是一套电商系统,包括前台商城系统及后台管理系统,基于 SpringBoot+MyBatis 实现,采用 Docker 容器化部署。前台商城系统包含首页门户、商品推荐、商品搜索、商品展示、购物车、订单流程、会员中心、客户服务、帮助中心等模块。后台管理系统包含商品管理、订单管理、会员管理、促销管理、运营管理、内容管理、统计报表、财务管理、权限管理、设置等模块。





项目名称: JeeSite

项目介绍:

这是个典型的 SSM 后台管理项目(不是有很多小伙伴让推荐 SSM 项目练手嘛),基于经典技术组合(Spring MVC、Shiro、MyBatis、Bootstrap UI 等)开发,适合学习练手。

而且它作为一个典型的后台管理系统,要素基本都有,包括:组织机构、角色用户、权限授权、数据权限、内容管理、工作流等。

尤其要提的就是最后的工作流模块,它可以实现提工单、审核/审批等流程,这个在后台管理类项目里是必备的模块。



项目名称:platform-wechat-mall

项目介绍

该项目是一个开源的微信小程序商城,虽说其项目技术栈不算特别新,后端用的也是 SSM 框架,但是它作为一个商城项目,要素模块基本都包含了,比如:系统后台管理、商品后台管理、移动端商城的 API 接口、手机移动端商城、微信小程序商城等等。

而且主要功能也非常丰富,包括:会员管理、商城配置、商品管理、推广管理、订单和系统管理等等。




秒杀类项目

项目名称spring-boot-seckill

项目介绍:

秒杀类开源项目其实很难得,毕竟涉及高并发的一些问题嘛,这些在面试时都是能让面试官眼前一亮的东西。

这个项目与其说是一个开源项目,倒不如说是一些具体秒杀问题里面的案例集合。



秒杀系统基本设计思想无非也就是:限流缓存异步分摊主备,其实某一程度上来说就是开源+节流的思想。



所以通过它应该能学到一些比 CRUD 高级一些的技术,诸如:线程池分布式锁消息队列(kafka)缓存(redis) 等等。

支付类项目

项目名称roncoo-pay

项目介绍:

支付系统嘛,集成了主流支付方式、支付平台等,除此之外它还有些额外的管理功能,比如对账、结算、交易订单的管理等等,所以也有后台管理的。



该项目的技术栈也是后端的主流技术,包括:Spring Boot、Shiro、MyBatis、Redis 等。

开源的支付类项目平时见得可能也不多,它也是一个偏业务类型的开源项目。毕竟开源项目很少有业务强相关的,开源出来的东西,业务一般都剥离出去了。该项目涉及了一些和支付相关的业务流程,包括:支付流程、对账流程、结算流程等等。



项目名:Cloud-Platform

项目介绍

Cloud-Platform 是一个基于 Spring Cloud 技术栈实现的微服务化开发平台,包含了微服务架构的常见组件,比如:服务注册和发现、网关、服务调用、熔断/降级机制、认证/鉴权、监控中心等等。




项目名:open-capacity-platform

项目介绍:

同样和上面项目一样,open-capacity-platform 也是一个学习 Spring Cloud 微服务技术栈的不错范例,其同样也包含了微服务架构里面的各种应用组件。



由于平台限制,这里不能直接放源码链接,所以文中这 15 个项目源码和开发文档都给你们整理好了,点击此处【Java面试项目】即可免费领取!

项目名称: Java

项目简介: 这是一个基于 Java 的数据结构与算法的实现项目。里面包含了几乎常用所有数据结构的实现,以及诸多算法题LeetCode 习题的 Java 实现。主要包括:

  • 加解密算法

  • 进制转换

  • 各种数据结构

  • 分治

  • 动态规划

  • 数学类问题

  • 搜索问题

  • 排序问题

  • LeetCode 习题

  • 其他杂项算法题等



对于我们的作用: 基于 Java 语言的数据结构和算法题练手必备!

项目名称: eladmin

项目简介: eladmin 是一个基于 Spring Boot + Vue 的前后端分离的后台管理系统,项目采用分模块开发方式, 权限控制采用 RBAC,支持数据字典与数据权限管理,支持一键生成前后端代码,支持动态路由,对于初学者还是比较友好的。




主要技术点或特性:

  • Spring Boot 2.x

  • JPA

  • Spring Security

  • Redis

  • Vue

对于我们的作用: 一套典型的后台管理系统,用的也是一套比较典型的 Java 后端开发技术,可以帮我们串联起很多后端开发的知识。

项目源码地址: https://github.com/elunez/eladmin


项目名称: jodd

项目简介:

Jodd = tools + ioc + mvc + db + aop + tx + json + html < 1.7 Mb

没错,Jodd 是一个非常易用和好上手的开源 Java 微框架,里面包含了一系列平时经常会用到的一些核心程序库工具类/方法实用程序/框架等等。有了它,开发人员做起事来会变得非常简易和优雅,引入 jodd 就能帮我们快速实现某些功能。点赞!



主要技术点或特性:

jodd 主要包含:

  • Jodd Libraries(程序库):Json、Email、HTTP、Jerry ...

  • Micro-frameworks(微框架):Madvoc、Petite、Proxetta、DbOom ...

  • Jodd Utilities(实用工具):BeanUtil、Props、Decora、Cli、Ref ...

对于我们的作用: 一方面当我们想要用 Java 快速实现一些功能需求的时候,引入 jodd 就可以帮我们完成很多事情,很多工具和代码都开箱即用,简便高效;另外一方面研究其源码可以帮助我们打开技术视野。

项目名称: SnowJena

项目简介:

SnowJena 是一个基于令牌桶算法实现的分布式无锁限流框架,支持熔断降级,支持动态配置规则,支持可视化监控,开箱即用。可用于 Java 后端项目常见的本地限流和分布式限流的场景。



主要技术点或特性:

  • 支持本地限流

  • 支持分布式限流

  • 支持黑白名单

  • 支持可视化监控等。

另外项目用到了大量设计模式思想,包括单例模式、观察者模式、工厂模式、建造者模式等等。

对于我们的作用: 一是帮助我们学习和实践限流这一常见的技术方案和实现原理,二是帮助我们学习和理解常见的设计模式

项目名称: seata

项目简介: Seata 是一款阿里巴巴开源的分布式事务解决方案,致力于在微服务架构下提供高性能和简单易用的分布式事务服务。



在 Seata 开源之前,Seata 对应的内部版本在阿里内部一直扮演着分布式一致性中间件的角色,而且应用于历年的双 11 场景。2019 年 1 月,为了打造更加完善的技术生态和普惠技术成果,Seata 正式宣布对外开源了。



主要技术点或特性:

  • 支持常见主流的微服务框架

  • 支持 AT 模式

  • 支持 TCC 模式

  • 支持 SAGA 模式

  • 高可用和强大的横向扩展能力

对于我们的作用: 分布式事务问题几乎是当下后端开发和架构领域最棘手最有含金量的问题之一,多学点总是好的。

end

所有项目的源码和开发文档我都整理放在这了,由于平台限制,这里不能直接放源码链接,所以文中这 15 个项目源码和开发文档都给你们整理好了,点击此处【Java面试项目】即可免费领取!



用户头像

冉然学Java

关注

还未添加个人签名 2022.07.07 加入

努力学好Java、爱生活、爱旅游的冉冉; 分享自己工作上的经验,交流、共进步、共成长!

评论

发布
暂无评论
Java面试项目推荐,15个项目吃透两个offer拿到手软_offer_冉然学Java_InfoQ写作社区