这是indexloc提供的服务,不要输入任何密码
Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
package com.baeldung.hashcode;

import java.util.HashMap;
import java.util.Map;

import com.baeldung.hashcode.standard.User;

public class Application {

public static void main(String[] args) {
Map<User, User> users = new HashMap<>();
User user1 = new User(1L, "John", "john@domain.com");
User user2 = new User(2L, "Jennifer", "jennifer@domain.com");
User user3 = new User(3L, "Mary", "mary@domain.com");

users.put(user1, user1);
users.put(user2, user2);
users.put(user3, user3);
if (users.containsKey(user1)) {
System.out.print("User found in the collection");
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package com.baeldung.boot.passenger;

import java.util.List;

interface CustomPassengerRepository {

List<Passenger> findOrderedBySeatNumberLimitedTo(int limit);
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
package com.baeldung.boot.passenger;

import java.util.Objects;

import jakarta.persistence.Basic;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.Id;

@Entity
class Passenger {

@Id
@GeneratedValue
@Column(nullable = false)
private Long id;

@Basic(optional = false)
@Column(nullable = false)
private String firstName;

@Basic(optional = false)
@Column(nullable = false)
private String lastName;

@Basic(optional = false)
@Column(nullable = false)
private Integer seatNumber;

private Passenger(String firstName, String lastName, Integer seatNumber) {
this.firstName = firstName;
this.lastName = lastName;
this.seatNumber = seatNumber;
}

static Passenger from(String firstName, String lastName, Integer seatNumber) {
return new Passenger(firstName, lastName, seatNumber);
}

@Override
public boolean equals(Object object) {
if (this == object)
return true;
if (object == null || getClass() != object.getClass())
return false;
Passenger passenger = (Passenger) object;
return getSeatNumber() == passenger.getSeatNumber() && Objects.equals(getFirstName(), passenger.getFirstName())
&& Objects.equals(getLastName(), passenger.getLastName());
}

@Override
public int hashCode() {
return Objects.hash(getFirstName(), getLastName(), getSeatNumber());
}

@Override
public String toString() {
final StringBuilder toStringBuilder = new StringBuilder(getClass().getSimpleName());
toStringBuilder.append("{ id=").append(id);
toStringBuilder.append(", firstName='").append(firstName).append('\'');
toStringBuilder.append(", lastName='").append(lastName).append('\'');
toStringBuilder.append(", seatNumber=").append(seatNumber);
toStringBuilder.append('}');
return toStringBuilder.toString();
}

Long getId() {
return id;
}

String getFirstName() {
return firstName;
}

String getLastName() {
return lastName;
}

Integer getSeatNumber() {
return seatNumber;
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
package com.baeldung.boot.passenger;

import java.util.List;

import org.springframework.data.domain.Sort;
import org.springframework.data.jpa.repository.JpaRepository;

interface PassengerRepository extends JpaRepository<Passenger, Long>, CustomPassengerRepository {

Passenger findFirstByOrderBySeatNumberAsc();

Passenger findTopByOrderBySeatNumberAsc();

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
package com.baeldung.boot.passenger;

import java.util.List;

import org.springframework.stereotype.Repository;

import jakarta.persistence.EntityManager;
import jakarta.persistence.PersistenceContext;

@Repository
class PassengerRepositoryImpl implements CustomPassengerRepository {

@PersistenceContext
private EntityManager entityManager;

@Override
public List<Passenger> findOrderedBySeatNumberLimitedTo(int limit) {
return entityManager.createQuery("SELECT p FROM Passenger p ORDER BY p.seatNumber",
Passenger.class).setMaxResults(limit).getResultList();
}
}
3 changes: 0 additions & 3 deletions spring-boot-modules/spring-boot-3/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -166,9 +166,6 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<compilerArgs>--enable-preview</compilerArgs>
</configuration>
</plugin>
</plugins>
</build>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,18 +1,11 @@
package com.baeldung.restclient;


import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertDoesNotThrow;

import org.springframework.http.HttpMethod;
import org.springframework.http.HttpRequest;
import org.junit.jupiter.api.Test;
import org.springframework.http.client.ClientHttpRequestInterceptor;
import org.springframework.http.client.ClientHttpResponse;
import org.springframework.http.client.ClientHttpRequest;
import org.springframework.http.client.support.HttpRequestWrapper;


class InterceptingClientHttpRequestTest {
class InterceptingClientHttpUnitTest {

@Test
void updateRequestAttribute() throws Exception {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,4 @@ void sendMessageUsingFreemarkerTemplate(String to,
Map<String, Object> templateModel)
throws IOException, TemplateException, MessagingException;

void sendMessageWithInputStreamAttachment(
String to, String subject, String text, String attachmentName, InputStream inputStream);
}
Original file line number Diff line number Diff line change
Expand Up @@ -132,26 +132,4 @@ private void sendHtmlMessage(String to, String subject, String htmlBody) throws
emailSender.send(message);
}

@Override
public void sendMessageWithInputStreamAttachment(
String to, String subject, String text, String attachmentName, InputStream attachmentStream) {

try {
MimeMessage message = emailSender.createMimeMessage();
MimeMessageHelper helper = new MimeMessageHelper(message, true);

helper.setFrom(NOREPLY_ADDRESS);
helper.setTo(to);
helper.setSubject(subject);
helper.setText(text);

// Add the attachment from InputStream
helper.addAttachment(attachmentName, new InputStreamResource(attachmentStream));

emailSender.send(message);
} catch (MessagingException e) {
e.printStackTrace();
}
}

}
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package com.baeldung.spring.mail;

import java.io.IOException;
import java.io.InputStream;
import java.util.Map;

import jakarta.mail.MessagingException;
Expand All @@ -17,4 +18,7 @@ void sendMessageWithAttachment(String to,
String subject,
String text,
String pathToAttachment);

void sendMessageWithInputStreamAttachment(
String to, String subject, String text, String attachmentName, InputStream inputStream);
}
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
package com.baeldung.spring.mail;

import java.io.File;
import java.io.InputStream;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.core.io.FileSystemResource;
import org.springframework.core.io.InputStreamResource;
import org.springframework.mail.MailException;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
Expand Down Expand Up @@ -66,5 +68,26 @@ public void sendMessageWithAttachment(String to,
}
}

@Override
public void sendMessageWithInputStreamAttachment(
String to, String subject, String text, String attachmentName, InputStream attachmentStream) {

try {
MimeMessage message = emailSender.createMimeMessage();
MimeMessageHelper helper = new MimeMessageHelper(message, true);

helper.setFrom(NOREPLY_ADDRESS);
helper.setTo(to);
helper.setSubject(subject);
helper.setText(text);

// Add the attachment from InputStream
helper.addAttachment(attachmentName, new InputStreamResource(attachmentStream));

emailSender.send(message);
} catch (MessagingException e) {
e.printStackTrace();
}
}

}