-
Notifications
You must be signed in to change notification settings - Fork 122
Open
Labels
Description
What version of OpenRewrite are you using?
- rewrite-spring v6.8.0
- Maven/Gradle plugin v3.13.0
- rewrite-recipe-bom_ v3.1.0
How are you running OpenRewrite?
I am using the Maven plugin, and my project is a single module project.
<plugin>
<groupId>org.openrewrite.maven</groupId>
<artifactId>rewrite-maven-plugin</artifactId>
<version>6.0.5</version>
<configuration>
...
</configuration>
</plugin>What is the smallest, simplest way to reproduce the problem?
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;
import jakarta.persistence.Table;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.RequiredArgsConstructor;
import lombok.Setter;
import lombok.extern.slf4j.Slf4j;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper;
import org.springframework.stereotype.Repository;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;
import java.util.UUID;
@Slf4j
@Repository
@RequiredArgsConstructor
public class StudentDao {
private final JdbcTemplate jdbcTemplate;
public static final String FETCH_STUDENT_ID = "SELECT * FROM student WHERE STUDENT_ID = ? ";
public List<StudentEntity> fetchProcessStats(UUID uuid) {
return jdbcTemplate.query(
FETCH_STUDENT_ID,
new Object[]{uuid},
new StudentEntityRowMapper()
);
}
public static class StudentEntityRowMapper implements RowMapper<StudentEntity> {
@Override
public StudentEntity mapRow(ResultSet rs, int rowNum) throws SQLException {
StudentEntity student = new StudentEntity();
student.setStudentId(rs.getObject("STUDENT_ID", UUID.class));
student.setStudentName(rs.getString("STUDENT_NAME"));
student.setStudentAge(rs.getInt("STUDENT_AGE"));
return student;
}
}
@Entity
@AllArgsConstructor
@NoArgsConstructor
@Getter
@Setter
@Builder
@Table(name = "student")
static class StudentEntity {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "STUDENT_ID", nullable = false, updatable = false)
private UUID studentId;
@Column(name = "STUDENT_NAME", nullable = false)
private String studentName;
@Column(name = "STUDENT_AGE", nullable = false)
private Integer studentAge;
}
}What did you expect to see?
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;
import jakarta.persistence.Table;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.RequiredArgsConstructor;
import lombok.Setter;
import lombok.extern.slf4j.Slf4j;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper;
import org.springframework.stereotype.Repository;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;
import java.util.UUID;
@Slf4j
@Repository
@RequiredArgsConstructor
public class StudentDao {
private final JdbcTemplate jdbcTemplate;
public static final String FETCH_STUDENT_ID = "SELECT * FROM student WHERE STUDENT_ID = ? ";
public List<StudentEntity> fetchProcessStats(UUID uuid) {
return jdbcTemplate.query(
FETCH_STUDENT_ID,
new StudentEntityRowMapper(),
new Object[]{uuid}
);
}
public static class StudentEntityRowMapper implements RowMapper<StudentEntity> {
@Override
public StudentEntity mapRow(ResultSet rs, int rowNum) throws SQLException {
StudentEntity student = new StudentEntity();
student.setStudentId(rs.getObject("STUDENT_ID", UUID.class));
student.setStudentName(rs.getString("STUDENT_NAME"));
student.setStudentAge(rs.getInt("STUDENT_AGE"));
return student;
}
}
@Entity
@AllArgsConstructor
@NoArgsConstructor
@Getter
@Setter
@Builder
@Table(name = "student")
static class StudentEntity {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "STUDENT_ID", nullable = false, updatable = false)
private UUID studentId;
@Column(name = "STUDENT_NAME", nullable = false)
private String studentName;
@Column(name = "STUDENT_AGE", nullable = false)
private Integer studentAge;
}
}What did you see instead?
no changes made by org.openrewrite.java.spring.framework.JdbcTemplateObjectArrayArgToVarArgs
Are you interested in contributing a fix to OpenRewrite?
No
Metadata
Metadata
Assignees
Labels
Type
Projects
Status
Backlog