1、指定mybatis所用日志的具体实现
<setting name="logImpl" value="STDOUT_LOGGING"/>
2、mybatis-config.xml配置文件报错
The content of element type "configuration" must match "(properties?,settings?,typeAliases?,typeHandlers?,objectFactory?,objectWrapperFactory?,reflectorFactory?,plugins?,environments?,databaseIdProvider?,mappers?)".
因为配置需要按照顺序来写
3、typeAliases类型命名
类型别名是为JAVA类型设置一个短的名字。它只和XML配置有关,存在的意义,仅在于减少类完全限定名的冗余。
3.1、第一种配置方式
<typeAliases>
<typeAlias type="com.mybatis.UserBean" alias="user" />
</typeAliases>
<select id="selectAll" resultType="com.mybatis.UserBean">
select * from user
</select>
<select id="selectAliasAll" resultType="user">
select * from user
</select>
3.2、第二种配置
<typeAliases>
<package name="com.mybatis"/>
</typeAliases>
包下的每一个bean,在没有注解的情况下,会使用bean的首字母小写的非限定类名来作为他的别名。
若有注解,则别名为其注解值。
@Alias("user")
所以这个注解,必须和type Aliases 一起使用!
3.3、MYBATIS为常见的JAVA类型内建的类型别名,都是大小写不敏感的。
4、select语句
parameterType,传入这条语句的参数类的完全限定名或者别名。可选,因为可以通过typeHandler推断出具体传入语句的参数。
resultType,注意如果是集合的情形,应该是集合可以包含的类型,而不是集合本身。
5、insert和update
useGeneratedKeys, 令mybatis使用JDBC的
6、mybatis的xml中类全名配置
如果A类是B类的内部类,配置方式:com.B$A,用$表示内外关系,而不是.
=======20231115
插入数据后返回主键id的值
keyProperty="id" keyColumn="id" useGeneratedKeys="true">
true表示插入数据后返回一个自增的主键id给对应实体类中的主键属性,keyProperty指明数据库中返回的主键id给实体类中的哪个属性。如果实体类属性与表字段不一一对应,可增加参数keyColumn。
只有insert有这几个属性。useGeneratedKeys默认false