检验身份证号的唯一性

这是一个关于使用Java实现身份证号码唯一性的验证流程。在Controller中,通过HttpServletRequest获取身份证号,然后调用Service的方法进行验证。Service层进一步调用DAO层,利用Mybatis查询数据库中是否已存在该身份证号。DAO层通过执行SQL查询语句来计算匹配的记录数,如果为0则表示身份证号唯一。整个过程涉及参数校验、数据库操作和响应返回。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

检验身份证号的唯一性

  • controller
//检验身份证号的唯一性
protected void card(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        boolean success = false;
        //1.收集参数
        String card = request.getParameter("card");
        //2.调用逻辑层方法
        if (Validator.isNotEmpty(card) && card.trim().length() == 18) {
            success = personnelService.queryByCard(card);
        }
        //3.返回响应
        PrintWriter writer = response.getWriter();
        //只支持数组和字符串
        writer.write(success + "");
        writer.flush();
        writer.close();
    }
  • service
//检验身份证号的唯一性
boolean queryByCard(String card);
    @Override
    //检验身份证号的唯一性
    public boolean queryByCard(String card) {
        return personnelDao.queryByCard(card) == 0;
    }
  • dao
//检验身份证号的唯一性
int queryByCard(String card);
    //检验身份证号的唯一性
    public int queryByCard(String card) {
        SqlSession session = MybatisUtils.openSession(true);
        int count = session.selectOne("personnel.queryByCard", card);
        session.close();
        return count;
    }
  • xml
  <!--检验身份证号的唯一性,0:没有,1:有-->
    <select id="queryByCard" parameterType="string" resultType="int">
        select count(1)
        from rms_personnel
        where card = #{card}
    </select>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值