{"id":23550292,"url":"https://github.com/icanerdogan/springtutorial-beginners","last_synced_at":"2025-04-28T10:51:56.595Z","repository":{"id":51323637,"uuid":"366645049","full_name":"icanerdogan/SpringTutorial-Beginners","owner":"icanerdogan","description":"Spring Kurulumundan Başlayarak, Spring IOC ve Dependency Injection, Hibernate, Maven ve Spring Boot Konularına Giriş Yapıyoruz.","archived":false,"fork":false,"pushed_at":"2021-09-07T18:00:08.000Z","size":58838,"stargazers_count":12,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-30T08:51:16.633Z","etag":null,"topics":["apache","apache-tomcat","eclipse","hibernate","spring","spring-boot"],"latest_commit_sha":null,"homepage":"https://icanerdogan.medium.com","language":"Java","has_issues":true,"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/icanerdogan.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}},"created_at":"2021-05-12T08:26:24.000Z","updated_at":"2023-09-22T19:51:32.000Z","dependencies_parsed_at":"2022-09-04T10:11:42.777Z","dependency_job_id":null,"html_url":"https://github.com/icanerdogan/SpringTutorial-Beginners","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/icanerdogan%2FSpringTutorial-Beginners","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/icanerdogan%2FSpringTutorial-Beginners/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/icanerdogan%2FSpringTutorial-Beginners/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/icanerdogan%2FSpringTutorial-Beginners/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/icanerdogan","download_url":"https://codeload.github.com/icanerdogan/SpringTutorial-Beginners/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251300441,"owners_count":21567448,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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"}},"keywords":["apache","apache-tomcat","eclipse","hibernate","spring","spring-boot"],"created_at":"2024-12-26T10:15:30.284Z","updated_at":"2025-04-28T10:51:56.571Z","avatar_url":"https://github.com/icanerdogan.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003e Spring Tutorial for Beginners \u003c/h1\u003e\n \n![GitHub last commit](https://img.shields.io/github/last-commit/icanerdogan/SpringTutorial-Beginners?style=flat-square)\n![GitHub Repo stars](https://img.shields.io/github/stars/icanerdogan/SpringTutorial-Beginners?logo=Github\u0026style=flat-square)\n![GitHub followers](https://img.shields.io/github/followers/icanerdogan?color=yellow\u0026logo=Github\u0026style=flat-square)\n \n \u003ch2\u003eFile Directory\u003c/h2\u003e\n \u003cul\u003e\n     \u003cli\u003e\u003ca href=\"#apache-tomcat\"\u003e Apache Tomcat\u003c/a\u003e\u003c/li\u003e\n     \u003cli\u003e\u003ca href=\"#apache-eclipse\"\u003e Apache Tomcat - Eclipse Bağlantısı\u003c/a\u003e\u003c/li\u003e\n     \u003cli\u003e\u003ca href=\"#spring\"\u003e Spring Paketlerinin İndirilmesi ve Projeye Entegrasyonu\u003c/a\u003e\u003c/li\u003e\n     \u003cli\u003e\u003ca href=\"#hibernate\"\u003e Hibernate\u003c/a\u003e\u003c/li\u003e\n         \u003cul\u003e\n             \u003cli\u003e\u003ca href=\"#hibernateproje\"\u003eHibernate Proje Entegrasyonu \u003c/a\u003e\u003c/li\u003e\n         \u003c/ul\u003e\n     \u003cli\u003e\u003ca href=\"#maven\"\u003e Maven \u003c/a\u003e\u003c/li\u003e\n         \u003cul\u003e\n             \u003cli\u003e\u003ca href=\"#maven-kurulum\"\u003e Maven Kurulumu \u003c/a\u003e\u003c/li\u003e\n             \u003cli\u003e\u003ca href=\"#maven-entegre\"\u003e Maven Projesine Kütüphane Entegrasyonu \u003c/a\u003e\u003c/li\u003e\n         \u003c/ul\u003e\n     \u003cli\u003e\u003ca href=\"#spring-boot\"\u003e Spring Boot \u003c/a\u003e\u003c/li\u003e\n         \u003cul\u003e\n            \u003cli\u003e\u003ca href=\"#spring-giris\"\u003e Spring Boot : Giriş \u003c/a\u003e\u003c/li\u003e\n            \u003cli\u003e\u003ca href=\"#spring-rest\"\u003e Spring Boot : Spring Rest \u003c/a\u003e\u003c/li\u003e\n            \u003cli\u003e\u003ca href=\"#spring-katman\"\u003e Spring Boot : Katmanlı Mimariler \u003c/a\u003e\u003c/li\u003e\n         \u003c/ul\u003e \n     \u003cli\u003e\u003ca href=\"#sosyal\"\u003e Sosyal Medya Hesaplarım \u003c/a\u003e\u003c/li\u003e\n \u003c/ul\u003e\n\n\u003chr\u003e\n \u003ch2 id=\"apache-tomcat\"\u003eApache Tomcat\u003c/h2\u003e\n \u003cp\u003eApache Tomcat, Apache Yazılım Vakfı tarafından geliştirilmiş açık kaynak bir Java Servlet Container uygulamasıdır.\u003c/p\u003e\n \n \u003ch3\u003e\u003ci\u003eKurulum\u003c/i\u003e\u003c/h3\u003e\n \u003col type=\"1\"\u003e\n  \u003cli\u003ehttps://tomcat.apache.org sitesine gidin. Sol tarafta \"Download\" altındaki kısımında, son sürüme tıklayın.\u003c/li\u003e\u003cbr\u003e\n  \u003cli\u003eÇıkan ekranda işletim sisteminize ve sürümünüze en uygun seçeneği seçin ve indirme işlemi başlayacaktır.\u003c/li\u003e\u003cbr\u003e \n  \u003cli\u003e Uygulamamızın kurulumuna devam ederken, aşağıda görülen ekranda \"Full\" kurulumu seçmeyi unutmayın!\u003c/li\u003e\u003cbr\u003e \n  \u003cli\u003e \"Configuration\" ekranında Port numaralarımızı aşağıdaki gibi veriyoruz. User Name alanına kullanıcı adımızı \"admin\" olarak, Password alanına şifremizi \"12345\" olarak belirliyoruz.\u003c/li\u003e\u003cbr\n  \u003cli\u003e \"Java Virtual Machine\" ekranında gereken JDK dosyamızın dizinini veriyoruz. Burada JDK 11 sürümünü de kullanabilirsiniz!\u003c/li\u003e\u003cbr\u003e\n  \u003cli\u003e Programımızın kurulacağı dosya dizinini de aşağıdaki gibi veriyoruz!\u003c/li\u003e\u003cbr\u003e\n  \u003cli\u003e Kurulum bittikten sonra \"localhost:8080\" adresine gittiğinizde karşınıza aşağıdaki web site çıkacktır. Karşınıza bu ekran geliyorsa kurulumunuz başarıyla tamamlanmıştır! \u003c/li\u003e\u003cbr\u003e\n \u003c/ol\u003e \n \n \u003chr\u003e\n \n\u003ch2 id=\"apache-eclipse\"\u003e Apache Tomcat - Eclipse Bağlantısı \u003c/h2\u003e\n  \u003ch3\u003e\u003ci\u003eKurulum\u003c/i\u003e\u003c/h3\u003e\n   \u003col type=\"1\"\u003e\n  \u003cli\u003e Eclipse IDE Programımızı açıyoruz.\u003c/li\u003e\u003cbr\u003e\n  \u003cli\u003e File \u003e New \u003e Other kısmına tıklıyoruz! \u003c/li\u003e\u003cbr\u003e\n  \u003cli\u003e Karşımıza gelen ekranda \"server\" yazıp gelen \"Server\" seçeneğine tıklayıp, Next diyoruz! \u003c/li\u003e\u003cbr\u003e\n  \u003cli\u003e Tekrardan karşımıza çıkan ekranda arama kutucuğuna \"apache\" yazıyoruz ve son sürümünü (10) kurduğumuz için \"Tomcat v10.0 Server\" seceneğine tıklayıp Next diyoruz!\u003c/li\u003e\u003cbr\u003e\n  \u003cli\u003e Bu ekranda Tomcat'i bilgisayarımıza kurduğumuz dizini giriyoruz!\u003c/li\u003e\u003cbr\u003e\n  \u003cli\u003e Finish ile kurulumu bitirebiliriz. \u003c/li\u003e\u003cbr\u003e\n  \u003cli\u003e Eğer Eclipse IDE uygulamanızda Alt barda \"Servers\" yok ise bunu aşağıdaki adımları izleyerek ekleyebilirsiniz. \u003c/li\u003e\u003cbr\u003e\n  \u003cli\u003e Window \u003e Show View \u003e Other kısmına tıklıyoruz! \u003c/li\u003e\u003cbr\u003e\n  \u003cli\u003e Buradan Server \u003e Servers altında \"Servers\" seceneğine tıklayıp, Open butonuna basıyoruz! \u003c/li\u003e\u003cbr\u003e\n \u003c/ol\u003e \n\n\u003chr\u003e\n\n\u003ch2 id=\"spring\"\u003e Spring Paketlerinin İndirilmesi ve Projeye Entegrasyonu \u003c/h2\u003e\n  \u003ch3\u003e\u003ci\u003eKurulum\u003c/i\u003e\u003c/h3\u003e\n  \n  \u003col type=\"1\"\u003e\n     \u003cli\u003e https://repo.spring.io/release/org/springframework/spring/ Bu adresten sayfanın en altından en güncel spring sürümünü seçiyoruz! \u003cbr\u003e \u003cbr\u003e \u003cimg src=\"https://i.hizliresim.com/t6hn4dv.PNG\"\u003e \u003c/li\u003e\u003cbr\u003e\n     \u003cli\u003e Tıkladığımızda karşımıza gelen ekranda \"-dist.zip\" isimli dosyayı indiriyoruz! \u003cbr\u003e \u003cbr\u003e \u003cimg src=\"https://i.hizliresim.com/nt8feu8.PNG\"\u003e\u003c/img\u003e\u003c/li\u003e\u003cbr\u003e\n     \u003cli\u003e İndirilen dosyayı klasörden çıkarıldığında \"libs\" klasörü içindeki tüm jar dosyalarını kopyalıyoruz! \u003cbr\u003e \u003cbr\u003e \u003cimg src=\"https://i.hizliresim.com/g4pjc4n.PNG\"\u003e\u003c/img\u003e\u003c/li\u003e\u003cbr\u003e\n     \u003cli\u003e Eclipse uygulamamızı açıp istediğiniz dizinde \"springIntro\" adından java projesi oluşturuyoruz. \u003cbr\u003e \u003cbr\u003e \u003cimg src=\"https://i.hizliresim.com/4ax2z8s.PNG\"\u003e\u003c/img\u003e\u003c/li\u003e\u003cbr\u003e\n     \u003cli\u003e Projemize sağ tıklayıp New \u003e Folder kısmına gidiyoruz! \u003cbr\u003e \u003cbr\u003e \u003cimg src=\"https://i.hizliresim.com/efra17w.png\"\u003e\u003c/img\u003e\u003c/li\u003e\u003cbr\u003e\n     \u003cli\u003e Karşımıza gelen ekranda \"libs\" olarak belirlediğimiz dosyamızın adını giriyoruz! \u003cbr\u003e \u003cbr\u003e \u003cimg src=\"https://i.hizliresim.com/lg7q3m9.PNG\"\u003e\u003c/img\u003e\u003c/li\u003e\u003cbr\u003e\n     \u003cli\u003e Tekrar projemize sağ tıklayıp en alt kısımda bulunan \"Properties\" alanına tıklıyoruz! \u003cbr\u003e \u003cbr\u003e \u003cimg src=\"https://i.hizliresim.com/sdas6ix.png\"\u003e\u003c/img\u003e\u003c/li\u003e\u003cbr\u003e\n     \u003cli\u003e Karşımıza çıkan bu ekranda \"Libraries\" sekmesine gelip \"Classpath\"e bir kez tıklıyoruz. Yanda bulunan \"Add JARs...\" alanına tıklıyoruz! \u003cbr\u003e \u003cbr\u003e \u003cimg src=\"https://i.hizliresim.com/611cjuf.PNG\"\u003e\u003c/img\u003e\u003c/li\u003e\u003cbr\u003e\n     \u003cli\u003e Gelen ekranda açtığımız \"libs\" klasörünü bulup tüm Jar dosyalarını seçiyoruz! (Shift ile ilk jar dosyasına tıklayıp ardından son jar dosyasına tıklarsanız tüm Jar dosyalarını tek seferde seçebilirsiniz!) \u003cbr\u003e \u003cbr\u003e \u003cimg src=\"https://i.hizliresim.com/a8vbuou.PNG\"\u003e\u003c/img\u003e\u003c/li\u003e\u003cbr\u003e\n     \u003cli\u003e \"OK\" tuşuna bastıktan sonra \"Apply and Close\" ile ekranı kapatıp, projemizi başarıyla hazırlamış oluyoruz!\u003c/li\u003e\u003cbr\u003e\n \u003c/ol\u003e \n \n \u003chr\u003e\n \n \u003ch2 id=\"hibernate\"\u003e Hibernate \u003c/h2\u003e\n \u003cp\u003eHibernate, veritabanınızdaki tablolar ile classlar ile eşleştirip, class üzerinden veritabanındaki nesneleri ilişkilendirerek \"insert\", \"update\", \"delete\" ve \"select\" yapabilmemizi sağlıyor.\nJDBC ile yapılan tüm veritabanı sorgularını tamamen hibernate ile \"generate\" olarak yapılıyor.  \u003c/p\u003e\n  \u003ch3\u003e\u003ci\u003eKurulum\u003c/i\u003e\u003c/h3\u003e\n  \n  \u003col type=\"1\"\u003e\n     \u003cli\u003e https://hibernate.org/orm/releases/5.4/ adresine gidin ve görseldeki butona tıklayın! Açılan \"SourceForge\" penceresinde indirme otomatik olarak başlayacaktır.\u003c/li\u003e\u003cbr\u003e\n     \u003cli\u003e Eğer bilgisayarınızda MySQL yoksa https://dev.mysql.com/downloads/windows/installer/8.0.html buradan indirmeniz, gerekiyor! Kurulum için detaylı bir kurulum videosu izlemenizi öneririm!  \u003c/li\u003e\u003cbr\u003e\n     \u003cli\u003e Eclipse IDE'mize gelip \"hibernateDemo\" adında proje oluşturduktan sonra projeye sağ tıklayıp New \u003e Folder!a tıklıyoruz. \u003c/li\u003e\u003cbr\u003e\n     \u003cli\u003e \"libs\" adında bir klasör oluşturuyoruz! \u003c/li\u003e\u003cbr\u003e\n     \u003cli\u003e İndirdiğimiz hibernate klasörünü RAR'dan çıkardıktan sonra görseldeki uzantıya gidip JAR dosyalarnı kopyalıyoruz. Sonrasında projemizde oluşturduğumuz \"libs\" içine JAR dosyalarını yapıştırıyoruz! \u003c/li\u003e\u003cbr\u003e\n     \u003cli\u003e https://disk.yandex.com.tr/d/O5rimXX5yG0Shw Burada bulunan MySQL bağlantı JAR dosyasını da \"libs\" klasörü içine atıyoruz. \u003c/li\u003e\u003cbr\u003e\n     \u003cli\u003e \"libs\" klasörü içinde bulunan dosyaları tanımlamak için, projemize sağ tıklayıp \"properties\" kısmına giriyoruz! \u003c/li\u003e\u003cbr\u003e\n     \u003cli\u003e Çıkan ekranda gördüğünüz adımları takip ederek \"ADD Jars...\" butonuna tıklıyoruz.\u003c/li\u003e\u003cbr\u003e\n     \u003cli\u003e Son olarak \"hibernateDemo\" içindeki JAR dosyalarını ekleyip, Apply ve sonrasına Apply\u0026Close ile ekranı kapatıyoruz!\u003c/li\u003e\u003cbr\u003e\n \u003c/ol\u003e \n \n \n \u003ch2 id=\"hibernateproje\"\u003e Hibernate Proje Entegrasyonu \u003c/h2\u003e\n  \u003ch3\u003e\u003ci\u003eKurulum\u003c/i\u003e\u003c/h3\u003e\n  \u003col type=\"1\"\u003e\n      \u003cli\u003e https://disk.yandex.com.tr/d/Hv0ybf55Y8Mh-A adresine gidin! \"hibernate.cfg.xml\" dosyasını indirin. \u003c/li\u003e\u003cbr\u003e\n      \u003cli\u003e \"src\" dosyası içine indirdiğiniz dosyayı yapıştırın! \u003c/li\u003e\u003cbr\u003e\n      \u003cli\u003e Dosya içinde \"connection.url\" kısmını veritabanı adınıza göre veriryoruz, yine kullanıcı adınızı ve şifrenizi veritabanınıza göre verin! \u003c/li\u003e\u003cbr\u003e\n \u003c/ol\u003e\n\n\u003chr\u003e\n\n \u003ch2 id=\"maven\"\u003e Maven \u003c/h2\u003e\n \u003cp\u003eBüyük projelerde birçok Jar dosyaları vs. birçok kütüphaneden yararlanıyoruz. Proje devam ettikçe bu paket sayısı artarken, paketlere gelen güncellemelerde takip edilmesi gerekiyor. \u003c/p\u003e\n \u003cul\u003e\n \u003cli\u003eJar dosyaları yönetilebilir.\u003c/li\u003e\u003cbr\u003e\n \u003cli\u003eProje şablonları ile standart proje yönetimlerini yapabilirsiniz. \u003c/li\u003e\u003cbr\u003e\n \u003cli\u003eVersiyon takip sistemi de sunuyor.\u003c/li\u003e\u003cbr\u003e\n \u003c/ul\u003e\n \u003cp\u003eBiz projemize birşey eklediğimizde veya istediğimizde bunu maven ile yapıyoruz. Bu durumda maven bizim diğer kütüphaneler ile haberleşmeyi sağlıyor.\u003c/p\u003e\n \u003cp\u003eHibernate, Spring gibi firmalar yaptıkları güncellemeleri Maven'a yükler, projeler de bu şekilde rahatlıkla güncellemeleri takip edebilir.\u003c/p\u003e\n  \u003ch3 id=\"maven-kurulum\"\u003e\u003ci\u003eKurulum\u003c/i\u003e\u003c/h3\u003e\n  \u003col type=\"1\"\u003e\n      \u003cli\u003e Öncelikle Help \u003e Install New Software ile maven'ı projemize eklememiz gerekiyor! \u003c/li\u003e\u003cbr\u003e\n      \u003cli\u003e Çıkan ekranda Work with kısmına \nhttp://download.eclipse.org/technology/m2e/releases/ bu linki ekliyoruz ve \"Add\" butonua basıyoruz. \"Group items by category\" tikini kaldırıyoruz ve ekranda gördüğünüz \"m2e\" paketlerine tik koyuyoruz! Next diyip kurulumunu bitiriyoruz. \u003c/li\u003e\u003cbr\u003e\n      \u003cli\u003e Maven projesi oluşturmak için öncelikle File \u003e New \u003e Other'a tıklıyoruz! \u003c/li\u003e\u003cbr\u003e\n      \u003cli\u003e Gelen ekranda arama kısmına \"maven\" yazıyoruz ve \"Maven Poject\" kısmında tıklıyoruz. Next butonuna tıklayıp devam ediyoruz. \u003c/li\u003e\u003cbr\u003e\n      \u003cli\u003e Bu ekranda çalışma alanımızı istiyorsanız değiştirebilirsiniz ancak genelde deafult olarak devam edilir! \u003c/li\u003e\u003cbr\u003e\n      \u003cli\u003e Filter kısmında \"maven-archetype-quickstart\" yazıp alt tarafta işaretli olan paketi seçip Next diyip devam ediyoruz! \u003c/li\u003e\u003cbr\u003e\n      \u003cli\u003e Bu ekranda \"Group Id\" şirketimizin adı, \"Artifact Id\" ise oluşturacağımız projenin adıdır. Örnek olarak aşağıdaki gibi oluşturup Finish ile projemizi tamamlıyoruz! \u003c/li\u003e\u003cbr\u003e\n      \u003cli\u003e Oluşturduğumuz dosya içinde \u003cb\u003epom.xml\u003c/b\u003e dosyasında görüldü yere \"1.\" yazısından sonra kullandığımız JDK sürümünü yazıyoruz. Örnek olarak ben JDK 16 sürümünü kullanıyorum.\u003c/li\u003e\u003cbr\u003e\n      \u003cli\u003e Projemiz başarıyla oluşturuldu!\u003c/li\u003e\u003cbr\u003e\n \u003c/ol\u003e\n \n \u003ch3 id=\"maven-entegre\"\u003e\u003ci\u003eMaven Projesine Kütüphane Entegrasyonu\u003c/i\u003e\u003c/h3\u003e\n  \u003col type=\"1\"\u003e\n      \u003cli\u003e https://mvnrepository.com adresine gidiyoruz. Bu sitede eklemek projenizde kullanmak istediğiniz kütüphanenizin \"maven\" içinde mevcut mu kontrol edebilirsiniz! Maven için olan dosyaları yine \"dependency\" kodlarıyla projenize rahatlıkla ekleyebilirsiniz! Arama kısmına projemize eklemek istediğimiz \"hibernate\" kütüphanesini yazıyoruz. \u003cbr\u003e \u003cbr\u003e \u003cimg src=\"https://i.hizliresim.com/fpjvv4u.PNG\"\u003e \u003c/li\u003e\n      \u003cli\u003e Gelen ekranda en son final sürümünü seçebilirsiniz!\u003cbr\u003e \u003cbr\u003e \u003cimg src=\"https://i.hizliresim.com/ekhn2ey.PNG\"\u003e \u003c/li\u003e\n      \u003cli\u003e İstediğiniz sürüme tıkladığınızda karşınıza \"maven\" dependency kod blokları gelecektir. Bu kod bloğunu kopyalıyoruz. \u003cbr\u003e \u003cbr\u003e \u003cimg src=\"https://i.hizliresim.com/8lw21q0.PNG\"\u003e \u003c/li\u003e\n      \u003cli\u003e \u003cb\u003epom.xml\u003c/b\u003e içine kod bloğumuzu aşağıdaki gibi eklememiz yeterlidir!\u003cbr\u003e \u003cbr\u003e \u003cimg src=\"https://i.hizliresim.com/npzazc1.PNG\"\u003e \u003c/li\u003e\n      \u003cli\u003eDilediğiniz tüm kütüphaneler için bu adımları uygulayabilirsiniz!\u003c/li\u003e\n \u003c/ol\u003e\n \n \u003chr\u003e\n \n \u003ch1 id=\"spring-boot\"\u003e Spring Boot \u003c/h1\u003e\n  \n \u003ch2 id=\"spring-giris\"\u003e Spring Boot : Giriş \u003c/h2\u003e\n \u003ch3 id=\"maven-kurulum\"\u003e\u003ci\u003eKurulum\u003c/i\u003e\u003c/h3\u003e\n  \u003col type=\"1\"\u003e\n      \u003cli\u003e https://start.spring.io adresine gidiyoruz. \"Dependencies\" kısmına Spring Web ekliyoruz. Buraya ekleyeceğimiz dosyaları sonradan pom.xml dosyamıza https://mvnrepository.com sitesinden istediğimiz kütüphanenin dependency kodlarını bularak ekleyebiliriz. Sonrasında \"Group\" ile şirket adımızı, \"Artifact\" ile projemizin adını veriyoruz. Java kısmı karşısında JDK sürümümüzü seçiyoruz.  GENERATE butonuna tıklayın ve inen dosyası RAR içinden çıkarın! \u003c/li\u003e\u003cbr\u003e\n      \u003cli\u003e Eclipse içinde File \u003e Import kısmına tıklıyoruz! \u003c/li\u003e\u003cbr\u003e\n      \u003cli\u003e Import ekranımızda karşımıza gelen arama kutucuğuna \"maven\" yazıp \"Existing Maven Projects\" seçiyoruz. Bu şekilde var olan bir maven projesini projemize eklemeyi amaçlıyoruz! Next diyoruz!\u003c/li\u003e\u003cbr\u003e\n      \u003cli\u003e Bu ekranda \"Browse\" seçeneğine tıklıyoruz! İndirdiğimiz ve RAR'dan çıkardığımız dosyamıza girip karşımıza \"src\" klasörünü görünceye kadar ilerliyoruz. OK butonnuna basın ve Projects altında \"pom.xml\" kısmı görüyorsanız doğru bir şekilde ilerlediğiniz anlamına geliyor! \u003c/li\u003e\u003cbr\u003e\n      \u003cli\u003e Finish ile projemizi eklemiş oluyoruz!\u003c/li\u003e\u003cbr\u003e\n \u003c/ol\u003e\n \n \u003ch2 id=\"spring-rest\"\u003e Spring Boot : Spring REST \u003c/h2\u003e\n  \u003cp\u003e Java ile Front-end(Angular, React, Vue, Mobil Uygulama) teknolojileriyle kullanıcıya buluşturulurken arka tarafta işin back-end teknolojisine Rest API denir. Burada Controller sınıfı Spring boot işlemlerinde @RestController sınıfımıza \"Controller\" özelliği kazandırır.\u003c/p\u003e\n  \n \u003ch2 id=\"spring-katman\"\u003e Spring Boot : Katmanlı Mimari\u003c/h2\u003e\n\n\u003cp\u003e \u003cb\u003eData Access:\u003c/b\u003e Veri erişim katmanımızdır. Bu katmanda sadece ver erişim işlemleri yapılır. Temel JDBC, Spring Data, Hibernate kodları buraya yazılır.\nİsimlendirmelerinde DAL veya DAO kısaltmaları kullanılır.\n\n\u003cb\u003eBusiness:\u003c/b\u003e İş kurallarının yazıldığı katmandır. Mesela ehliyet alacak biri direksiyon, sınavdan vs. gerekli notu almış mı diye kontrol ettiğimiz if'lerin olduğu katmandır.\nİsimlendirmelerde Service ile kullanılır.\n\n\u003cb\u003eUI:\u003c/b\u003e Kullanıcı arayüzümüzdür. Burası Swing, Angular, Mobile ile kullanılır.\n\nTüm bu katmanlar birbiriyle Interface aracılığıyla haberleşir. Haberleşme Data Access ile Business ve Business ile UI arasında olur. Data Access ile UI arasında bir haberleşme olamaz çünkü kullanıcı yaptığı bir işlem direkt olarak veritabanına eklenmesi mümkün değildir. Kullanıcı UI ile yaptığı değişiklikleri Business katmanı sorgulamasını, uygunluğunu kontrol eder.\u003c/p\u003e\n\u003ch3\u003e\u003ci\u003eKurulum\u003c/i\u003e\u003c/h3\u003e\n\u003col type=\"1\"\u003e\n      \u003cli\u003e Bu kısımda tarayıcı üzerinden projemizdeki ekleme, güncelleme, silme işlemleri için https://www.postman.com/downloads/ ekranından \"Postman\" uygulamasını indirmeniz gerekmektedir!\u003c/li\u003e\u003cbr\u003e\n      \u003cli\u003e \"Port is already in use\" hatası aldığınızda application.property dosyası içinden yaptığımız gibi port numarasını değiştirebilirsiniz! \u003c/li\u003e\u003cbr\u003e\n      \u003cli\u003e Postman uygulamamıza giriş yapıyoruz. File \u003e New \u003e HTTP Request içine giriyoruz. Yeni koleksiyon oluşturuyoruz ve \"Request name\" kısmına bir isim veriyoruz! \u003c/li\u003e\u003cbr\u003e\n      \u003cli\u003e \u003cb\u003ehttp://localhost:8082/api/cities\u003c/b\u003e adresini GET ile yazıyoruz. Bu sayede tüm şehirlerimizi veritabanımızdan çekebiliyoruz. İsterseniz dosya formatını JSON olarak çekebilirsiniz! \"Status: 200 OK\" uyarısı işlemin başarıyla gerçekleştiğini gösterir! \u003c/li\u003e\u003cbr\u003e\n      \u003cli\u003e \u003cb\u003ehttp://localhost:8082/api/cities/4094\u003c/b\u003e adresine yine GET içinde yazıp SEND butonuna tıklıyoruz! Görüldüğü gibi projemizdeki tek bir şehri alma fonksiyonumuz çalıştırıyor!\u003c/li\u003e\u003cbr\u003e\n      \u003cli\u003e \u003cb\u003ehttp://localhost:8082/api/add\u003c/b\u003e linkini POST içinde yazdığımızda Body \u003e row kısmına girip istediğimiz özelliklere sahip şehrimizi giriyoruz! ID kısmını vermiyoruz bu şekilde GeneratedValue özelliği sayesinde bize ID kısmı otomaotik şekilde üretiliyor!\u003c/li\u003e\u003cbr\u003e\n      \u003cli\u003e \u003cb\u003ehttp://localhost:8082/api/update\u003c/b\u003e linkini yine POST içinde yazıyoruz ve bu sefer güncellemek istediğimiz şehrin ID'sini veriyoruz bu şekilde verilen ID'nin olduğu şehrin tüm özellikleri yeniden değiştiriliyor! \u003c/li\u003e\u003cbr\u003e\n      \u003cli\u003e Burada \"Port is already in use\" hatası aldığımızında portumuzu 8083'e taşıyoruz! http://localhost:8083/api/delete linkini POST içinde Body \u003e raw içine JSON formatında yazıyoruz burada girdiğimiz ID'ye sahip şehir siliniyor!\u003c/li\u003e\u003cbr\u003e\n \u003c/ol\u003e\n\n\u003cp\u003e Umarım Faydalı Olmuştur, Çok teşekkür ederim!\u003c/p\u003e\n\n\u003ch2 id=\"sosyal\"\u003e Sosyal Medya Hesaplarım \u003c/h2\u003e\n\u003ch4\u003e \u003cb\u003e \u003ca href=\"https://www.linkedin.com/in/ibrahimcanerdogan/\"\u003e LINKEDIN \u003c/a\u003e \u003c/b\u003e \u003c/h4\u003e\n\u003ch4\u003e \u003cb\u003e \u003ca href=\"https://www.youtube.com/channel/UCevIikvuddEfPCBECo8UGLg\"\u003e YOUTUBE \u003c/a\u003e \u003c/b\u003e \u003c/h4\u003e\n\u003ch4\u003e \u003cb\u003e \u003ca href=\"https://github.com/icanerdogan\"\u003e GITHUB \u003c/a\u003e \u003c/b\u003e \u003c/h4\u003e\n\u003ch4\u003e \u003cb\u003e \u003ca href=\"https://icanerdogan.medium.com\"\u003e MEDIUM \u003c/a\u003e \u003c/b\u003e \u003c/h4\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ficanerdogan%2Fspringtutorial-beginners","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ficanerdogan%2Fspringtutorial-beginners","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ficanerdogan%2Fspringtutorial-beginners/lists"}