java: 非法的 Unicode 转义

问题描述

BaseDao.java

/**
     * update()方法用来执行:InsertupdateDelete语句
     * @return 如果返回-1,说明返回失败,返回其他表示影响的行数
     */
    public int update(String sql, Object... args) {
          
   
        Connection connection = JdbcUtils.getConnection();
        try {
          
   
            return queryRunner.update(connection, sql, args);
        } catch (SQLException e) {
          
   
            e.printStackTrace();
        } finally {
          
   
            JdbcUtils.close(connection);
        }
        return -1;
    }

UserDaoTest.java

@Test
    public void queryUserByUsername() {
          
   
        UserDao userDao = new UserDaoImpl();
        System.out.println(userDao.queryUserByUsername("admin"));
    }

运行出现了

Error:(20, 31) java: 非法的 Unicode 转义

解决方法

(1)删除注释即可运行

/**
     * update()方法用来执行:InsertupdateDelete语句
     * @return 如果返回-1,说明返回失败,返回其他表示影响的行数
     */
com.alibaba.druid.pool.DruidDataSource info 信息: {dataSource-1} inited User{id=1, username=‘admin’, password=‘admin’, email=‘admin@atguigu.com’} Process finished with exit code 0

(2)修改注释即可运行

/**
     * updata() 方法用来执行:InsertUpdateDelete
     * @param sql
     * @param args
     * @return   如果返回-1,说明执行失败<br/>返回其他表示影响的行数
     */
com.alibaba.druid.pool.DruidDataSource info 信息: {dataSource-1} inited User{id=1, username=‘admin’, password=‘admin’, email=‘admin@atguigu.com’} Process finished with exit code 0

原因

注释信息变量与方法内变量不匹配

经验分享 程序员 微信小程序 职场和发展