项目总结(五)ServiceImpl增删改查

@Service
public class RoleServiceImpl implements RoleService {
    
    @Resource
    private RolePOMapper mapper;

    @Override
    public int deleteByPrimaryKey(Integer roleId) {
        // TODO Auto-generated method stub
        return 0;
    }

    @Override
    public int insert(RolePO record) {
        return mapper.insert(record);
    }

    @Override
    public int insertSelective(RolePO record) {
        // TODO Auto-generated method stub
        return 0;
    }

    @Override
    public RolePO selectByPrimaryKey(Integer roleId) {
        return mapper.selectByPrimaryKey(roleId);
    }

    @Override
    public List<RolePO> selectRoles(RolePO record) {
        return mapper.queryList(record);
    }

    @Override
    public int updateByPrimaryKeySelective(RolePO record) {
        return 0;
    }

    @Override
    public int updateByPrimaryKey(RolePO record) {
        return mapper.updateByPrimaryKey(record);
    }

    @Override
    public void assign(Integer roleId, Integer[] checkMenuIds) {
        
        // 先删除原来已经分配的角色和菜单的数据
        mapper.deleteAllMenuOfRole(roleId);
        
        // 在重新插入新选择的菜单项
        if (checkMenuIds != null && checkMenuIds.length >= 1) {
            for (Integer menuId : checkMenuIds) {
                // 插入到角色和菜单中间表
                mapper.saveRoleMenu(roleId,menuId);
            }
        }
        
    }

    @Override
    public Integer getUserCountUseRole(Integer roleId) {
        return mapper.getUserCountUseRole(roleId);
    }

    /**
     * 删除角色和角色相关信息
     */
    @Override
    public void deleteRoleInfo(Integer roleId) {
        
        // 删除用户和角色中间表信息
        mapper.deleteUserRole(roleId);
        
        // 删除角色和菜单中间表信息
        mapper.deleteRoleMenu(roleId);
        
        // 删除角色信息
        mapper.deleteByPrimaryKey(roleId);
        
    }
    
}
 

SpringBoot和MybatisPlus是常用的Java开发框架,可以方便地进行数据库操作,包括增删改查操作。 对于两个表的增删改查操作,首先需要配置好MybatisPlus的相关配置,包括数据源的配置以及实体类和Mapper接口的映射关系。 在SpringBoot的主程序,我们需要使用@MapperScan注解来扫描Mapper接口所在的包路径。比如在上述代码,我们使用@MapperScan("com.example.boot.mapper")来扫描com.example.boot.mapper包下的Mapper接口。 对于两个表的增删改查操作,我们需要在Service接口定义相应的方法,并使用MybatisPlus提供的IService接口来继承。比如在上述代码,我们可以在StudentService接口定义增删改查方法。 在ServiceImpl,我们需要使用@Service注解来标识该类为Service组件,并在类上使用泛型指定Mapper接口和实体类的类型。这样就可以使用MybatisPlus提供的方法来实现对数据库的增删改查操作。 具体的代码实现可以参考下面的示例: 1. 查询数据: ```java List<Student> students = studentService.list(); ``` 2. 插入数据: ```java Student student = new Student(); student.setName("张三"); student.setAge(18); studentService.save(student); ``` 3. 更新数据: ```java Student student = studentService.getById(1L); student.setName("李四"); studentService.updateById(student); ``` 4. 删除数据: ```java studentService.removeById(1L); ``` 需要注意的是,以上只是示例代码,具体的实现还需要根据自己的业务需求进行适当的修改。同时,还需要确保数据库连接正常,并且表结构和实体类的映射关系正确。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值