java - 如何使用 XML 风格的 MyBatis-SpringBoot-MySQL 执行正确的 SQL INSERT?

标签 java spring spring-boot mybatis ibatis

我很难在 SQL 数据库中插入新数据。有人可以检查我的mapper.xml和mapper.java吗?

Actor.java POJO

@Component
public class Actor {

    private static final long serialVersionUID = 1L;

    private Integer actor_id;
    private String first_name;
    private String last_name;
    private String last_update;
    //Getters and Setters
}

ActorMapper.xml

 <insert id="insertNewActor" parameterClass="com.helios.mybatissakila.model.Actor" 
         useGeneratedKeys="true" keyColumn="actor_id" keyProperty="actor_id">
     insert into actor (first_name,last_name,last_update) 
     values (#{first_name},#{last_name},#{last_update})
 </insert>

Mapper.java方法

List <Actor> insertNewActor(Map<String, Object> actor);

RESTController 方法

@PostMapping(value="/actors", consumes = "application/json", produces = "application/json")
    public List<Actor> insertNewActor(@RequestBody Map<String, Object> actor) {
        return actorMapper.insertNewActor(actor);
    }

数据库表结构:

enter image description here

另外,请注意我是否应该在mapper.xml中使用parameterClass或parameterType?

最佳答案

首先删除不需要的@Component Actor。 然后改变mapper.java,像这样

int insertNewActor(Actor actor);

如果失败,显示错误

关于java - 如何使用 XML 风格的 MyBatis-SpringBoot-MySQL 执行正确的 SQL INSERT?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56246697/

相关文章:

java - Apache Camel Web3j 组件

java - Spring Boot 无法正常工作出现一些错误?

java - 如何配置 Spring 在实例化 POJO 时使用我的工厂

java - 我的服务在一个类中工作,但在另一个类中返回 null

java - 自动更新JTable

java - 从 URL java 读取

java - 即使在 StackOverflow 之后代码也能正常工作 - 怎么样?

java - 保存不在表 Users 中的新用户

spring-boot - 是否可以在与主应用程序不同的端口上运行 SpringFox 的 swagger 和 swagger-ui?

spring-boot - 使用 Spring Boot 创建 RabbitMQ 队列