আমার কাছে একটি পদ্ধতি রয়েছে যা নীচে বর্ণিত হয়:
/**
* Provide a list of all accounts.
*/
// TODO 02: Complete this method. Add annotations to respond
// to GET /accounts and return a List<Account> to be converted.
// Save your work and restart the server. You should get JSON results when accessing
// http://localhost:8080/rest-ws/app/accounts
@RequestMapping(value="/orders", method=RequestMethod.GET)
public @ResponseBody List<Account> accountSummary() {
return accountManager.getAllAccounts();
}
সুতরাং আমি জানি যে এই টীকা দ্বারা:
@RequestMapping(value="/orders", method=RequestMethod.GET)
এই পদ্ধতিটি ইউআরএল / আদেশ দ্বারা প্রতিনিধিত্ব করা সংস্থানটিতে জিইটি এইচটিটিপি অনুরোধগুলি পরিচালনা করে ।
এই পদ্ধতিটি একটি ডিএও অবজেক্টকে কল করে যা একটি তালিকা দেয় ।
যেখানে অ্যাকাউন্ট সিস্টেমে কোনও ব্যবহারকারীর প্রতিনিধিত্ব করে এবং এমন কিছু ক্ষেত্র রয়েছে যা এই ব্যবহারকারীর প্রতিনিধিত্ব করে, এরকম কিছু:
public class Account {
@Id
@Column(name = "ID")
@GeneratedValue(strategy=GenerationType.IDENTITY)
private Long entityId;
@Column(name = "NUMBER")
private String number;
@Column(name = "NAME")
private String name;
@OneToMany(cascade=CascadeType.ALL)
@JoinColumn(name = "ACCOUNT_ID")
private Set<Beneficiary> beneficiaries = new HashSet<Beneficiary>();
...............................
...............................
...............................
}
আমার প্রশ্ন: টিকাটি ঠিক কীভাবে @ResponseBody
কাজ করে?
এটি প্রত্যাবর্তিত List<Account>
বস্তুর আগে অবস্থিত তাই আমি মনে করি যে এটি এই তালিকাটিকে বোঝায়। কোর্সের ডকুমেন্টেশনে বলা হয়েছে যে এই টিকাটি ফাংশনটিতে কাজ করে:
ফলাফলটি এইচটিটিপি প্রতিক্রিয়াতে কোনও এইচটিটিপি মেসেজ কনভার্টারের (কোনও এমভিসি ভিউয়ের পরিবর্তে) লিখিত হবে তা নিশ্চিত করুন।
এবং এছাড়াও সরকারী স্প্রিং ডকুমেন্টেশন পড়া: http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/bind/annotation/ResponseBody.html
দেখে মনে হচ্ছে এটি List<Account>
বস্তুটি নিয়ে এবং এটিতে রাখে Http Response
। এটি কি সঠিক বা আমি ভুল বোঝাবুঝি করছি?
পূর্ববর্তী accountSummary()
পদ্ধতির মন্তব্যে লিখিত রয়েছে:
Http: // লোকালহস্ট: 8080 / রেস্ট-ডাব্লু / অ্যাপ্লিকেশন / অ্যাকাউন্টগুলিতে অ্যাক্সেস করার সময় আপনার জেএসএন ফলাফল পাওয়া উচিত
তাহলে এর অর্থ কী? এর অর্থ কি এই যে পদ্ধতিটি List<Account>
দ্বারা প্রত্যাবর্তিত বস্তুটি accountSummary()
স্বয়ংক্রিয়ভাবে JSON
ফর্ম্যাটে রূপান্তরিত হয় এবং তারপরে Http Response
? অথবা কি?
যদি এই দাবি সত্য হয় তবে এটি কোথায় নির্দিষ্ট করা হবে যে অবজেক্টটি স্বয়ংক্রিয়ভাবে JSON
ফর্ম্যাটে রূপান্তরিত হবে? @ResponseBody
টীকাগুলি ব্যবহার করার সময় কি স্ট্যান্ডার্ড ফর্ম্যাটটি গৃহীত হয় বা এটি অন্য কোথাও নির্দিষ্ট করা হয়?