Groovy তে Builders এর সাহায্যে XML, HTML, JSON ইত্যাদি ডকুমেন্ট তৈরি করা যায়। Groovy Builder একটি সহজ এবং শক্তিশালী উপায় যা প্রোগ্রামারদের XML, HTML, বা অন্যান্য মার্কআপ ডকুমেন্ট তৈরি করতে সাহায্য করে, সেই সাথে কোডের ভেতর একটি ডাইনামিক স্ট্রাকচার তৈরি করা যায়। Groovy তে দুটি জনপ্রিয় Builder হল MarkupBuilder এবং NodeBuilder।
MarkupBuilder Groovy তে XML বা HTML মার্কআপ ডকুমেন্ট তৈরি করতে ব্যবহৃত হয়। এটি একটি স্ট্রিম-ভিত্তিক অ্যাপ্রোচ ব্যবহার করে যেখানে আপনি XML/HTML ট্যাগ এবং কনটেন্ট তৈরি করতে পারেন। MarkupBuilder স্বয়ংক্রিয়ভাবে XML বা HTML ফাইল তৈরি করে এবং সঠিকভাবে ট্যাগ এবং ডেটা সমন্বয় করে।
import groovy.xml.MarkupBuilder
def writer = new StringWriter()
def builder = new MarkupBuilder(writer)
builder.html {
head {
title("Groovy MarkupBuilder Example")
}
body {
h1("Welcome to Groovy")
p("This is a simple example of using MarkupBuilder to create XML or HTML.")
ul {
li("Item 1")
li("Item 2")
li("Item 3")
}
}
}
println writer.toString()
<html>
<head>
<title>Groovy MarkupBuilder Example</title>
</head>
<body>
<h1>Welcome to Groovy</h1>
<p>This is a simple example of using MarkupBuilder to create XML or HTML.</p>
<ul>
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
</ul>
</body>
</html>
বৈশিষ্ট্য:
NodeBuilder XML ডকুমেন্ট তৈরি করতে ব্যবহৃত হয়, তবে এটি একটি ডাটা-ভিত্তিক অ্যাপ্রোচ গ্রহণ করে যেখানে আপনি নোডগুলির কাঠামো এবং সম্পর্ক নির্ধারণ করতে পারেন। এটি একটি ডাটাবেসের মতো XML স্ট্রাকচার তৈরি করতে পারে, যেখানে আপনি প্রতিটি নোডের ভ্যালু এবং তার সন্তান নোড নির্ধারণ করতে পারেন।
import groovy.xml.NodeBuilder
def builder = new NodeBuilder()
def person = builder.person {
name("John Doe")
age(30)
address {
street("1234 Elm St")
city("Springfield")
state("IL")
}
}
println groovy.xml.XmlUtil.serialize(person)
<?xml version="1.0" encoding="UTF-8"?>
<person>
<name>John Doe</name>
<age>30</age>
<address>
<street>1234 Elm St</street>
<city>Springfield</city>
<state>IL</state>
</address>
</person>
বৈশিষ্ট্য:
বৈশিষ্ট্য | MarkupBuilder | NodeBuilder |
---|---|---|
ব্যবহার | HTML এবং XML মার্কআপ ডকুমেন্ট তৈরি করার জন্য ব্যবহৃত | XML ডকুমেন্ট তৈরি এবং নোড স্ট্রাকচার গঠন করতে ব্যবহৃত |
স্ট্রাকচার | ট্যাগ এবং তাদের কন্টেন্ট তৈরি করে | নোড এবং তাদের সন্তান নোড তৈরি করে |
ফোকাস | স্ট্রিং আউটপুটকে HTML/XML ট্যাগ হিসেবে তৈরি করা | XML ডকুমেন্টের নোড কাঠামো তৈরি করা |
এলিমেন্ট ম্যানেজমেন্ট | স্বয়ংক্রিয়ভাবে ট্যাগ ক্লোজিং এবং নেস্টিং | নোডগুলির মধ্যে সম্পর্ক এবং কন্টেন্ট ম্যানেজমেন্ট |
common.read_more