一.问题解决
mysql和navicat的下载和配置中规中矩,没有什么问题,在执行Testjdbc类的过程中,初始化驱动出了点问题,控制台报错如下:
Client does not support authentication protocol requested by server
这其实是很常见的应用权限问题,因为下载的mysql的版本太过前卫,在安全权限方面的到了进一步的更新,导致与服务器不太兼容,在万能的csdn上有相应的解决办法
在cmd中登陆MySQL,输入这句flush privileges;至此,初始化驱动和与数据库的连接等都正常完成,再进一步完成与数据库的交互操作
在数据库demo中之间新建表,navicat可以自动生成相关数据
这里引用的是数据库课程上的一个实例表,再进一步创建执行静态SQL语句的statement实例对象,执行java代码,代码和教材上大同小异,这里也给出展示:
try {
Class.forName("com.mysql.jdbc.Driver");
Connection c = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/demo?characterEncoding=UTF-8",
"root", "123456");
Statement s = c.createStatement();
// 查询professioninfor表中的所有数据
String sql = "SELECT * FROM professioninformation";
ResultSet rs = s.executeQuery(sql);
// 输出查询结果
while (rs.next()) {
String id = rs.getString("PID");
String name = rs.getString("PName");
System.out.println("PID: " + id + " PName: " + name );
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
结果展示如下:
二.反馈
在作业的最后,使用jsp页面对数据表结果进行展示,这一块我被折磨的心力憔悴,一直都是显示404
在以上部分可以证明代码部分是没有问题的,再考虑到端口占用问题,我运行了之前的jsp页面都可以正常运行,所以应该也不是这块的问题,参考了一些chartgpt的回答和控制台日志信息,依次操作也没有效果,因为之前一直都是按教材上的例子和知识按部就班的操作,很少参考到how2j上的网页教材,这一块的404和上次web.xml配置失败出现404可能也是同一个问题,只要是涉及到了动态交互这种jsp显示,就很有可能报错,在后续的时间里我会按照网站教材顺藤摸瓜地把配置或者一些操作重新再走一遍流程,看看是哪一个步骤出了问题