insert元素,这个标签还有如下属性:
1,id:命名空间中的唯一标志符,可用来代表这个语句。
2,parameterType:即将传入的语句参数的完全限定类名或者别名
3,flushCash:默认值为true,任何时候只要语句被调用都会清空一级缓存和二级缓存。
4,statementType:对于STATEMENT,PREPARED,CALLABLE,mybatis会分别使用对应的statement,PreparedStatement,CallableStatement,默认值为PREPARED。
5,userGenerateKeys:默认值为false,,如果设置为true,mybatis会使用JDBC的getGeneratedKeys方法来去除由数据库内部生成的主键。
6,KeyProperty:Mybatis通过getGeneratedKeys获取主键值后将要赋值的属性名。
为了防止类型错误,对于一些特殊类型数据,建议制动具体的jdbcType值,例如headImg制定为BLOB类型,createTime制定TIMESTAMP类型。
使用JDBC方式返回主键的值:<insert id="insert" useGeneratedKeys="true" keyProperty="id"> 这里mybatis会调用JDBC的getGeneratedKeys方法来取出主键,并且赋值给keyProperty配置的id属性。