Mybatis实现增删改查

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!--写sql的文件  -->
<!--命名空间,xml文件和dao接口对应  -->
<mapper namespace="com.cyw.dao.UserDao">
	<sql id="sqlWhere">
		<where><!--这种写法会自动去掉第一个and  -->
			<if test="username!=null and username!=''">
					and username=#{username}
			</if>
			
			<if test="pwd!=null and pwd!=''">
					and pwd=#{pwd}
			</if>
			
			<if test="id!=null">
					and id=#{id}
			</if>
			
			<if test="realname!=null and realname!=''">
					and realname like concat('%',#{realname},'%')	
			</if><!--concat是用于连接字符串的函数  -->
		</where>
	</sql>
	<!--查询列表  -->
	<select id="list" parameterType="user" resultType="user">
	<!--id要和userdao接口的方法名一致-->
		select * from 
		user where username = #{username} and pwd = #{pwd}
	</select>
	
	<!--id不需要,自增  ,所以不能整条记录直接插入,要指名变量名-->
	<insert id="create" parameterType="user">
		insert into user(username,pwd,realname)
		values(#{username},#{pwd},#{realname})
	</insert>
	
	<!--修改  -->
	<update id ="update" parameterType="user">
		update user
		<set>
			<if test="username!=null and username!=''">
				username=#{username},
			</if>
			<if test="pwd!=null and pwd!=''">
				pwd=#{pwd},
			</if>
			<if test="realname!=null and realname!=''">
				realname = #{realname},	
			</if>
		</set>
		where id=#{id}
		<!-- set
		username = #{username},pwd=#{pwd}
		where id=#{id} -->
	</update>
	
	<delete id="delete" parameterType="integer">
		delete from user where id = #{id}
	</delete>
	
	<!--批量操作  -->
	<update id="updateBatch" parameterType="List">
		update user set pwd='123' where id in
		<foreach item="item" index="index" collection="list" open="("
			separator="," close=")">
			#{item}
		</foreach>
	</update>
</mapper>

在UserDao和UserService中写相应的方法

UserServiceImpl中实现接口

package com.cyw.service;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.cyw.dao.UserDao;
import com.cyw.model.User;

@Service
public class UserServiceImpl implements UserService{

	@Autowired
	//用于根据类型实例化,不用new
	private UserDao userDao;
	
	@Override
	public List<User> list(User user) {
		return userDao.list(user);
	}
	
	@Override
	public void create(User user) {
		userDao.create(user);
	}
	
	@Override
	public void update(User user) {
		userDao.update(user);
	}
	
	@Override
	public void delete(Integer id) {
		userDao.delete(id);
	}
	
	@Override
	public void updateBatch(List<Integer> list) {
		userDao.updateBatch(list);	
	}
}

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值