{"id":61766,"url":"https://github.com/labex-labs/java-practice-projects","name":"java-practice-projects","description":"Build real Java projects with 29 beginner-friendly challenges. Learn by doing with guided coding exercises and practical applications.","projects_count":34,"last_synced_at":"2026-07-19T04:00:39.647Z","repository":{"id":243015127,"uuid":"811225741","full_name":"labex-labs/practice-java-programming-projects","owner":"labex-labs","description":"Build real Java projects with 29 beginner-friendly challenges. Learn by doing with guided coding exercises and practical applications.","archived":false,"fork":false,"pushed_at":"2025-10-23T00:17:33.000Z","size":34,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2026-06-13T09:03:36.820Z","etag":null,"topics":["algorithms","awesome","awesome-list","beginnertutorial","corejava","datastructures","exercises","hands-on","java","javadevelopment","jvm","labex","learningpath","objectorientedprogramming","oopconcepts","programming","programmingroadmap","projects","softwareengineering"],"latest_commit_sha":null,"homepage":"https://labex.io/learn/java","language":null,"has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/labex-labs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-06-06T07:25:22.000Z","updated_at":"2026-05-28T10:54:02.000Z","dependencies_parsed_at":"2025-11-15T19:00:34.858Z","dependency_job_id":null,"html_url":"https://github.com/labex-labs/practice-java-programming-projects","commit_stats":null,"previous_names":["labex-labs/practice-java-programming-projects"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/labex-labs/practice-java-programming-projects","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/labex-labs%2Fpractice-java-programming-projects","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/labex-labs%2Fpractice-java-programming-projects/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/labex-labs%2Fpractice-java-programming-projects/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/labex-labs%2Fpractice-java-programming-projects/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/labex-labs","download_url":"https://codeload.github.com/labex-labs/practice-java-programming-projects/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/labex-labs%2Fpractice-java-programming-projects/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34973617,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-30T02:00:05.919Z","response_time":92,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"created_at":"2024-06-13T00:00:20.077Z","updated_at":"2026-07-19T04:00:39.649Z","primary_language":null,"list_of_lists":false,"displayable":true,"categories":["More","More Projects","Other Lists","Projects","Exercises"],"sub_categories":[],"readme":"# Java Practice Projects\n\n**Languages:** [English](README.md) · [简体中文](README_zh.md) · [日本語](README_ja.md) · [Español](README_es.md) · [Français](README_fr.md) · [Deutsch](README_de.md) · [Русский](README_ru.md) · [한국어](README_ko.md) · [Português](README_pt.md)\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://labex.io/learn/java\"\u003e\n    \u003cimg width=\"128\" src=\"https://file.labex.io/upload/u/1991/c3deuYse7dm2.png\" alt=\"Java\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\nLearn Java, a versatile, object-oriented programming language, with this comprehensive learning path. Designed for beginners, these Java courses provide a structured roadmap to master OOP concepts, Java syntax, and application development. Gain real-world experience by building Java applications through hands-on, practical coding exercises in an interactive Java playground.\n\n[Explore Projects on LabEx](https://labex.io/learn/java)\n\n## Projects\n\nExplore 33 beginner-friendly Java projects that turn core language concepts into small, complete programs. Each project opens in LabEx with a ready-to-use environment, so you can focus on building instead of setup.\n\n|   Index | Project                                                                                                                             | Difficulty   | Practice                                                                                          |\n|---------|-------------------------------------------------------------------------------------------------------------------------------------|--------------|---------------------------------------------------------------------------------------------------|\n|      01 | [Java for Beginners](https://labex.io/courses/java-for-beginners)                                                                   | Beginner     | [Start project](https://labex.io/courses/java-for-beginners)                                      |\n|      02 | [Java Programming Exercises](https://labex.io/courses/java-exercises)                                                               | Beginner     | [Start project](https://labex.io/courses/java-exercises)                                          |\n|      03 | [Chinese-English Information Switching via IoC](https://labex.io/courses/project-chinese-english-information-switching-via-ioc)     | Beginner     | [Start project](https://labex.io/courses/project-chinese-english-information-switching-via-ioc)   |\n|      04 | [Configuring With YAML Files](https://labex.io/courses/project-configuring-with-yaml-files)                                         | Beginner     | [Start project](https://labex.io/courses/project-configuring-with-yaml-files)                     |\n|      05 | [Bulk Insert Data Into Course Schedule](https://labex.io/courses/project-bulk-insert-data-into-course-schedule)                     | Beginner     | [Start project](https://labex.io/courses/project-bulk-insert-data-into-course-schedule)           |\n|      06 | [Counting Access Times by IP](https://labex.io/courses/project-counting-access-times-by-ip)                                         | Beginner     | [Start project](https://labex.io/courses/project-counting-access-times-by-ip)                     |\n|      07 | [Employee Information Retrieval with MVC and Servlet](https://labex.io/courses/project-query-employee-information)                  | Beginner     | [Start project](https://labex.io/courses/project-query-employee-information)                      |\n|      08 | [Setting Up Spring Development Environment](https://labex.io/courses/project-setting-up-spring-development-environment)             | Beginner     | [Start project](https://labex.io/courses/project-setting-up-spring-development-environment)       |\n|      09 | [Concurrent Producer-Consumer with Guava Monitor](https://labex.io/courses/project-implement-thread-communication)                  | Beginner     | [Start project](https://labex.io/courses/project-implement-thread-communication)                  |\n|      10 | [Spring IoC Employee Management System](https://labex.io/courses/project-spring-ioc-employee-management-system)                     | Beginner     | [Start project](https://labex.io/courses/project-spring-ioc-employee-management-system)           |\n|      11 | [Search for Text Files in Directory](https://labex.io/courses/project-search-for-text-files-in-directory)                           | Beginner     | [Start project](https://labex.io/courses/project-search-for-text-files-in-directory)              |\n|      12 | [Course Schedule CRUD With MyBatis](https://labex.io/courses/project-course-schedule-crud-with-mybatis)                             | Beginner     | [Start project](https://labex.io/courses/project-course-schedule-crud-with-mybatis)               |\n|      13 | [Receive Request Parameters with JavaBean](https://labex.io/courses/project-javabean-mutiple-parameters)                            | Beginner     | [Start project](https://labex.io/courses/project-javabean-mutiple-parameters)                     |\n|      14 | [Merge Multiple Files Alternately](https://labex.io/courses/project-merge-multiple-files-alternately)                               | Beginner     | [Start project](https://labex.io/courses/project-merge-multiple-files-alternately)                |\n|      15 | [Student Management Module Unit Testing](https://labex.io/courses/project-student-management-module-unit-testing)                   | Beginner     | [Start project](https://labex.io/courses/project-student-management-module-unit-testing)          |\n|      16 | [Unit Testing Java Student Class](https://labex.io/courses/project-student-class-test)                                              | Beginner     | [Start project](https://labex.io/courses/project-student-class-test)                              |\n|      17 | [Recording Web Page Accesses Using Listeners](https://labex.io/courses/project-recording-web-page-accesses-using-listeners)         | Beginner     | [Start project](https://labex.io/courses/project-recording-web-page-accesses-using-listeners)     |\n|      18 | [Image Upload Based on TCP Protocol](https://labex.io/courses/project-image-upload-based-on-tcp-protocol)                           | Beginner     | [Start project](https://labex.io/courses/project-image-upload-based-on-tcp-protocol)              |\n|      19 | [Outputting Triangle With Out Object](https://labex.io/courses/project-outputting-triangle-with-out-object)                         | Beginner     | [Start project](https://labex.io/courses/project-outputting-triangle-with-out-object)             |\n|      20 | [Displaying Proverb on Web Page with JSP](https://labex.io/courses/project-output-a-quote)                                          | Beginner     | [Start project](https://labex.io/courses/project-output-a-quote)                                  |\n|      21 | [Configuring Logging and Batch Aliasing in MyBatis](https://labex.io/courses/project-course-schedule-logging)                       | Beginner     | [Start project](https://labex.io/courses/project-course-schedule-logging)                         |\n|      22 | [Employee Management File Integration](https://labex.io/courses/project-employee-management-file-integration)                       | Beginner     | [Start project](https://labex.io/courses/project-employee-management-file-integration)            |\n|      23 | [Operate the Course Table](https://labex.io/courses/project-operate-the-course-table)                                               | Beginner     | [Start project](https://labex.io/courses/project-operate-the-course-table)                        |\n|      24 | [Druid Database Connection Pool Access](https://labex.io/courses/project-druid-database-connection-pool-access)                     | Beginner     | [Start project](https://labex.io/courses/project-druid-database-connection-pool-access)           |\n|      25 | [Extending Entity with Custom Properties](https://labex.io/courses/project-custom-type-handler)                                     | Beginner     | [Start project](https://labex.io/courses/project-custom-type-handler)                             |\n|      26 | [MyBatis Database Integration Project](https://labex.io/courses/project-input-parameter-practice)                                   | Beginner     | [Start project](https://labex.io/courses/project-input-parameter-practice)                        |\n|      27 | [Practical Use of resultMap](https://labex.io/courses/project-practical-use-of-resultmap)                                           | Beginner     | [Start project](https://labex.io/courses/project-practical-use-of-resultmap)                      |\n|      28 | [Implementation of AJAX Requests Using JS](https://labex.io/courses/project-implementation-of-ajax-requests-using-js)               | Beginner     | [Start project](https://labex.io/courses/project-implementation-of-ajax-requests-using-js)        |\n|      29 | [Logging Project Information With Log4j2](https://labex.io/courses/project-logging-project-information-with-log4j2)                 | Beginner     | [Start project](https://labex.io/courses/project-logging-project-information-with-log4j2)         |\n|      30 | [First Program With Quartz Framework](https://labex.io/courses/project-first-program-with-quartz-framework)                         | Beginner     | [Start project](https://labex.io/courses/project-first-program-with-quartz-framework)             |\n|      31 | [JSON Data Transfer With AJAX](https://labex.io/courses/project-json-data-transfer-with-ajax)                                       | Beginner     | [Start project](https://labex.io/courses/project-json-data-transfer-with-ajax)                    |\n|      32 | [Displaying Query Results Using EL Expressions](https://labex.io/courses/project-displaying-query-results-using-el-expressions)     | Beginner     | [Start project](https://labex.io/courses/project-displaying-query-results-using-el-expressions)   |\n|      33 | [Use Properties to Modify Database Configuration](https://labex.io/courses/project-use-properties-to-modify-database-configuration) | Beginner     | [Start project](https://labex.io/courses/project-use-properties-to-modify-database-configuration) |\n\n[View More on LabEx](https://labex.io/learn/java)\n\n## About LabEx\n\n\u003cdiv align=\"left\"\u003e\u003cp\u003e\u003ca href=\"https://labex.io\"\u003e\u003cstrong\u003eLabEx\u003c/strong\u003e\u003c/a\u003e is a \u003cstrong\u003ehands-on learning platform for beginners\u003c/strong\u003e.\u003c/p\u003e\u003cp\u003eExplore \u003ca href=\"https://labex.io/learn/linux\"\u003e\u003cstrong\u003eLinux\u003c/strong\u003e\u003c/a\u003e, \u003ca href=\"https://labex.io/learn/devops\"\u003e\u003cstrong\u003eDevOps\u003c/strong\u003e\u003c/a\u003e, \u003ca href=\"https://labex.io/learn/cybersecurity\"\u003e\u003cstrong\u003eCybersecurity\u003c/strong\u003e\u003c/a\u003e, and \u003cstrong\u003emore\u003c/strong\u003e — all directly in your browser.\u003c/p\u003e\u003cp\u003eLearn step by step through \u003cstrong\u003einteractive labs\u003c/strong\u003e, \u003cstrong\u003eguided exercises\u003c/strong\u003e, and \u003cstrong\u003ereal-world projects\u003c/strong\u003e. 🌱\u003cbr /\u003eNo setup, no stress — just practice and grow your skills by doing.\u003c/p\u003e\u003cbr /\u003e\u003cp\u003e\u003ca href=\"https://apps.apple.com/app/id6765840991\"\u003e\u003cimg src=\"https://developer.apple.com/assets/elements/badges/download-on-the-app-store.svg\" alt=\"Download on the App Store\" height=\"54\" /\u003e\u003c/a\u003e\u0026nbsp;\u003ca href=\"https://apps.apple.com/app/id6765840991\"\u003e\u003cimg src=\"https://developer.apple.com/app-store/marketing/guidelines/images/badge-download-on-the-mac-app-store.svg\" alt=\"Download on the Mac App Store\" height=\"52\" /\u003e\u003c/a\u003e\u003c/p\u003e\u003cbr /\u003e\u003cp\u003e📖 Need help? Visit our \u003ca href=\"https://support.labex.io/\"\u003eHelp Center\u003c/a\u003e or email info@labex.io\u003c/p\u003e\u003c/div\u003e\n\n","projects_url":"https://awesome.ecosyste.ms/api/v1/lists/labex-labs%2Fjava-practice-projects/projects"}