mybatis、Serializable、java怎么写一个返回表信息的接口,表信息两列:String的year,int的operationNum.
时间: 2024-10-15 07:11:02 浏览: 22
在MyBatis中,如果你想返回一个包含`String year`和`int operationNum`的表信息,首先你需要定义一个对应的Java对象作为结果,例如`TableColumnInfo`类:
```java
import java.io.Serializable;
public class TableColumnInfo implements Serializable {
private String year;
private int operationNum;
// 构造函数,getter和setter方法
public TableColumnInfo(String year, int operationNum) {
this.year = year;
this.operationNum = operationNum;
}
public String getYear() { return year; }
public void setYear(String year) { this.year = year; }
public int getOperationNum() { return operationNum; }
public void setOperationNum(int operationNum) { this.operationNum = operationNum; }
}
```
接下来,你需要创建一个MyBatis的Mapper接口,使用`@ResultMap`来映射查询结果:
```java
import org.apache.ibatis.annotations.*;
@Mapper
public interface TableInfoMapper {
@Select("SELECT year, operation_num FROM your_table_name")
// 使用ResultMap指定结果映射
@ResultMap("tableColumnInfoResult")
TableColumnInfo getTableColumnInfo();
}
// 创建一个ResultMap来配置结果的映射关系
<resultMap id="tableColumnInfoResult" type="TableColumnInfo">
<id property="year" column="year"/>
<result property="operationNum" column="operation_num"/>
</resultMap>
```
在这个示例中,`your_table_name`应该替换为你实际要查询的表名。
最后,在服务层可以通过`SqlSession`来调用这个接口:
```java
@Autowired
private TableInfoMapper tableInfoMapper;
public TableColumnInfo getColumnInfo() {
return tableInfoMapper.getTableColumnInfo();
}
```
阅读全文