使用mybatis

时间:2017-03-21 09:05:23

标签: java hibernate spring-mvc mybatis ibatis

我是mybatis的新手。以前我使用过Hibernate ORM框架。现在我想用mybatis进行开发。

下面是我的mapper类,我可以在其中编写应用程序的实际查询。

public interface UserMapper {
  @Insert("INSERT into user(id,name,address) VALUES(#{uid}, #{uname}, #{uaddress})")
  void insertUser(User user);

    } 

我从前端应用程序请求获取用户信息。

以下是我的Controller ::

@RequestMapping(value = "/userdetails", method = RequestMethod.POST, headers = "Accept=application/json")
    public @ResponseBody ResponseCodeModel userInfo(@RequestBody User user)
    {
        session.save(user);//In Hibernate

    }

如果我使用Hibernate,我可以使用session.save(userObject)直接在db中保存用户对象;

但在Mybatis中,我需要在mapper查询中映射所有用户参数。

如果我的表有50个coloumn,那么我需要提到查询中的所有参数,如下面的::

 public interface UserMapper {
      @Insert("INSERT into user(id,name,address,....50 Coloumn name) VALUES(#{uid}, #{uname}, #{uaddress} ,....50 model attribute name)")
      void insertUser(User user);      
        } 

是否有更简单的方法可以使用myBatis在数据库中保留模型对象。

1 个答案:

答案 0 :(得分:1)

Mybatis是SQL Mapper,而不是ORM。那你确实要映射。

如果插入表中的所有列,则可以省略列名并按正确顺序指定值,这是常见的SQL。