Servlet连接mysql数据库后的基本操作心得体会

一定要按照规范来,不然出错了都很难发现。比如以下实例:
在这里插入图片描述
如果把mysql-connector-java-5.1.32.jar包放在如下图的红方框位置,就会出现这个异常java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
在这里插入图片描述
目前还不知道为啥,本来ssm项目的pom文件引用坐标就会idea下载ar包后放在那个红方框位置的,为啥基础的还识别不了呢?
还有就是,我通过测试类来检测过得,实际上测试类没问题的。
不解!
测试类如下:

import org.junit.Test;

import java.sql.*;

public class TestAll {
    /**
     * 测试testprepareStatement(),查询
     */
    @Test
    public void testPrepareStatement(){
            //mysql驱动类
            String driverClass = "com.mysql.jdbc.Driver";
            String url = "jdbc:mysql://localhost:3306/me";
            String username = "root";
            String password = "";
            //数据库连接接口
            Connection conn = null;
            //执行sql语句的接口
            PreparedStatement prst = null;
            ResultSet rs = null;
            //操作数据库返回的查询结果的接口
            try {
                //加载驱动类到虚拟机
                Class.forName ( driverClass );

                //连接数据库
                conn =  DriverManager.getConnection (url,username,password);//url地址,username,password

                String sql = "select *  from t_user where uid = 1";
                //创建语句对象
                prst = conn.prepareStatement ( sql ); //功能是执行sql语句

                rs = prst.executeQuery ( );
                //拿到查询的结果集 错误语法prst.executeQuery ( sql);应为在准备阶段已经将sql语句给了prepareStatement对象

                //操作
                while (rs.next ()){
                    //取列的值
                    System.out.print (rs.getString ( "username" )+", ");
                    System.out.println (rs.getString ( "password" ));
                }
            } catch (Exception e) {
                e.printStackTrace ();
            }finally {
                //关闭这些对象,是为了释放资源
                try {
                    if (prst != null)
                        prst.close ();
                    if (conn != null)
                        conn.close ();
                } catch (SQLException e) {
                    e.printStackTrace ();
                }
            }
    }
}

运行结果:
在这里插入图片描述
然后是去掉 那儿的mysql-connector-java-5.1.32.jar,放在WEB-INF下:
运行结果:
在这里插入图片描述
对比结果,有没有啥发现呢?

发布了101 篇原创文章 · 获赞 49 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/Austin_/article/details/102943427