Groovy একটি ডাইনামিক এবং ফ্লেক্সিবল প্রোগ্রামিং ভাষা, যা সহজে RESTful API তৈরি এবং JSON ডেটা হ্যান্ডলিংয়ের জন্য খুবই উপযোগী। Groovy তে RESTful API Development এবং JSON Handling করার জন্য সাধারণত Groovy's native libraries বা Gradle এর মত টুলস ব্যবহার করা হয়।
এখানে আমরা RESTful API Development এবং JSON Handling বিষয়ক Groovy এর কিছু গুরুত্বপূর্ণ দিক এবং টেকনিক আলোচনা করব।
RESTful API হল একটি ওয়েব সেবা যা HTTP প্রোটোকল ব্যবহার করে এবং ক্লায়েন্ট-সার্ভার আর্কিটেকচার অনুসরণ করে। Groovy তে RESTful API তৈরি করার জন্য আমরা Grails ফ্রেমওয়ার্ক বা Groovy's built-in HTTP capabilities ব্যবহার করতে পারি।
Grails Groovy ভিত্তিক একটি ফ্রেমওয়ার্ক যা RESTful API এবং ওয়েব অ্যাপ্লিকেশন তৈরি করতে ব্যবহৃত হয়। Grails ব্যবহার করে সহজেই একটি RESTful API তৈরি করা সম্ভব।
RESTful Controller
তৈরি করতে Grails CLI ব্যবহার করা হয়।grails create-controller api.Person
package api
class PersonController {
static responseFormats = ['json', 'xml']
def index() {
def persons = [
[name: 'John', age: 30],
[name: 'Jane', age: 25]
]
respond persons
}
def show(Long id) {
def person = [name: 'John', age: 30]
respond person
}
def save() {
def person = request.JSON
respond person, [status: CREATED]
}
def update(Long id) {
def person = request.JSON
respond person
}
def delete(Long id) {
render status: NO_CONTENT
}
}
এখানে:
/api/person
এ অ্যাক্সেস করা যাবে।JSON (JavaScript Object Notation) হল একটি জনপ্রিয় ডেটা এক্সচেঞ্জ ফরম্যাট যা হালকা এবং সহজ। Groovy তে JSON হ্যান্ডলিং খুবই সহজ এবং Groovy এর JsonSlurper এবং JsonBuilder ক্লাসগুলি JSON ডেটা পার্স এবং তৈরি করতে ব্যবহৃত হয়।
JsonSlurper
JsonSlurper
Groovy তে একটি বিল্ট-ইন ক্লাস, যা JSON স্ট্রিংকে Groovy অবজেক্টে রূপান্তর করতে ব্যবহৃত হয়।
import groovy.json.JsonSlurper
def jsonString = '{"name": "John", "age": 30, "city": "New York"}'
def jsonSlurper = new JsonSlurper()
def jsonObject = jsonSlurper.parseText(jsonString)
println jsonObject.name // Output: John
println jsonObject.age // Output: 30
println jsonObject.city // Output: New York
এখানে:
JsonSlurper
ব্যবহার করে JSON স্ট্রিংটি পার্স করা হয়েছে এবং একটি Groovy Map অবজেক্টে রূপান্তরিত হয়েছে।JsonBuilder
JsonBuilder
Groovy তে JSON ডেটা নির্মাণের জন্য ব্যবহৃত হয়। এটি খুব সহজভাবে JSON অবজেক্ট তৈরি করতে সহায়তা করে।
import groovy.json.JsonBuilder
def builder = new JsonBuilder()
builder.person {
name "John"
age 30
city "New York"
}
println builder.toString()
আউটপুট:
{
"person": {
"name": "John",
"age": 30,
"city": "New York"
}
}
এখানে:
JsonBuilder
ব্যবহার করে JSON অবজেক্ট তৈরি করা হয়েছে এবং builder.toString()
কল করে JSON আউটপুট আনা হয়েছে।Groovy তে RESTful API তৈরি করার সময় JSON ডেটা ইনপুট এবং আউটপুট হিসাবে ব্যবহার করা হয়। Groovy এর HttpBuilder
বা RestClient
ব্যবহার করে আপনি REST API তৈরি করতে এবং JSON ডেটা ব্যবহার করতে পারেন।
@Grab(group='org.codehaus.groovy.modules.http-builder', module='http-builder', version='0.7.1')
import groovyx.net.http.RESTClient
def client = new RESTClient('https://jsonplaceholder.typicode.com/')
def response = client.get(path: 'posts/1')
println "Response Status: ${response.status}"
println "Response Body: ${response.data}" // JSON রেসপন্স
এখানে:
Groovy তে আপনি JSON এবং XML এর মধ্যে রূপান্তর করতে পারেন। Groovy এর XmlSlurper
এবং MarkupBuilder
এর মাধ্যমে আপনি সহজেই XML পার্সিং এবং JSON তৈরি করতে পারবেন।
import groovy.json.JsonSlurper
import groovy.xml.MarkupBuilder
def jsonString = '{"person": {"name": "John", "age": 30, "city": "New York"}}'
def jsonSlurper = new JsonSlurper()
def jsonObject = jsonSlurper.parseText(jsonString)
def writer = new StringWriter()
def builder = new MarkupBuilder(writer)
builder.person {
name jsonObject.person.name
age jsonObject.person.age
city jsonObject.person.city
}
println writer.toString()
আউটপুট (XML):
<person>
<name>John</name>
<age>30</age>
<city>New York</city>
</person>
এখানে:
JsonSlurper
এবং JsonBuilder
ব্যবহার করে JSON পার্সিং এবং তৈরি করা হয়।Groovy তে RESTful API তৈরি এবং JSON ডেটা হ্যান্ডলিং প্রক্রিয়া খুবই সোজা এবং এটি দ্রুত ডেভেলপমেন্ট সাপোর্ট করে, বিশেষত ওয়েব এবং মোবাইল অ্যাপ্লিকেশনে।
common.read_more