این پروژه یک سرویس ساده جاوا با استفاده از Spring Boot است که به صورت REST API سه کار انجام میدهد:
- اضافه کردن کاربر به دیتابیس با نام کاربری و رمز عبور.
- گرفتن نقاشی اختصاصی کاربر با اعتبارسنجی نام کاربری و رمز عبور.
- بهروزرسانی نقاشی برای کاربر در صورت معتبر بودن نام کاربری و رمز عبور.
دیتابیس: MySQL (پیکربندی در application.properties).
userdb/
├── pom.xml
├── mvnw, mvnw.cmd
├── src/
│ ├── main/java/com/example/userdb/
│ │ ├── controller/
│ │ │ └── UserController.java
│ │ ├── service/
│ │ │ └── UserService.java
│ │ ├── model/
│ │ │ └── User.java
│ │ ├── repository/
│ │ │ └── UserRepository.java
│ │ └── dto/
│ │ ├── AuthRequest.java
│ │ ├── UpdateJsonUrlRequest.java
│ │ ├── JsonUrlResponse.java
│ │ └── MessageResponse.java
│ └── resources/
│ └── application.properties
تمامی مسیرها با پیشوند /users هستند.
- آدرس:
POST /users/add - ورودی (JSON):
{"username": "نامکاربری", "password": "رمزعبور"} - عملکرد: کاربر جدید ایجاد میکند.
- پاسخ موفق: شیء کاربر (بدون نمایش رمز عبور).
- آدرس:
POST /users/get-json-url - ورودی (JSON):
{"username":"reza","password":"secret"} - عملکرد: اگر نام کاربری و رمز عبور صحیح باشند، مقدار
jsonUrlمرتبط با کاربر برگردانده میشود.
- آدرس:
POST /users/update-json-url - ورودی (JSON):
{"username":"reza","password":"secret","jsonUrl":"sample_json"} - عملکرد: اگر نام کاربری و رمز عبور صحیح باشند، فیلد
jsonUrlدر رکورد کاربر ذخیره میشود.
./mvnw spring-boot:runدر طول توسعه این پروژه از هوش مصنوعی برای برخی مراحل کمک گرفتم:
-
مواردی که AI انجام داد و مفید بود:
- راهنمایی برای پیکربندی و اتصال به دیتابیس MySQL.
- ارائه دستورات ایجاد دیتابیس، کاربران و حل مشکلات اتصال.
- توضیح درباره تنظیمات
application.propertiesبرای Hibernate و MySQL.
-
مواردی که خودم انجام دادم و ai در انجام آنها ناتوان بود:
- پیادهسازی کامل کدهای جاوا و ساختاردهی نهایی بستهها.
- نوشتن کنترلرها، سرویسها و ریپازیتوریها.
- اتصال پروژه به فرانتاند و رفع مشکلات اجرایی.
- پیکربندی کلی پروژه و تعیین نیازمندیهای جاوا.
- ساختاردهی بستهها و قرار دادن کلاسها و کدنویسی جاوا.