একটি স্প্রিং ওয়েব এপ্লিকেশন নিয়ে কাজ করছি। সেখানে একটি ফর্মে তথ্য দিতে হবে। প্রথম যখন ফর্মটা লোড হবে তখন একটি আইডি স্বয়ংক্রিয়ভাবে তৈরি হবে কিছু বিষয়ের উপর ভিত্তি করে। যেমনঃ আইডিটিতে থাকবে মাসের ২ ডিজিট, বছরের ২ ডিজিট, কোম্পানির কততম বছর চলছে, কোম্পানির আইডি এবং শেষে ৩ ডিজিট ইনক্রিমেন্ট হতে থাকবে। সব মিলিয়ে আমার আইডি হবে এরকমঃ ১২১৭০২২১২০০১। এটা ইমপ্লিমেন্ট করতে গিয়ে সমস্যায় পড়েছি। কেউ সহজ নির্দেশনা দিলে উপকৃত হব। অগ্রিম ধন্যবাদ।

asked 27 Nov, 08:20

rmoshiur705's gravatar image

rmoshiur705
153

edited 27 Nov, 08:42

Mosharraf%20Hosain's gravatar image

Mosharraf Hosain ♦
9618


এর সঙ্গে স্প্রিং ফ্রেমওয়ার্কের কী সম্পর্ক থাকতে পারে? সমস্যাটি খুব সাধারণ উপায়ে সমাধান করা যেতে পারে নিচের মতো - একটি মেথড লিখুন, যাতে কতগুলো প্যারামিটার থাকবে -

  • কোম্পানি আইডি
  • কোম্পানি ইয়ার
  • শেষ যে আইডি দেওয়া হয়েছিল তা। এর সঙ্গে ১ যোগ করে নতুন আইডি তৈরি করতে হবে।

নিচে শুধুমাত্র ধারণা দেওয়ার জন্য একটি মেথড দেওয়া হলো-

import java.time.LocalDate;

public class IdGenerator {
    public synchronized static String getId(final String companyId, final String companyYear, final int lastId) {
        final LocalDate now = LocalDate.now();
        final String inc = String.format("%03d", (lastId + 1));
        final String year = String.format("%2d", Math.abs(now.getYear() % 100));
        final String month = String.format("%02d", now.getMonth().getValue());

        return month + year + companyId + companyYear + inc;
    }

    public static void main(String[] args) {
        final String id = getId("02", "42", 0);
        System.out.println(id);
    }
}
permanent link
This answer is marked "community wiki".

answered 27 Nov, 09:00

bazlur_rahman's gravatar image

bazlur_rahman
1.2k17

স্প্রিং এর সাথে সম্পর্ক নেই সত্যি। আমি শুধু বললাম স্প্রিং এপ্লিকেশন নিয়ে কাজ করছি। সেইখানে এই সমস্যা। অনেক ধন্যবাদ, আমি ভালো একটি ধারণা পেলাম।

(27 Nov, 10:50) rmoshiur705
Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:

×61

question asked: 27 Nov, 08:20

question was seen: 185 times

last updated: 27 Nov, 11:09