<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: javatute673</title>
    <description>The latest articles on DEV Community by javatute673 (@javatute673).</description>
    <link>https://dev.to/javatute673</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F928071%2F553166bd-3ab7-44ba-bbed-78a9a15ed504.png</url>
      <title>DEV Community: javatute673</title>
      <link>https://dev.to/javatute673</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/javatute673"/>
    <language>en</language>
    <item>
      <title>Monolithic vs Microservice</title>
      <dc:creator>javatute673</dc:creator>
      <pubDate>Sat, 23 Dec 2023 08:06:39 +0000</pubDate>
      <link>https://dev.to/javatute673/monolithic-vs-microservice-4hk7</link>
      <guid>https://dev.to/javatute673/monolithic-vs-microservice-4hk7</guid>
      <description>&lt;p&gt;&lt;strong&gt;Monolithic vs. Microservices&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Today, let's dive into a topic that stirs up quite the debate in the software development world: Monolithic vs. Microservices Architecture. Think of it as deciding between a one-stop mega mall or a street full of specialized boutiques. Intriguing, right?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Monolithic: The All-in-One Giant&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Imagine building a house. A monolithic architecture is like constructing a single, massive structure where every room (or component) is interconnected. It's the traditional way of software development, where everything is under one roof - your database, client-side logic, server-side logic, you name it.&lt;/p&gt;

&lt;p&gt;Pros:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Simplicity&lt;/strong&gt;: Starting off, it's like having everything in one big room. Easy to navigate, right?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Straightforward Deployment&lt;/strong&gt;: It's like moving into a house that’s ready to go.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Cons:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Scaling Challenges&lt;/strong&gt;: As your application grows, so does the complexity. Ever tried finding a specific tool in a cluttered garage? Yep, it's like that.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tougher Updates&lt;/strong&gt;: Changing one part can affect the whole. It's like renovating your kitchen but accidentally knocking out the power in your bedroom.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Microservices: The Specialized Boutiques&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Now, envision a street lined with specialized boutiques, each offering something unique. Microservices break down the software into smaller, independent services. Each service runs its own process and communicates through lightweight mechanisms, often an HTTP resource API.&lt;/p&gt;

&lt;p&gt;Pros:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Scalability&lt;/strong&gt;: You can scale individual components without touching others. It’s like upgrading just the boutique you want.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Flexibility in Technology&lt;/strong&gt;: Each service can use a tech stack that best fits its purpose. It's like each boutique choosing its own decor and style.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Cons:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Complex Communication&lt;/strong&gt;: These services need to talk to each other, and sometimes, the conversation gets complicated.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Deployment Complexity&lt;/strong&gt;: It's like managing multiple shops at once, each with its own opening hours and maintenance needs.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Which One to Choose?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;It really depends on your project's size, team, and scalability needs. If you're just starting out or have a small, closely-knit team, a monolithic approach might be your best bet. But if you're looking at handling large-scale applications, especially in the cloud, microservices offer flexibility and scalability that's hard to beat.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Wrapping Up&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Choosing between monolithic and microservices is like choosing between a Swiss Army knife and a tool belt. Each has its place, and the right choice depends on the task at hand. The key is understanding your needs and striking a balance between simplicity and flexibility.&lt;/p&gt;

&lt;p&gt;Got any experiences or thoughts to share on this topic? Drop them in the comments below – let's keep the conversation going!&lt;/p&gt;




&lt;p&gt;See a depth &lt;a href="https://javatute.com/microservice/monolithic-vs-microservices-architecture/"&gt;tutorial&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>microservices</category>
    </item>
    <item>
      <title>How to Configure a Standard and FIFO SQS Queue in AWS</title>
      <dc:creator>javatute673</dc:creator>
      <pubDate>Mon, 18 Dec 2023 16:26:48 +0000</pubDate>
      <link>https://dev.to/javatute673/how-to-configure-a-standard-and-fifo-sqs-queue-in-aws-1ho1</link>
      <guid>https://dev.to/javatute673/how-to-configure-a-standard-and-fifo-sqs-queue-in-aws-1ho1</guid>
      <description>&lt;p&gt;In this post we will see How to Configure a Standard and FIFO SQS Queue in AWS. Configuring Amazon &lt;a href="https://javatute.com/aws/spring-boot-aws-sqs-listener-example/"&gt;Simple Queue Service&lt;/a&gt; (SQS) involves setting up either a standard queue or a FIFO (First-In-First-Out) queue, depending on your application's requirements. Here's a step-by-step guide for configuring both types of queues:&lt;/p&gt;

&lt;h2&gt;
  
  
  Configuring a Standard SQS Queue
&lt;/h2&gt;

&lt;p&gt;Standard queues offer maximum throughput, best-effort ordering, and at-least-once delivery.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Sign in to AWS Management Console&lt;/strong&gt; and open the Amazon SQS console at &lt;a href="https://console.aws.amazon.com/sqs/"&gt;https://console.aws.amazon.com/sqs/&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Create a New Queue&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Click on “Create Queue”.&lt;/li&gt;
&lt;li&gt;Select “Standard Queue”.&lt;/li&gt;
&lt;li&gt;Enter the Queue Name.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Configure Queue Settings&lt;/strong&gt; (Optional):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Set parameters such as Delay Seconds, Maximum Message Size, Message Retention Period, etc., according to your needs.&lt;/li&gt;
&lt;li&gt;For a standard queue, ordering is not guaranteed, and each message is delivered at least once.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Create Queue&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Click the “Create Queue” button at the bottom of the page. Your standard queue is now set up and ready to use.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Configuring a FIFO SQS Queue
&lt;/h3&gt;

&lt;p&gt;FIFO queues ensure the order in which messages are sent and received is strictly preserved and a message is delivered once and remains available until a consumer processes and deletes it.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Sign in to AWS Management Console&lt;/strong&gt; and open the Amazon SQS console at &lt;a href="https://console.aws.amazon.com/sqs/"&gt;https://console.aws.amazon.com/sqs/&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Create a New Queue&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Click on “Create Queue”.&lt;/li&gt;
&lt;li&gt;Select “FIFO Queue”.&lt;/li&gt;
&lt;li&gt;Enter the Queue Name. Note that FIFO queue names must end with the &lt;code&gt;.fifo&lt;/code&gt; suffix.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Configure Queue Settings&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Set parameters such as Message Deduplication ID, Message Group ID, Maximum Message Size, Message Retention Period, etc.&lt;/li&gt;
&lt;li&gt;FIFO queues also offer features like Content-Based Deduplication.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Create Queue&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Click the “Create Queue” button at the bottom of the page. Your FIFO queue is now set up and ready to use.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Additional Configuration
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Access Policies&lt;/strong&gt;: Configure access policies to control which users or services can send messages to or receive messages from the queue.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Dead-Letter Queues&lt;/strong&gt;: Optionally, configure a Dead-Letter Queue (DLQ) to collect messages that can't be processed successfully.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Monitoring&lt;/strong&gt;: Set up CloudWatch monitoring to track metrics like the number of messages sent, delivered, delayed, etc.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Conclusion
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Use &lt;strong&gt;Standard Queues&lt;/strong&gt; when you require high throughput and at-least-once delivery without the necessity of message ordering.&lt;/li&gt;
&lt;li&gt;Use &lt;strong&gt;FIFO Queues&lt;/strong&gt; when the order of operations and events is critical, or where duplicates cannot be tolerated.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Remember that SQS is a managed service, so much of the heavy lifting is done by AWS, allowing you to focus more on how your application interacts with the queue rather than on the underlying infrastructure and maintenance.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>spring</category>
    </item>
    <item>
      <title>How to use @Lazy annotation in case of Circular Dependency</title>
      <dc:creator>javatute673</dc:creator>
      <pubDate>Mon, 18 Dec 2023 15:45:42 +0000</pubDate>
      <link>https://dev.to/javatute673/how-to-use-lazy-annotation-in-case-of-circular-dependency-1pki</link>
      <guid>https://dev.to/javatute673/how-to-use-lazy-annotation-in-case-of-circular-dependency-1pki</guid>
      <description>&lt;p&gt;Using the &lt;code&gt;@Lazy&lt;/code&gt; annotation in Spring is a common technique to resolve circular dependencies. Circular dependencies occur when two beans are dependent on each other, leading to a situation where neither bean can be instantiated without the other already existing.&lt;/p&gt;

&lt;p&gt;To understand how &lt;code&gt;@Lazy&lt;/code&gt; helps, let's first look at what a circular dependency might look like and then how to resolve it with &lt;code&gt;@Lazy&lt;/code&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Circular Dependency Example
&lt;/h3&gt;

&lt;p&gt;Suppose you have two classes, &lt;code&gt;ClassA&lt;/code&gt; and &lt;code&gt;ClassB&lt;/code&gt;, and they depend on each other.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight java"&gt;&lt;code&gt;&lt;span class="nd"&gt;@Component&lt;/span&gt;
&lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;ClassA&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
    &lt;span class="kd"&gt;private&lt;/span&gt; &lt;span class="kd"&gt;final&lt;/span&gt; &lt;span class="nc"&gt;ClassB&lt;/span&gt; &lt;span class="n"&gt;classB&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

    &lt;span class="nd"&gt;@Autowired&lt;/span&gt;
    &lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="nf"&gt;ClassA&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nc"&gt;ClassB&lt;/span&gt; &lt;span class="n"&gt;classB&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
        &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;classB&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;classB&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="o"&gt;}&lt;/span&gt;
&lt;span class="o"&gt;}&lt;/span&gt;

&lt;span class="nd"&gt;@Component&lt;/span&gt;
&lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;ClassB&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
    &lt;span class="kd"&gt;private&lt;/span&gt; &lt;span class="kd"&gt;final&lt;/span&gt; &lt;span class="nc"&gt;ClassA&lt;/span&gt; &lt;span class="n"&gt;classA&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

    &lt;span class="nd"&gt;@Autowired&lt;/span&gt;
    &lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="nf"&gt;ClassB&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nc"&gt;ClassA&lt;/span&gt; &lt;span class="n"&gt;classA&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
        &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;classA&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;classA&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="o"&gt;}&lt;/span&gt;
&lt;span class="o"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;In this scenario, Spring cannot instantiate &lt;code&gt;ClassA&lt;/code&gt; without first instantiating &lt;code&gt;ClassB&lt;/code&gt; and vice versa, leading to a circular dependency problem.&lt;/p&gt;

&lt;h3&gt;
  
  
  Resolving with &lt;code&gt;@Lazy&lt;/code&gt;
&lt;/h3&gt;

&lt;p&gt;You can resolve this by using the &lt;code&gt;@Lazy&lt;/code&gt; annotation. &lt;code&gt;@Lazy&lt;/code&gt; defers the initialization of a bean until it is actually needed. This can break the circular dependency as one of the beans will not be fully initialized (i.e., its dependencies won't be injected) until it's first used.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight java"&gt;&lt;code&gt;&lt;span class="nd"&gt;@Component&lt;/span&gt;
&lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;ClassA&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
    &lt;span class="kd"&gt;private&lt;/span&gt; &lt;span class="kd"&gt;final&lt;/span&gt; &lt;span class="nc"&gt;ClassB&lt;/span&gt; &lt;span class="n"&gt;classB&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

    &lt;span class="nd"&gt;@Autowired&lt;/span&gt;
    &lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="nf"&gt;ClassA&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nd"&gt;@Lazy&lt;/span&gt; &lt;span class="nc"&gt;ClassB&lt;/span&gt; &lt;span class="n"&gt;classB&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
        &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;classB&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;classB&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="o"&gt;}&lt;/span&gt;
&lt;span class="o"&gt;}&lt;/span&gt;

&lt;span class="nd"&gt;@Component&lt;/span&gt;
&lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;ClassB&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
    &lt;span class="kd"&gt;private&lt;/span&gt; &lt;span class="kd"&gt;final&lt;/span&gt; &lt;span class="nc"&gt;ClassA&lt;/span&gt; &lt;span class="n"&gt;classA&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

    &lt;span class="nd"&gt;@Autowired&lt;/span&gt;
    &lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="nf"&gt;ClassB&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nc"&gt;ClassA&lt;/span&gt; &lt;span class="n"&gt;classA&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
        &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;classA&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;classA&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="o"&gt;}&lt;/span&gt;
&lt;span class="o"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;In this modified example, &lt;code&gt;ClassA&lt;/code&gt;'s dependency on &lt;code&gt;ClassB&lt;/code&gt; is marked as &lt;code&gt;@Lazy&lt;/code&gt;. When Spring creates an instance of &lt;code&gt;ClassA&lt;/code&gt;, it injects a lazy proxy for &lt;code&gt;ClassB&lt;/code&gt; instead of an actual instance of &lt;code&gt;ClassB&lt;/code&gt;. The actual &lt;code&gt;ClassB&lt;/code&gt; instance is not created until a method on the &lt;code&gt;ClassB&lt;/code&gt; proxy is called. This delay breaks the circular dependency chain and allows Spring to successfully create both beans.&lt;/p&gt;

&lt;h3&gt;
  
  
  Things to Note
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Design Smell&lt;/strong&gt;: Circular dependencies often indicate a potential flaw in the design of your application. It's generally a good idea to revisit your design and consider refactoring to eliminate circular dependencies altogether.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Proxy Behavior&lt;/strong&gt;: With &lt;code&gt;@Lazy&lt;/code&gt;, Spring creates a proxy to inject as the dependency. This means that the actual bean will be created when the proxy is first accessed. Be aware of this lazy behavior as it might have implications for your application logic.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Alternative Solutions&lt;/strong&gt;: Other than using &lt;code&gt;@Lazy&lt;/code&gt;, you can also resolve circular dependencies by using setter injection or method injection, which allows one of the beans to be constructed without needing the other to be fully initialized.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Using &lt;code&gt;@Lazy&lt;/code&gt; is a quick workaround for circular dependencies, but it's important to consider whether a redesign of the application's components and their relationships might be a more sustainable solution.&lt;/p&gt;

</description>
      <category>spring</category>
    </item>
    <item>
      <title>How does String compareTo() method work in Java</title>
      <dc:creator>javatute673</dc:creator>
      <pubDate>Sun, 10 Dec 2023 05:47:32 +0000</pubDate>
      <link>https://dev.to/javatute673/how-does-string-compareto-method-work-in-java-2j7i</link>
      <guid>https://dev.to/javatute673/how-does-string-compareto-method-work-in-java-2j7i</guid>
      <description>&lt;p&gt;&lt;a href="https://javatute.com/core-java/how-does-string-compareto-method-work-in-java/"&gt;https://javatute.com/core-java/how-does-string-compareto-method-work-in-java/&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>CollectionUtils isEqualCollection() Example in Java</title>
      <dc:creator>javatute673</dc:creator>
      <pubDate>Sun, 10 Dec 2023 05:35:57 +0000</pubDate>
      <link>https://dev.to/javatute673/collectionutils-isequalcollection-example-in-java-27b2</link>
      <guid>https://dev.to/javatute673/collectionutils-isequalcollection-example-in-java-27b2</guid>
      <description>&lt;p&gt;&lt;a href="https://javatute.com/collection/collectionutils-isequalcollection-example-in-java/"&gt;https://javatute.com/collection/collectionutils-isequalcollection-example-in-java/&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>CollectionUtils intersection() Example in Java</title>
      <dc:creator>javatute673</dc:creator>
      <pubDate>Sun, 10 Dec 2023 05:30:26 +0000</pubDate>
      <link>https://dev.to/javatute673/collectionutils-intersection-example-in-java-3npc</link>
      <guid>https://dev.to/javatute673/collectionutils-intersection-example-in-java-3npc</guid>
      <description>&lt;p&gt;&lt;a href="https://javatute.com/collection/collectionutils-intersection-example-in-java/"&gt;https://javatute.com/collection/collectionutils-intersection-example-in-java/&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>CollectionUtils union() Example in Java</title>
      <dc:creator>javatute673</dc:creator>
      <pubDate>Sun, 10 Dec 2023 05:23:57 +0000</pubDate>
      <link>https://dev.to/javatute673/collectionutils-union-example-in-java-9a5</link>
      <guid>https://dev.to/javatute673/collectionutils-union-example-in-java-9a5</guid>
      <description>&lt;p&gt;&lt;a href="https://javatute.com/collection/collectionutils-union-example-in-java/"&gt;https://javatute.com/collection/collectionutils-union-example-in-java/&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>What is Hibernate</title>
      <dc:creator>javatute673</dc:creator>
      <pubDate>Sun, 10 Dec 2023 05:18:23 +0000</pubDate>
      <link>https://dev.to/javatute673/what-is-hibernate-5g11</link>
      <guid>https://dev.to/javatute673/what-is-hibernate-5g11</guid>
      <description>&lt;p&gt;&lt;a href="https://javatute.com/hibernate/what-is-hibernate/"&gt;https://javatute.com/hibernate/what-is-hibernate/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>programming</category>
      <category>beginners</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Java.lang.IllegalStateException Ambiguous mapping Cannot map Controller method</title>
      <dc:creator>javatute673</dc:creator>
      <pubDate>Sun, 10 Dec 2023 05:11:18 +0000</pubDate>
      <link>https://dev.to/javatute673/javalangillegalstateexception-ambiguous-mapping-cannot-map-controller-method-123a</link>
      <guid>https://dev.to/javatute673/javalangillegalstateexception-ambiguous-mapping-cannot-map-controller-method-123a</guid>
      <description>&lt;p&gt;&lt;a href="https://javatute.com/spring-boot/java-lang-illegalstateexception-ambiguous-mapping-cannot-map-controller-method/"&gt;https://javatute.com/spring-boot/java-lang-illegalstateexception-ambiguous-mapping-cannot-map-controller-method/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>programming</category>
      <category>beginners</category>
      <category>tutorial</category>
      <category>typescript</category>
    </item>
    <item>
      <title>How to upload CSV file to oracle database using Spring Batch</title>
      <dc:creator>javatute673</dc:creator>
      <pubDate>Sat, 09 Dec 2023 01:58:55 +0000</pubDate>
      <link>https://dev.to/javatute673/how-to-upload-csv-file-to-oracle-database-using-spring-batch-5dfo</link>
      <guid>https://dev.to/javatute673/how-to-upload-csv-file-to-oracle-database-using-spring-batch-5dfo</guid>
      <description>&lt;p&gt;&lt;a href="https://javatute.com/spring-batch/how-to-upload-csv-file-to-oracle-database-using-spring-batch/"&gt;https://javatute.com/spring-batch/how-to-upload-csv-file-to-oracle-database-using-spring-batch/&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>How to write nested loop using Java 8 Stream</title>
      <dc:creator>javatute673</dc:creator>
      <pubDate>Wed, 06 Dec 2023 17:38:47 +0000</pubDate>
      <link>https://dev.to/javatute673/how-to-write-nested-loop-using-java-8-stream-3hn8</link>
      <guid>https://dev.to/javatute673/how-to-write-nested-loop-using-java-8-stream-3hn8</guid>
      <description>&lt;p&gt;Consider we have two lists List and List. The List of Subject is defined in Student class. &lt;/p&gt;

&lt;p&gt;or consider we have below code that we want to convert into Java 8.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;List&amp;lt;String&amp;gt; list = new ArrayList();
for(int i = 0; i &amp;lt; 10; i++) {
    for(int j = 0; j &amp;lt; 10; j++) {
        if(dataMap[i][j] == 1)
            list.add(new Data(i,j));
    }
}  
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;We want to convert above code into Java 8.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://javatute.com/core-java/how-to-filter-data-from-nested-list-using-stream-java-8/"&gt;https://javatute.com/core-java/how-to-filter-data-from-nested-list-using-stream-java-8/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>java</category>
      <category>java8</category>
    </item>
    <item>
      <title>Different between ls and pwd command</title>
      <dc:creator>javatute673</dc:creator>
      <pubDate>Wed, 06 Dec 2023 15:53:05 +0000</pubDate>
      <link>https://dev.to/javatute673/different-between-ls-and-pwd-command-15al</link>
      <guid>https://dev.to/javatute673/different-between-ls-and-pwd-command-15al</guid>
      <description>&lt;p&gt;&lt;a href="https://javatute.com/linux/different-between-ls-and-pwd-command/"&gt;https://javatute.com/linux/different-between-ls-and-pwd-command/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>programming</category>
      <category>beginners</category>
      <category>tutorial</category>
    </item>
  </channel>
</rss>
