这里以验证登陆用户合法性来说明servlet中怎么连接、操作数据库。
首先连接不同的数据库之前要把相应的数据库驱动包引入项目当中。
这里我们以连接Orcale为例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 | Connection ct=null; ResultSet rs=null; PreparedStatement ps=null; try { //1加载驱动 Class.forName("oracle.jdbc.driver.OracleDriver"); //2.得到连接 ct=DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:ORCLLPQ","scott","tiger"); //3.创建PreparedSatement ps=ct.prepareStatement("select * from users where id=? andpasswd=?"); //给? 赋值 ps.setObject(1, id); ps.setObject(2, password); //4.执行操作 rs=ps.executeQuery(); //5.根据结果做处理 if(rs.next()){ //说明该用户合法 request.getRequestDispatcher("/MainFrame").forward(request, response); }else{ request.getRequestDispatcher("/LoginServlet").forward(request, response); } } catch (Exceptione) { e.printStackTrace(); // TODO: handle exception }finally{ //关闭资源 if(rs!=null){ try { rs.close(); } catch(SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } rs=null; } if(ps!=null){ try { ps.close(); } catch(SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } ps=null; } if(ct!=null){ try { ct.close(); }catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } ct=null; } } |
注意细节:
1.确定是否已经导入数据库引导驱动包。
2.数据库地址、用户名、密码是不是正确。
3.使用完数据库连接后一定要记得关闭连接。
除非注明,Coder文章均为原创,转载请以链接形式标明本文地址