লিনকিউ এর জন্য জাভা সমতুল্য কী?
লিনকিউ এর জন্য জাভা সমতুল্য কী?
উত্তর:
জাভার জন্য লিনকিউ-এর মতো কিছুই নেই।
...
সম্পাদন করা
এখন জাভা 8 এর সাথে আমরা স্ট্রিম এপিআই'র সাথে পরিচয় করিয়েছি , সংগ্রহে কাজ করার সময় এটি একই ধরণের জিনিস, তবে এটি লিনকের মতো নয়।
এটি যদি কোনও ORM হয় তবে আপনি সত্তা ফ্রেমওয়ার্কের মতো সন্ধান করছেন তবে আপনি হাইবারনেট চেষ্টা করতে পারেন
:-)
বিকল্প বিকল্প আছে, কুলিকেশন ।
কুলিকেশনটি নতুন ল্যাম্বদা হওয়ার ভান করে নি, তবে আমরা চারপাশে পুরানো উত্তরাধিকারী জাভা প্রকল্পগুলি যেখানে এই লিব সাহায্য করবে তাতে ঘিরে রয়েছে। এটি সংগ্রহের উপরে পুনরাবৃত্তির সর্বাধিক ব্যবহৃত ক্রিয়াকলাপগুলি আবৃত করে ব্যবহার করা এবং প্রসারিত করা সত্যই সহজ:
from(people).where("name", eq("Arthur")).first();
from(people).where("age", lessThan(20)).all();
from(people).where("name", not(contains("Francine"))).all();
জাভাটিএম প্রোগ্রামিং ভাষার জন্য লাম্বদা এক্সপ্রেশন - লাম্বডাস এখন JSR-335 আকারে জাভা 8 এর মধ্যে উপলব্ধ available
আপডেট : জেডিকে 8 এখন প্রকাশিত হয়েছে যার মধ্যে ল্যাম্বদা প্রকল্প রয়েছে। বর্তমানে এমএএপি-তে অ্যাকশায় জাভা 8 এর একটি অনুলিপি ধরার উপযুক্ত।
একটি পড়া আছে ব্রায়ান Goetz কিভাবে lambdas JDK8 মধ্যে প্রয়োগ করা হয় পাশাপাশি স্ট্রিম, অভ্যন্তরীণ পুনরাবৃত্তির, একটি বোঝার হত্তন একটি শালীন বোঝার জন্য lambdas সংক্রান্ত প্রবন্ধ শর্ট-সার্কিট এবং কন্সট্রাকটর রেফারেন্স .. এছাড়াও JSR এর আরও উদাহরণ পেতে উপরে খুঁজে বার করো ।
আমি lambdas ব্যবহার JDK8 নামক সুবিধার কিছু একটা ব্লগ লিখেছি তীর পাওয়ার , এছাড়াও NetBeans 8 JDK8 যা আমিও সম্পর্কে ব্লগ করেছি নির্মান রূপান্তরের জন্য মহান সমর্থন আছে NetBeans সঙ্গে JDK থেকে 8 মাইগ্রেট ।
ল্যাম্বজ লাইব্রেরিটি ব্যবহার করে আপনি আরও পঠনযোগ্য উপায়ে সংগ্রহের আইটেমগুলি (এবং আরও অনেক কিছু) চয়ন করতে পারেন
https://code.google.com/archive/p/lambdaj/
কোয়ের লাইব্রেরিতে এর কিছু সুবিধা রয়েছে কারণ এটি কোনও যাদু স্ট্রিং ব্যবহার করে না, এটি সম্পূর্ণরূপে নিরাপদ এবং আমার মতে এটি আরও পাঠযোগ্য ডিএসএল সরবরাহ করে।
আপনি নিজের সমতুল্য তৈরি করতে জাভ্যাক ব্যবহার না করে আপনি লিনকিউ এর সমতুল্য পাবেন না।
সেদিন অবধি যখনই কেউ এটি করার জন্য একটি কার্যকর উপায় খুঁজে পায়, তখন কিছু ভাল বিকল্প রয়েছে as
অবজেক্টগুলিতে লিনকিউ - জাভা 8 স্ট্রিম এপিআই যুক্ত করেছে যা মানগুলির স্রোতে ক্রিয়ামূলক-স্টাইলের ক্রিয়াকলাপগুলির জন্য সমর্থন যোগ করে:
জাভা 8 ব্যাখ্যা: জাভা সংগ্রহগুলিতে ল্যাম্বডাস প্রয়োগ করা
লিংক থেকে এসকিউএল / এনএইচবারনেট / ইত্যাদি। (ডাটাবেস অনুসন্ধান) - একটি বিকল্প হ'ল জিনকিউ ব্যবহার করা যা নতুন জেভিএ 8 বৈশিষ্ট্যগুলিও ব্যবহার করে এবং 26 ফেব্রুয়ারী, গিথুবে প্রকাশিত হয়েছিল: https://github.com/my2iu/Jinq
জিনক বিকাশকারীদের জাভাতে ডেটাবেস কোয়েরি লেখার একটি সহজ এবং প্রাকৃতিক উপায় সরবরাহ করে। আপনি সংগ্রহে সঞ্চিত সাধারণ জাভা অবজেক্টের মতো ডেটাবেস ডেটা চিকিত্সা করতে পারেন। আপনি এগুলির উপরে পুনরাবৃত্তি করতে পারেন এবং সাধারণ জাভা কমান্ডগুলি ব্যবহার করে এগুলি ফিল্টার করতে পারেন এবং আপনার সমস্ত কোড স্বয়ংক্রিয়ভাবে অনুকূলিত ডাটাবেস কোয়েরিতে অনুবাদ করা হবে। পরিশেষে, লিনকিউ-স্টাইলের ক্যোয়ারী জাভা জন্য উপলব্ধ!
জিনকিউ প্রকল্পের সাইট: http://www.jinq.org/
কোয়ের নামে একটি প্রকল্প রয়েছে ।
এটি একটি জাভা ফ্রেমওয়ার্ক যা সংগ্রহগুলি অনুসন্ধানের ক্ষমতা যুক্ত করে।
দ্রষ্টব্য: লেখকের মতে, প্রকল্পটি আর রক্ষণাবেক্ষণ করা হচ্ছে না।
from x in xs select x
করে উত্তরটি খুঁজে পেতে পারতেন (না)।
জাভা এর জন্য অনেকগুলি লিনকুই সমতুল্য রয়েছে, তুলনার জন্য এখানে দেখুন ।
টাইপসেফ কোয়েয়ার / লিনকিউ স্টাইল ফ্রেমওয়ার্কের জন্য কোয়েরিএসএল ব্যবহার বিবেচনা করুন । কোয়েরিএসএল জেপিএ / হাইবারনেট, জেডিও, এসকিউএল এবং জাভা সংগ্রহগুলি সমর্থন করে।
আমি ক্যুরিডসল এর রক্ষণাবেক্ষণকারী, সুতরাং এই উত্তরটি পক্ষপাতদুষ্ট।
২০১৪-তে, আমি অবশেষে বলতে পারি যে লিনকিউ অবশেষে জাভা ৮.তে রয়েছে তাই আর লিনকিউয়ের বিকল্প খুঁজে পাওয়ার দরকার নেই।
এখন জাভা 8 ল্যাম্বডাস সমর্থন করে, লিনাকের সাথে সাদৃশ্যযুক্ত জাভা এপিআই তৈরি করা সম্ভব।
জিনাক জাভা-র জন্য এই নতুন লিনকিউ-স্টাইলের লাইব্রেরিগুলির মধ্যে একটি।
আমি এই লাইব্রেরির বিকাশকারী। এটি জাভা অনুবাদ করে ডেটাবেস কোয়েরিতে বাইটকোড বিশ্লেষণ ব্যবহারের উপর পাঁচ বছরের গবেষণার ভিত্তিতে তৈরি। সি # এর ডি-লিনক কীভাবে একটি কোয়েরি স্তর যা সত্তা ফ্রেমওয়ার্কের শীর্ষে বসে আছে তার অনুরূপ, জিনক জেপিএ বা জইউকিউ শীর্ষে বসে একটি কোয়েরি স্তর হিসাবে কাজ করতে সক্ষম। এটি একীকরণ, গোষ্ঠী এবং উপকেন্দ্রিকদের সমর্থন করে। এমনকি এরিক মাইজার ( লিনকিউ এর স্রষ্টা) জিনকে স্বীকার করেছেন ।
এসবিকিউএল 4 জে দেখুন । এটি জাভা-র সাথে সংহত করে টাইপ-নিরাপদ শক্তিশালী কোয়েরি ভাষা। জটিল লিখতে এবং নেস্টেড কোয়েরিগুলিকে গুন করার অনুমতি দেয়। প্রচুর অপারেটর রয়েছে, জাভা পদ্ধতিতে কোয়েরিগুলির ভিতরে নির্মাণ করা যেতে পারে const অনুসন্ধানগুলি খাঁটি জাভা কোডে অনুবাদ করা হয় (রানটাইমের সময় কোনও প্রতিবিম্ব নেই) তাই কার্যকর করা খুব দ্রুত।
সম্পাদনা: আচ্ছা, এখন পর্যন্ত এসবিকিউএল 4 জে এটি জাভা ভাষার একমাত্র এক্সটেনশন যা লিনিকের অনুরূপ ক্যোয়ারী ক্ষমতা দেয়। কিছু আকর্ষণীয় প্রজেক্ট রয়েছে যেমন কোয়ার এবং জাকিউ তবে সেগুলি কেবল এপিআই এর, সংশ্লেষের / সিনটিক্স এক্সটেনশনটি শক্তিশালী টাইপের সুরক্ষার সাথে সংকলনের সময় নয়।
এসকিউএল বাস্তবায়ন থেকে জাভা লিনিক্ .NET লিনকু এর সাথে তুলনা করে পূর্ণ ভাষা সংহতকরণ এবং আরও বড় বৈশিষ্ট্য সেট সরবরাহ করে।
আমি গুগল থেকে পেয়ারা-লাইব্রেরি চেষ্টা করেছি । এটির একটি FluentIterable
যা আমি মনে করি লিনকুইয়ের কাছাকাছি। আরো দেখুন FunctionalExplained ।
List<String> parts = new ArrayList<String>(); // add parts to the collection.
FluentIterable<Integer> partsStartingA =
FluentIterable.from(parts).filter(new Predicate<String>() {
@Override
public boolean apply(final String input) {
return input.startsWith("a");
}
}).transform(new Function<String, Integer>() {
@Override
public Integer apply(final String input) {
return input.length();
}
});
জাভা জন্য একটি বিস্তৃত গ্রন্থাগার বলে মনে হচ্ছে। অবশ্যই লিনকিউর মতো সাবলীল নয় তবে আকর্ষণীয় দেখাচ্ছে looks
https://code.google.com/p/joquery/
বিভিন্ন সম্ভাবনার সমর্থন করে,
দেওয়া সংগ্রহ,
Collection<Dto> testList = new ArrayList<>();
ধরণের,
class Dto
{
private int id;
private String text;
public int getId()
{
return id;
}
public int getText()
{
return text;
}
}
ছাঁকনি
জাভা 7
Filter<Dto> query = CQ.<Dto>filter(testList)
.where()
.property("id").eq().value(1);
Collection<Dto> filtered = query.list();
জাভা 8
Filter<Dto> query = CQ.<Dto>filter(testList)
.where()
.property(Dto::getId)
.eq().value(1);
Collection<Dto> filtered = query.list();
এছাড়াও,
Filter<Dto> query = CQ.<Dto>filter()
.from(testList)
.where()
.property(Dto::getId).between().value(1).value(2)
.and()
.property(Dto::grtText).in().value(new string[]{"a","b"});
বাছাই করা হচ্ছে (জাভা 7 এর জন্যও উপলব্ধ)
Filter<Dto> query = CQ.<Dto>filter(testList)
.orderBy()
.property(Dto::getId)
.property(Dto::getName)
Collection<Dto> sorted = query.list();
গোষ্ঠীকরণ (জাভা 7 এর জন্যও উপলব্ধ)
GroupQuery<Integer,Dto> query = CQ.<Dto,Dto>query(testList)
.group()
.groupBy(Dto::getId)
Collection<Grouping<Integer,Dto>> grouped = query.list();
যোগদান করে (জাভা 7 এর জন্যও উপলব্ধ)
দেওয়া,
class LeftDto
{
private int id;
private String text;
public int getId()
{
return id;
}
public int getText()
{
return text;
}
}
class RightDto
{
private int id;
private int leftId;
private String text;
public int getId()
{
return id;
}
public int getLeftId()
{
return leftId;
}
public int getText()
{
return text;
}
}
class JoinedDto
{
private int leftId;
private int rightId;
private String text;
public JoinedDto(int leftId,int rightId,String text)
{
this.leftId = leftId;
this.rightId = rightId;
this.text = text;
}
public int getLeftId()
{
return leftId;
}
public int getRightId()
{
return rightId;
}
public int getText()
{
return text;
}
}
Collection<LeftDto> leftList = new ArrayList<>();
Collection<RightDto> rightList = new ArrayList<>();
যোগদান করা যেতে পারে মত,
Collection<JoinedDto> results = CQ.<LeftDto, LeftDto>query().from(leftList)
.<RightDto, JoinedDto>innerJoin(CQ.<RightDto, RightDto>query().from(rightList))
.on(LeftFyo::getId, RightDto::getLeftId)
.transformDirect(selection -> new JoinedDto(selection.getLeft().getText()
, selection.getLeft().getId()
, selection.getRight().getId())
)
.list();
প্রকাশ
Filter<Dto> query = CQ.<Dto>filter()
.from(testList)
.where()
.exec(s -> s.getId() + 1).eq().value(2);
তুমি আমার গ্রন্থাগার চেষ্টা করে দেখতে পারেন CollectionsQuery । এটি অবজেক্টের সংগ্রহের উপরে প্রশ্নের মতো লিনকুই চালাতে দেয়। আপনাকে লিনিকিউয়ের মতোই প্রিকিকেট পাস করতে হবে। আপনি যদি ইন্টারফেসের সাথে পুরানো বাক্য গঠন ব্যবহার করার চেয়ে জাভা / / using ব্যবহার করছেন:
List<String> names = Queryable.from(people)
.filter(new Predicate<Person>() {
public boolean filter(Person p) {
return p.age>20;
}
})
.map (new Converter<Person,String>() {
public Integer convert(Person p) {
return p.name;
}
})
.toList();
আপনি এটি জাভা 8, বা পুরানো জাভাতে রেট্রোলেম্বদা এবং এটি গ্রেড প্লাগইন ব্যবহার করতে পারেন, তারপরে আপনার নতুন অভিনব বাক্য গঠন থাকবে:
List<String> names = Queryable.from(people)
.filter(p->p.age>20)
.map (p->p.name)
.toList();
আপনার উপরে ডিবি কোয়েরিগুলি চালনার দরকার হলে আপনি জিনকিউ দেখতে পারেন, তবে এটি রেট্রোলেম্বদা দ্বারা সিরিয়ালযুক্ত ল্যাম্বডাস ব্যবহারের জন্য ব্যাক-পোর্ট করা যাবে না।
কেবলমাত্র অন্য বিকল্প যুক্ত করতে: জাভা 6. জাফ্যাক্স.পার্সপেনসিটিসিটিরিয়া প্যাকেজ ব্যবহার করে টাইপ-নিরাপদ ডাটাবেস প্রশ্নের জন্য জাভা 6 এর সমাধান রয়েছে ।
যদিও আমি অবশ্যই বলব যে এটি আসলে লিনকিউ নয়, কারণ লিনকিউ দিয়ে আপনি যেকোনও মূল সংখ্যা জিজ্ঞাসা করতে পারেন।
এখানে একটি খুব ভাল গ্রন্থাগার রয়েছে যা আপনি এটির জন্য ব্যবহার করতে পারেন।
এখানে অবস্থিত: https://github.com/nicholas22/jpropel-light
জাভা 8 পর্যন্ত লাম্বডাস উপলব্ধ থাকবে না, সুতরাং এটি ব্যবহার করা কিছুটা আলাদা এবং এটি প্রাকৃতিক বলে মনে হয় না।
এটি লিনকের মতো শোনাচ্ছে যে প্রত্যেকে এখানে লিঙ্কটিওঅবজেক্টের কথা বলছে jects যা আমি বিশ্বাস করি কেবলমাত্র জাভাতে ইতিমধ্যে সম্পাদনযোগ্য কার্যকারিতা দেয় তবে সত্যই কুরুচিপূর্ণ সিনট্যাক্স সহ।
লিঙ্কের আসল শক্তি হিসাবে আমি যা দেখতে পাই। নেটটি হ'ল ল্যাম্বডা এক্সপ্রেশনগুলি এমন একটি প্রসঙ্গে ব্যবহার করা যেতে পারে যা ডেলিগেট বা এক্সপ্রেশনের প্রয়োজন হয় এবং তারপরে উপযুক্ত আকারে সংকলিত হবে। এটিই লিনকটোসকিএল (বা লিনকটোঅবজেক্টস ব্যতীত অন্য কিছু) যেমন কাজ করতে দেয় এবং তাদের লিনকটোঅবজেক্টের মতো একটি বাক্য গঠন করার অনুমতি দেয়।
দেখে মনে হচ্ছে উপরে উল্লিখিত সমস্ত প্রকল্পগুলি কেবল লিনকটোঅবজেক্টগুলির সক্ষমতা সরবরাহ করছে। যা আমাকে জিনিস করে তোলে যে লিনাকটোসকিউএল-টাইপ কার্যকারিতা জাভাতে দিগন্তের নয়।
বেসিক ফাংশনাল কালেকশনের জন্য, জাভা 8 এর মধ্যে এটি নির্মিত হয়েছে, বেশিরভাগ মুখ্য নন-জাভা জেভিএম ভাষা এটি (স্কেলা, ক্লোজার, ইত্যাদি) তৈরি করেছে এবং আপনি পূর্ববর্তী জাভা সংস্করণগুলির জন্য লিবাস যোগ করতে পারেন।
কোনও এসকিউএল ডাটাবেসে সম্পূর্ণ ভাষার সংহত অ্যাক্সেসের জন্য, স্কালা (জেভিএম-তে চালিত হয়) স্লিক রয়েছে
লিনকুই (লাইনকিউ থেকে অবজেক্টস) এর জন্য জাভা 8 এর কিছু সমতুল্য হবে, দেখুন প্রকল্প লাম্বদা ।
এটা তোলে গণনীয় এর রয়েছে অবজেক্টস এক্সটেনশন করার LINQ মত সামগ্রী । তবে এক্সপ্রেশন এবং এক্সপ্রেশনট্রি এর মতো আরও জটিল লিনকিউ জিনিসের জন্য (এসকিউএল এবং অন্যান্য লিনকিউ সরবরাহকারীরা যদি লিনিকিউর জন্য অপ্টিমাইজড এবং রিয়েল কিছু সরবরাহ করতে চান তবে এটির সমতুল্য নেই) তবে আমরা ভবিষ্যতে দেখতে পাব :)
তবে ভবিষ্যতে জাভা সম্পর্কিত ঘোষণামূলক প্রশ্নের মতো কিছু থাকবে বলে আমি মনে করি না।
জাভাতে তেমন কোনও বৈশিষ্ট্য নেই। অন্যান্য এপিআই ব্যবহার করে আপনি এই বৈশিষ্ট্যটি পাবেন। যেমন ধরুন আমাদের কাছে একটি নামী আইডির সাথে একটি প্রাণী অবজেক্ট রয়েছে। আমাদের কাছে প্রাণী বস্তুগুলির তালিকাভুক্ত বস্তু রয়েছে। এখন যদি আমরা সমস্ত প্রাণীর নাম পেতে চাইলে তালিকার অবজেক্ট থেকে 'o' থাকে। আমরা নিম্নলিখিত কোয়েরি লিখতে পারেন
from(animals).where("getName", contains("o")).all();
কোয়েরির উপরের বিবৃতিতে তাদের নামে 'ও' বর্ণমালা রয়েছে এমন প্রাণীর তালিকা থাকবে। আরও তথ্য দয়া করে নিম্নলিখিত ব্লগটি দিয়ে যান। http://javaworldwide.blogspot.in/2012/09/linq-in-java.html
ক্ষুদ্র-কিউ পরীক্ষা করে দেখুন । (মনে রাখবেন আপনি বর্তমানে এটি ডাউনলোড করতে পারবেন না))
উপরের লিঙ্কটি অভিযোজিত একটি উদাহরণ এখানে:
প্রথমে আমাদের কিছু ডেটা সংগ্রহ দরকার, আসুন স্ট্রিংগুলির একটি সেট বলুন
String[] strings = { "bla", "mla", "bura", "bala", "mura", "buma" };
এখন আমরা কেবল স্ট্রিং নির্বাচন করতে চাই যা "বি" দিয়ে শুরু হয়:
Query<String> stringsStartingWithB = new Query<String>(strings).where(
new Query.Func<String, Boolean>(){
public Boolean run(String in) {
return in.startsWith("b");
}
}
);
কোনও আসল ডেটা অনুলিপি করা হয়নি বা এর মতো কিছু নেই, আপনি পুনরাবৃত্তি শুরু করার সাথে সাথে এটি প্রক্রিয়া করা হবে:
for(String string : stringsStartingWithB ) {
System.out.println(string);
}
জাভাক জাওয়ার জন্য লিনকুই সমতুল্য। যদিও এটি H2 ডাটাবেসের জন্য তৈরি করা হয়েছিল, এটি যে কোনও ডাটাবেসের জন্য কাজ করা উচিত কারণ এটি জেডিবিসি ব্যবহার করে।
আপনি যে উত্তরটির প্রত্যাশা করছেন তা নাও হতে পারে তবে আপনার কোডের কিছু অংশের সংগ্রহ (সন্ধান, বাছাই, ফিল্টারিং, রূপান্তরকরণ, বিশ্লেষণ) নিয়ে ভারী কাজ প্রয়োজন হলে ক্লোজার বা স্কালায় কিছু ক্লাস লেখার জন্য আপনার বিবেচনায় নেওয়া যেতে পারে ।
তাদের কার্যকরী প্রকৃতির কারণে, সংগ্রহগুলির সাথে কাজ করা তারা সবচেয়ে ভাল। স্কালার সাথে আমার খুব বেশি অভিজ্ঞতা নেই, তবে ক্লোজারের সাথে আপনি সম্ভবত আপনার নখদর্পণে আরও শক্তিশালী লিনক পাবেন এবং একবার সংকলিত হয়ে গেলে, আপনি যে ক্লাসগুলি তৈরি করেছেন সেটি বাকি কোড বেসের সাথে বিজোড় একীকরণ করবে।
একজন বেনামে ব্যবহারকারী অন্যটির উল্লেখ করেছেন, ডেটিং :
ডাইটিং হ'ল একটি ক্লাসের লাইব্রেরি চেইনযোগ্য পদ্ধতিগুলির মাধ্যমে সংগ্রহের বিষয়ে জিজ্ঞাসা ক্ষমতা এবং .NET- এ লিনকের মতো বেনামে ইন্টারফেস সরবরাহ করে is অন্যান্য সংগ্রহশালা লাইব্রেরির বিপরীতে স্ট্যাটিক পদ্ধতি ব্যবহার করে পুরো সংগ্রহটির পুনরাবৃত্তি প্রয়োজন, ডেটিং একটি মূল সরবরাহ করে যা সংকলন বা অ্যারেতে ক্যোয়ারী প্রয়োগের জন্য বিশিষ্ট শৃঙ্খলাবদ্ধ পদ্ধতিগুলি রয়েছে একটি বিশিষ্ট শ্রেণীর উইচটিতে।
সমর্থিত পদ্ধতি: যে কোনও, নিক্ষিপ্ত, পরিচিতি, অন্তর্ভুক্ত, গণনা, স্বতন্ত্র, উপাদান, ব্যতীত, প্রথম, ফার্স্টআরডিফল্ট, গ্রুপবি, ছেদ, যোগ, শেষ, সর্বশেষআরডিফল্ট, অফ টাইপ, অর্ডারবি, অর্ডারবাইডেসেন্ডিং, বিপরীত, নির্বাচন করুন, নির্বাচন করুন, একক, একক, ওড়নাফাল্ট, এড়িয়ে যান , এড়িয়ে যান, নিন, নিন, নিন, অ্যারি, টু অ্যারেলিস্ট, ইউনিয়ন, যেখানে
স্কালা.এখন আমি তারা এটি পড়তে দেখেছি এবং এটি লিনাকের মতো তবে আরও সহজ এবং আরও অপঠনযোগ্য found কিন্তু স্কালাল লিনাক্সে চলতে পারে, হ্যাঁ? csharp মনো মনোভাব প্রয়োজন।
প্রোগ্রামিং ল্যাঙ্গুয়েজ পিজ্জা ছিল (একটি জাভা এক্সটেনশন) এবং আপনার এটি দেখতে হবে। - এটি ঘোষিত পদ্ধতিতে ডেটা জিজ্ঞাসা করতে "সাবলীল ইন্টারফেস" ধারণাটি ব্যবহার করে এবং এটি নীতিগতভাবে লিনিকউ ডাব্লু / ও ক্যোয়ারী এক্সপ্রেশন (http://en.wikedia.org/wiki/Pizza_programming_language) এর সাথে সমান। হায় আফসোস এটি অনুসরণ করা হয়নি, তবে জাভাতে লিনিক্যু সদৃশ কিছু পাওয়ার এক উপায় ছিল।
জাভার জন্য লিনকিউ এর সমতুল্য নেই। তবে বাহ্যিক কিছু এপিআই রয়েছে যা দেখতে লিনকিউয়ের মতো দেখতে https://github.com/nicholas22/jpropel-light , https://code.google.com/p/jaque/
আপনি এই লাইব্রেরিটি চেষ্টা করতে পারেন: https://code.google.com/p/qood/
এটি ব্যবহার করার কয়েকটি কারণ এখানে রয়েছে: