如何在JavaSpring引导中获取值而不是对象
所以我想知道如何获得存储在Mysql中的值,而不是对象名 当我运行代码时,我得到: [org.springframework.data.jpa.repository.query.AbstractJpaQuery$TupleConverter$TupleBackedMap@5ba6132b, org.springframework.data.jpa.repository.query.AbstractJpaQuery$TupleConverter$TupleBackedMap@28264619, org.springframework.data.jpa.repository.query.AbstractJpaQuery$TupleConverter$TupleBackedMap@6ab78994, org.springframework.data.jpa.repository.query.AbstractJpaQuery$TupleConverter$TupleBackedMap@50dd821f, org.springframework.data.jpa.repository.query.AbstractJpaQuery$TupleConverter$TupleBackedMap@3b89ec64, org.springframework.data.jpa.repository.query.AbstractJpaQuery$TupleConverter$TupleBackedMap@21856382, org.springframework.data.jpa.repository.query.AbstractJpaQuery$TupleConverter$TupleBackedMap@7728a50f] 代码如下:如何在JavaSpring引导中获取值而不是对象,java,mysql,spring,spring-boot,Java,Mysql,Spring,Spring Boot,所以我想知道如何获得存储在Mysql中的值,而不是对象名 当我运行代码时,我得到: [org.springframework.data.jpa.repository.query.AbstractJpaQuery$TupleConverter$TupleBackedMap@5ba6132b, org.springframework.data.jpa.repository.query.AbstractJpaQuery$TupleConverter$TupleBackedMap@28264619, o
@Data
@Entity
@Table(name="category")
@DynamicInsert
@DynamicUpdate
@NoArgsConstructor
@AllArgsConstructor
public class Category {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name="category_id", columnDefinition = "INT(11)")
private Integer Category_id;
@Column(name="name",columnDefinition = "VARCHAR(20)")
private String name;
@Column(name = "parent",columnDefinition = "int(11)")
private Integer parent;
}
这是我的分类码
package kr.co.ds.datastation.dsapi.repository;
public interface CategoryProjection {
public String getLev1();
public String getLev2();
public String getLev3();
public String getLev4();
}
这是我的CategoryProjection
code
import java.util.List;
@Repository
public interface CategoryRepository extends JpaRepository<Category, Integer> {
public static final String FIND_PROJECTS = "SELECT t1.name AS lev1, t2.name as lev2, t3.name as lev3, t4.name as lev4 FROM category AS t1 LEFT JOIN category AS t2 ON t2.parent = t1.category_id LEFT JOIN category AS t3 ON t3.parent = t2.category_id LEFT JOIN category AS t4 ON t4.parent = t3.category_id WHERE t1.name = 'ROOT'";
@Query(value = FIND_PROJECTS, nativeQuery = true)
public List<CategoryProjection> findByCategory();
}
private void mysql2() {
this.categoryRepository.findByCategory();
}
这是我的类别控制器代码
import java.util.List;
@Repository
public interface CategoryRepository extends JpaRepository<Category, Integer> {
public static final String FIND_PROJECTS = "SELECT t1.name AS lev1, t2.name as lev2, t3.name as lev3, t4.name as lev4 FROM category AS t1 LEFT JOIN category AS t2 ON t2.parent = t1.category_id LEFT JOIN category AS t3 ON t3.parent = t2.category_id LEFT JOIN category AS t4 ON t4.parent = t3.category_id WHERE t1.name = 'ROOT'";
@Query(value = FIND_PROJECTS, nativeQuery = true)
public List<CategoryProjection> findByCategory();
}
private void mysql2() {
this.categoryRepository.findByCategory();
}
这是我的应用程序代码。将以下代码添加到类别POJO类中,以使用值映射对象。此外,将getters setter添加到类中也是一个很好的实践
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
Category category = (Category) o;
if (bot.id == null || id == null) {
return false;
}
return Objects.equals(id, bot.id);
}
@Override
public int hashCode() {
return Objects.hashCode(id);
}
@Override
public String toString() {
return "{" +
"id=" + id +
", name='" + name + "'" +
", parent='" + parent + "'" +
'}';
}
你的意思是什么?通常,您应该得到一个响应为JSON
{“key”:“value”}
您想做什么?我不清楚您想要什么值。你的意图是什么