JSP程序设计题,使用JDBC纯Java驱动链接SQL2008数据库.

2024-12-21 15:55:49
推荐回答(1个)
回答1:

你这个分不好拿,大概说写方法!1.连接数据库;2.验证用户;3.读取传品表单数据;

1.连接mssql数据库!
package gprs;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;


public class DBManager {
private String driver="sun.jdbc.odbc.JdbcOdbcDriver";
private String url="jdbc:odbc:://loacalhost/webDB?useUnicode=true&characterEncoding=gb2312";
private String username="sa";
private String password="sa123";
public Connection connection =null;
private static DBManager dbManager=null;
private DBManager()
{
try
{
Class.forName(driver);
connection=DriverManager.getConnection(url, username, password);
} catch (ClassNotFoundException e) {
System.out.println("1");
} catch (SQLException e) {
System.out.println("2");
}

}
public static DBManager getDBManager()
{
if (null==dbManager) {
dbManager=new DBManager();
}
return dbManager;
}
}

2.验证用户的jsp

<%@ page contentType="text/html;charset=utf-8" %>
<%@ page import="java.util.*" %>
<%@ page import="gprs.DBManager"%>
<%@page import="java.sql.*" %>


 
   method="post">
<%
    request.setCharacterEncoding("GBK");
    String user_name=request.getParameter("user_name");
    session.setAttribute("user_name",user_name);
String user_password=request.getParameter("user_password");
 session.setAttribute("user_password",user_password);
 String sql="";

     try{
 
   
   Connection conn = DBManager.getDBManager().connection;
   PreparedStatement ps=conn.prepareStatement(sql);  
  
 sql = "select * from tab_user where USER_NAME='" + user_name
              + "' and USER_PASSWORD = '" + user_password + "'"; 
   ResultSet rs=ps.executeQuery(sql);
   

  if(rs.next())
{
  if(user_name.equals("admin"))
  {
  response.sendRedirect("user_frame.jsp");   
  return;
  }
  else{
      response.sendRedirect("frame.jsp") ;   
      return;
  }
}
else
{
     response.sendRedirect("login_error.jsp") ;

  //   request.getRequestDispather("login_error.jsp".forward(request,response));
     return;
}
 
   }
   catch(Exception ex){
      // out.print("出现例外,信息是:"+ex.getMessage());
      out.print("请重新登录,如果还是此页面,请联系管理员!");
    ex.printStackTrace();

   }
 
 %>