یک برنامهٔ جاوا بنویسید که با استفاده از JDBC یک تراکنش برای انتقال وجه بین دو حساب در یک پایگاه‌داده انجام دهد و در صورت بروز هر گونه خطا تراکنش را rollback کند.

7.0 بازدید آخرین ویرایش در 202 روز قبل ساعت 02:18

0.0

با استفاده از JDBC (مثلاً در ترکیب با MySQL یا H2) اتصال به پایگاه‌داده را برقرار کنید، auto-commit را غیرفعال کنید (setAutoCommit(false))، سپس دو دستور PreparedStatement برای کسر از حساب فرستنده و اضافه به حساب گیرنده اجرا کنید؛ اگر هر یک از دستورات با مشکل مواجه شد یا تعداد ردیف‌های تأثیرگذار غیرمنتظره بود، از rollback() استفاده کنید و در غیر این صورت commit() را فراخوانی کنید. از try-with-resources برای بستن منابع، گرفتن SQLException برای rollback و در صورت نیاز استفاده از Savepoint برای بازگردانی جزئی کمک بگیرید؛ بررسی کنید موجودی کافی است و تعداد ردیف‌های به‌روزرسانی‌شده را کنترل کنید.

توسط پژوهشگر در 202 روز قبل ساعت 02:18
دسته بندی ها: Java Java for beginner
reyhaneh در 202 روز قبل ساعت 10:12

برای انتقال وجه به‌طور اتمی از JDBC استفاده کنید: auto-commit را خاموش کرده و دو UPDATE با PreparedStatement در یک تراکنش اجرا کنید، و در هر استثنا تراکنش را rollback کنید. می‌توانید از Savepoint برای بازگردانی جزئی یا مدیریت خطاهای پیچیده‌تر بهره ببرید. همچنین بررسی کنید که موجودی فرستنده کافی است و تعداد ردیف‌های به‌روزرسانی‌شده برابر با ۱ باشد؛ در غیر این صورت تراکنش را rollback کنید. از بلوک try-with-resources استفاده کنید تا منابع به‌درستی بسته شوند و خطاهای SQLException مدیریت شوند.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری