{"id":61766,"url":"https://github.com/labex-labs/practice-java-programming-projects","name":"practice-java-programming-projects","description":"Build real Java projects with 29 beginner-friendly challenges. Learn by doing with guided coding exercises and practical applications.","projects_count":32,"last_synced_at":"2026-04-09T02:00:23.522Z","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":5,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2026-03-26T16:43:25.974Z","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-03-25T16:51:26.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":31581864,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-08T14:31:17.711Z","status":"online","status_checked_at":"2026-04-09T02:00:06.848Z","response_time":112,"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"}},"readme":"# Practice Java Programming Projects\n\n## Languages\n\n🇨🇳 [简体中文](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) 🇺🇸 [English](README.md) \n\n\u003cdiv align=\"center\"\u003e\n\u003cimg width=\"128px\" src=\"https://file.labex.io/path/vBtgM8cNsQFn.png\"\u003e\n\u003c/div\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## Exercises\n\n|   Index | Name                                                                                                                                        | Difficulty   | Practice                                                                                             |\n|---------|---------------------------------------------------------------------------------------------------------------------------------------------|--------------|------------------------------------------------------------------------------------------------------|\n|      01 | [Bulk Insert Data Into Course Schedule](https://labex.io/courses/project-bulk-insert-data-into-course-schedule)                             | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-bulk-insert-data-into-course-schedule)               |\n|      02 | [Chinese-English Information Switching via IoC](https://labex.io/courses/project-chinese-english-information-switching-via-ioc)             | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-chinese-english-information-switching-via-ioc)       |\n|      03 | [Configuring With YAML Files](https://labex.io/courses/project-configuring-with-yaml-files)                                                 | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-configuring-with-yaml-files)                         |\n|      04 | [Counting Access Times by IP](https://labex.io/courses/project-counting-access-times-by-ip)                                                 | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-counting-access-times-by-ip)                         |\n|      05 | [Course Schedule CRUD With MyBatis](https://labex.io/courses/project-course-schedule-crud-with-mybatis)                                     | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-course-schedule-crud-with-mybatis)                   |\n|      06 | [Extending Entity with Custom Properties](https://labex.io/courses/project-custom-type-handler)                                             | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-custom-type-handler)                                 |\n|      07 | [Displaying Query Results Using EL Expressions](https://labex.io/courses/project-displaying-query-results-using-el-expressions)             | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-displaying-query-results-using-el-expressions)       |\n|      08 | [Druid Database Connection Pool Access](https://labex.io/courses/project-druid-database-connection-pool-access)                             | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-druid-database-connection-pool-access)               |\n|      09 | [Employee Management File Integration](https://labex.io/courses/project-employee-management-file-integration)                               | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-employee-management-file-integration)                |\n|      10 | [First Program With Quartz Framework](https://labex.io/courses/project-first-program-with-quartz-framework)                                 | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-first-program-with-quartz-framework)                 |\n|      11 | [Image Upload Based on TCP Protocol](https://labex.io/courses/project-image-upload-based-on-tcp-protocol)                                   | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-image-upload-based-on-tcp-protocol)                  |\n|      12 | [Concurrent Producer-Consumer with Guava Monitor](https://labex.io/courses/project-implement-thread-communication)                          | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-implement-thread-communication)                      |\n|      13 | [MyBatis Database Integration Project](https://labex.io/courses/project-input-parameter-practice)                                           | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-input-parameter-practice)                            |\n|      14 | [Receive Request Parameters with JavaBean](https://labex.io/courses/project-javabean-mutiple-parameters)                                    | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-javabean-mutiple-parameters)                         |\n|      15 | [Merge Multiple Files Alternately](https://labex.io/courses/project-merge-multiple-files-alternately)                                       | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-merge-multiple-files-alternately)                    |\n|      16 | [Displaying Proverb on Web Page with JSP](https://labex.io/courses/project-output-a-quote)                                                  | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-output-a-quote)                                      |\n|      17 | [Outputting Triangle With Out Object](https://labex.io/courses/project-outputting-triangle-with-out-object)                                 | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-outputting-triangle-with-out-object)                 |\n|      18 | [Employee Information Retrieval with MVC and Servlet](https://labex.io/courses/project-query-employee-information)                          | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-query-employee-information)                          |\n|      19 | [Recording Web Page Accesses Using Listeners](https://labex.io/courses/project-recording-web-page-accesses-using-listeners)                 | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-recording-web-page-accesses-using-listeners)         |\n|      20 | [Search for Text Files in Directory](https://labex.io/courses/project-search-for-text-files-in-directory)                                   | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-search-for-text-files-in-directory)                  |\n|      21 | [Setting Up Spring Development Environment](https://labex.io/courses/project-setting-up-spring-development-environment)                     | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-setting-up-spring-development-environment)           |\n|      22 | [Spring IoC Employee Management System](https://labex.io/courses/project-spring-ioc-employee-management-system)                             | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-spring-ioc-employee-management-system)               |\n|      23 | [Unit Testing Java Student Class](https://labex.io/courses/project-student-class-test)                                                      | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-student-class-test)                                  |\n|      24 | [Student Management Module Unit Testing](https://labex.io/courses/project-student-management-module-unit-testing)                           | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-student-management-module-unit-testing)              |\n|      25 | [Use Properties to Modify Database Configuration](https://labex.io/courses/project-use-properties-to-modify-database-configuration)         | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-use-properties-to-modify-database-configuration)     |\n|      26 | [Modifying the Teacher Table Using PreparedStatement](https://labex.io/courses/project-modifying-the-teacher-table-using-preparedstatement) | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-modifying-the-teacher-table-using-preparedstatement) |\n|      27 | [Query Teacher Salary Using PreparedStatement](https://labex.io/courses/project-query-teacher-salary-using-preparedstatement)               | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-query-teacher-salary-using-preparedstatement)        |\n|      28 | [Statement for Querying Classroom Table](https://labex.io/courses/project-statement-for-querying-teacher-table)                             | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-statement-for-querying-teacher-table)                |\n|      29 | [University Information Query System](https://labex.io/courses/project-university-information-query-system)                                 | Beginner     | [🚀 Start Lab](https://labex.io/courses/project-university-information-query-system)                 |\n\n## More\n\n- 🔗 [Java Learn more about](https://labex.io/skilltrees/java)\n- 🔗 [Awesome Programming Projects](https://github.com/labex-labs/awesome-programming-projects)\n- 🔗 [Awesome Programming Courses](https://github.com/labex-labs/awesome-programming-courses)\n\n","created_at":"2024-06-13T00:00:20.077Z","updated_at":"2026-04-09T02:00:23.522Z","primary_language":null,"list_of_lists":false,"displayable":true,"categories":["More","More Projects","Other Lists","Exercises"],"sub_categories":[],"projects_url":"https://awesome.ecosyste.ms/api/v1/lists/labex-labs%2Fpractice-java-programming-projects/projects"}