Springboot进行crud的记录 java.sql.SQLNonTransientConnectionException: CLIENT_PLUGIN_AUTH is required

备注:

1、ApiOperation的使用

@ApiOperation不是spring自带的注解是swagger里的
com.wordnik.swagger.annotations.ApiOperation;

@ApiOperation和@ApiParam为添加的API相关注解,个参数说明如下:
@ApiOperation(value = “接口说明”, httpMethod = “接口请求方式”, response = “接口返回参数类型”, notes = “接口发布说明”;其他参数可参考源码;
@ApiParam(required = “是否必须参数”, name = “参数名称”, value = “参数具体描述”

实际项目中非常需要写文档,提高Java服务端和Web前端以及移动端的对接效率。

Swagger是当前最好用的Restful API文档生成的开源项目,通过swagger-spring项目

实现了与SpingMVC框架的无缝集成功能,方便生成spring restful风格的接口文档,

详情参阅:https://blog.csdn.net/fansunion/article/details/51923720

2、JdbcTemplate的基本使用方法

JdbcTemplate是Spring对JDBC的封装,目的是使JDBC更加易于使用。JdbcTemplate是Spring的一部分。JdbcTemplate处理了资源的建立和释放。他帮助我们避免一些常见的错误,比如忘了总要关闭连接。他运行核心的JDBC工作流,如Statement的建立和执行,而我们只需要提供SQL语句和提取结果。

在JdbcTemplate中执行SQL语句的方法大致分为3类:

  1. execute:可以执行所有SQL语句,一般用于执行DDL语句。
  2. update:用于执行INSERTUPDATEDELETE等DML语句。
  3. queryXxx:用于DQL数据查询语句。
 
 private JdbcTemplate jdbcTemplate;
//创建JdbcTemplate对象,方便执行SQL语句

更多详情参阅:https://blog.csdn.net/weixin_40001125/article/details/88538576

3、使用KeyHolder 获取Spring JdbcTemplate插入记录ID

使用Spring JdbcTemplate插入数据之后,如果需要获取插入之后的ID,代码如下:

 public NamedParameterJdbcTemplate namedParameterJdbcTemplate;
    
    public void insert(){
            String insertSql = "insert into user(name,age) values (:name,:age)";
            User user = new User();
            user.setName("test");
            user.setAget(18);
            
            KeyHolder keyHolder = new GeneratedKeyHolder();
            int insertResult = namedParameterJdbcTemplate.update(insertSql, new BeanPropertySqlParameterSource(user), keyHolder);
            int userId = keyHolder.getKey().longValue();
   }

报错:

1、出现 java.sql.SQLNonTransientConnectionException: CLIENT_PLUGIN_AUTH is required 这个错误

百度了很多,都说是jdbc数据库驱动版本太高,降低就好了,后来自己排查,发现问题确实出在版本,解决方案:从仓库复制低版本的引入;

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.37</version>
    <scope>runtime</scope>
</dependency>

猜你喜欢

转载自www.cnblogs.com/jidushishouya/p/12336656.html