Skip to content

UyCoder/case3-UyCoder

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 

Repository files navigation

Ödev şu şekilde tamalandı:

isimlendirmeler:

Turkce Enlish Name
Ürün Product
Kullanıcı User
Yorum Comment

Bu Spring project'i için Maven'e eklenen dependency'ler:

  • Spring Web
  • Spring Data JPA
  • PostgreSQL
  • LOMBOK
  • Swagger

Önce taleplere göre databşe mimarını aşağıdaki şekilde yapmaya çalıştım.

Proje'nin dosya yapisi:

case3
│  .gitignore
│  case3.iml
│  HELP.md
│  mvnw
│  pom.xml
└─src
   ├─main
   │  ├─java
   │  │  └─dev
   │  │      └─ahmed
   │  │          └─case3
   │  │              │  Case3Application.java
   │  │              │
   │  │              ├─controller
   │  │              │      CommentController.java
   │  │              │      ProductController.java
   │  │              │      UserController.java
   │  │              │
   │  │              ├─dao
   │  │              │      CommentDao.java
   │  │              │      ProductDao.java
   │  │              │      UserDao.java
   │  │              │
   │  │              ├─dto
   │  │              ├─entity
   │  │              │      Comment.java
   │  │              │      Product.java
   │  │              │      User.java
   │  │              │
   │  │              └─service
   │  │                  │  Service.java
   │  │                  │
   │  │                  └─entityservice
   │  │                          CommentEntityService.java
   │  │                          ProductEntityService.java
   │  │                          UserEntityService.java
   │  │
   │  └─resources
   │      │  application.properties
   │      │
   │      ├─static
   │      └─templates
   └─test
       └─java
           └─dev
               └─ahmed
                   └─case3
                           Case3ApplicationTests.java

Case3

Ödev Talepleri

Bir online alışveriş sitesinin kullanıcı yorumlarını yöneten bir api yazınız.

  • Bir kullanıcının sadece bir e-maili ve bir telefon numarası olabilir.
  • Aynı kullanıcı adı, telefon ya da e-mail ile kayıt yapılamaz.
  • Kullanıcı tipi kişi ya da kurum olabilir.
  1. Ürün controller ında;
  • Ürün kaydeden bir servis yazınız.

  • Ürünleri listeleyebilen bir servis yazınız.

  • Ürün idsinden ürünü bulan bir servis yazınız.

  • Ürün silen bir metot yazınız.

  • Ürün fiyatı güncelleyen bir metot yazınız. (Sadece fiyat)

  1. Kullanıcı controller ında;
  • Tüm kullanıcıları getiren bir servis yazınız.
  • Kullanıcı idsinden kullanıcıyı getiren bir servis yazınız.
  • Kullanıcı adından kullanıcıyı getiren bir servis yazınız.
  • Kullanıcı kaydedilebilecek bir servis yazınız.
  • Kullanıcı silebilecek bir servis yazınız. (kullanıcı adı, ve telefon bilgileri alınmalı). Eğer kullanıcı adı ve telefon uyuşmuyorsa “XXX kullanıcı adı ile YYY telefonu bilgileri uyuşmamaktadır.” şeklinde bir uyarı vermeil.
  • Kullanıcı bilgilerini güncelleyebilecek bir servis yazınız.
  1. Yorum Controller ında;
  • Bir kullanıcının yaptığı yorumlari getiren bir servis yazınız. Eğer ilgili kullanıcının henüz bir yorumu yoksa “XXX kullanıcı henüz bir yorum yazmamıştır” şeklinde bir hata vermeli.
  • Bir ürüne yapılan tüm yorumları getiren bir servis yazınız. Eğer o ürüne henüz bir yorum yazılmamışsa “XXX ürüne henüz bir yorum yazılmamıştır” şeklinde bir hata vermeli.
  • Yeni bir yorum yazılabilecek bir servis yazınız.
  • Yorum silebilecek bir servis yazınız.

Notlar:

Yukarıdaki hiçbir servis Persistance nesne almamalı ya da dönmemelidir. Pathlere dikkat ediniz. Dao ve entityService deki method isimlerine dikkat ediniz. Dto isimlendirmeleri, fieldları vs size bırakıyorum. Spring Data JPA da sorgu yazmak ile alakalı ya da otomatik sorguların nasıl yapıldığı ile alakalı da ufak bir araştırma yapmanız gerekecek.

About

case3-UyCoder created by GitHub Classroom

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%