引入依赖
<!-- mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.6</version>
</dependency>
<!-- 连数据库 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.16</version>
</dependency>
<!-- 日志 -->
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.11.1</version>
</dependency>
插入数据时获取插入数据的id
1.第一种方法:
<insert id="insertIntoUser" parameterType="com.hh.domain.User">
<!--配置插入操作后,获取插入数据的id-->
<selectKey keyProperty="id" keyColumn="id" resultType="int" order="AFTER">
select last_insert_id();
</selectKey>
insert into user (usename,password) values (#{username},#{password})
</insert>
2.第二种方法
<insert id="insertIntoUser" parameterType="com.hh.domain.User" keyProperty="id" useGeneratedKeys="true">
此处的keyProperty="id"中的id是赌赢实体类中的字段
如何解决数据库表字段和实体类字段不一样的问题
如果只是大小写的问题,因为windows环境下mysql不区分大小写,故不需要做任何处理
第一种方法: 可以起别名
id,name是数据库表中的字段,userId,userName是实体类中的字段
select id as userId,name as userName;
第二种方法: 配置查询结果的列名和实体类的属性名的对应关系
因为java严格区分大小写,故property的值一定要和实体类保持一致
<resultMap id="userMap" type="com.hh.domain.User">
<id property="userId" column="id"/>
<result property="" column="username"/>
<result property="userSex" column="sex"/>
</resultMap>
<select id="findAll" resultMap="userMap">
select * from user
</select>
通过一个idList然后查出List数据
前台传参都是:idList[]
第一种实现方法:
sql代码:
<select id="findById" resultMap="com.hh.domain.User">
select * from user where id in
<foreach collection="idsList" index="index" item="id" open="(" close=")" separator=",">
#{id}
</foreach>
</select>
Java代码:
public void findById(@RequestParam("idList[]")ArrayList<Long> idsList){
User user = new User();
user.setIdsList(idsList);
User userList = service.findById(user);
}
第二种方法:
sql代码:
<select id="findById" resultMap="com.hh.domain.User">
select * from user where id = #{id}
</select>
Java代码:
public void findById(@RequestParam("idList[]")ArrayList<Long> idsList){
User user = new User();
for (Long id : idsList) {
user.setId(id);
User userList = service.findById(user);
}
}
扫描关注下面二维码获得更多有用的资源!