mysql数据库字段加密解密

插入加密数据:insert into db_article (title) value(ENCODE('admin', 'key'));

查看加密数据: select a.*, DECODE(a.title, 'key') from db_article a where 1=1

jfinal中解密不出来,解密后为一串乱码

AES_ENCRYPT,AES_DECRYPT函数效果一样

评论区

JFinal

2020-03-16 18:32

jfinal 并未干预过这个过程,肯定是与 jfinal 无关的

我从来没这么用过,给不到建议

JFinal

2020-03-16 18:34

可以试试用纯 JDBC 来试验一下,工作正常以后再弄到 jfinal 中使用,试验方法如下:
Connection conn = DbKit.getConfig().getConnection();
以上代码先获取 JDBC 的 Connection 对象,然后用它来执行你的 sql ,大概率也是会出问题的。 然后你再调整用法, 确保 JDBC 下可以正常工作, 那么也就确保了 jfinal 下也可以工作

因为 jfinal 仅仅只是对 JDBC 做了一层极薄封装

微笑

2020-03-17 12:00

@JFinal 用纯JDBC实验后可以正常解密,放到jfinal中还是一串乱码

JFinal

2020-03-17 13:33

@微笑 单步调试,找出用纯 JDBC 与用 jfinal 之间的差别,然后改一改就可以

检查一下是不是 jdbcUrl 连接中 encoding 的配置问题

理论上来说 JDBC 与 jfinal 的执行情况是完全一样的,因为 jfinal 仅仅只是转调了 JDBC,并未做任何干预

热门反馈

扫码入社