本人实习生一个,最近公司有个新项目,组长说使用springmvc+mybatis做,所有的属性都写入Map中,交给mybatis操作给数据库。
比如:
数据库表:
CREATE TABLE t_user
(user_id
int(11) NOT NULL auto_increment,user_name
varchar(255) default NULL,user_age
int(11) default NULL,
PRIMARY KEY (user_id
)
)
mybatis 插入:
insert into t_user
(
usr_name,
user_age
)values(
#{userName},
#{userAfe}
)
对应的方法:
public Boolean insertUser(Map params);
然后再使用该方法时新建一个
Map params = new HashMap();
params.put("userName","xx");
params.put("userAge","xx");
之后调用方法,成功插入。
这个流程完全抛弃了User对象,也就是没有创建User类对象,这样的设计有什么好处吗?
以前在学校学的都是面向对象,不管什么,必须创建一个实体映射数据库,现在这种实现没有使用 mvc设计中的m,这样与面向对象的设计有什么区别,优缺点在那?
简单的项目,没有太多的业务逻辑,只有crud,那么不用实体代码简化一些,至于用什么框架,公司要考虑既有的团队的知识背景和场景,不一定非要讨论什么优缺点。
mybatis比hibernate轻量,简单易用。