总结
今天下午考试,JDBC,这个本身很简单,但是需要我们Dockerfile+Docker Compose运行,这个东西就很复杂。原来学习时没有怎么看,这一次就很懵,完全不知道怎么弄,反正环境都没有搭起来,不能运行,最后只能交了,今天学习的内容很少,就早上看了一点,下午考试考了一下午,18点多才去吃饭,晚上听其他同学的演讲,然后今天的日志就这样,等明天好好去弄一下这个docker-compose的问题。
JDBC
批处理
添加sql语句:st.addBatch(sql);
批量处理sql语句:st.executeBatch();
清除缓存: st.clearBatch();
String sql = "insert into t_user(username,pwd,email) values (?,?,?)";
PreparedStatement statement = connection.prepareStatement(sql);;
for (int i = 0; i < num; i++) {
statement.setString(1,"user"+i);
statement.setString(2,"pwd"+i);
statement.setString(3,"user"+i+"@qq.con");
statement.addBatch();
if ((i + 1) % 100 == 0) {
//批量执行
statement.executeBatch();
//清理缓存
statement.clearBatch();
}
}
if (num % 300 != 0) {
statement.executeBatch();
// 最后一次可以不清理缓存, 因为后面就直接关闭了.
// preparedStatement.clearBatch();
}
JDBCHelper.release(statement);
Idea 提取方法
Alt + Ctrl + M:提取方法
mysql
grant all privileges on *.* to jack@'localhost' identified by "jack" with grant option;
ALL PRIVILEGES 是表示所有权限,你也可以使用select、update等权限。
ON 用来指定权限针对哪些库和表。
. 中前面的号用来指定数据库名,后面的号用来指定表名。
TO 表示将权限赋予某个用户。
jack@'localhost' 表示jack用户,@后面接限制的主机,可以是IP、IP段、域名以及%,%表示任何地方。注意:这里%有的版本不包括本地,以前碰到过给某个用户设置了%允许任何地方登录,但是在本地登录不了,这个和版本有关系,遇到这个问题再加一个localhost的用户就可以了。
IDENTIFIED BY 指定用户的登录密码。
WITH GRANT OPTION 这个选项表示该用户可以将自己拥有的权限授权给别人。