您的位置: 首页 > 软件教程 > JSP教程专题 > 教你轻松应对JSP连接MySQL数据库问题

教你轻松应对JSP连接MySQL数据库问题

8.1分
出处:网络 时间:2011-07-05

您可能感兴趣的话题: JSP  

核心提示:当您面临JSP连接MySQL数据库问题,你首先需要在MySQL数据库里创建一username表,表里面创建两个字符型的字段

  当您面临JSP连接MySQL数据库问题,你首先需要在MySQL数据库里创建一username表,表里面创建两个字符型的字段,字段名分别为:uid,pwd,然后插入几条测试数据。

  以下用两种方式来实现JSP连接MySql数据库

  第一种方式,用JSP实现:

  <%@ page contentType="text/html;
  charset=gb2312" language="java"
  import="java.sql.*"%>
  <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  <%//*******************************
  ****************
  JDBC_ODBC连接MySql数据库,不需要设置数据源***********
  **********************/
  //********** 数据库连接代码 开始 ******/
  //以下几项请自行修改String server="localhost";
  //MYSQL 服务器的地址String dbname="test";
  //MYSQL 数据库的名字String user="root";
  //MYSQL 数据库的登录用户名String pass="chfanwsp";
  //MYSQL 数据库的登录密码String port="3306";
  //SQL Server 服务器的端口号,
  默认为1433//数据库连接字符串
  String url ="jdbc:mysql://"+server+":"+port+"/"+dbname+"?
  user="+user+"&passWord="+pass+"&useUnicode
  =true&characterEncoding=GB2312";
  //加载驱动程序Class.forName("org.gjt.mm.mysql.Driver").newInstance();
  //建立连接Connection conn= DriverManager.getConnection(url);
  //创建语句对象Statement stmt=conn.createStatement
  (ResultSet.TYPE_SCROLL_SENSITIVE,
  ResultSet.CONCUR_UPDATABLE);
  // **** 数据库连接代码 结束 ******* String sql="select * from username";
  ResultSet rs=stmt.executeQuery(sql);
  //rs.first();while(rs.next()){out.print("用户名:");
  out.print(rs.getString("uid")+" 密码:");
  out.println(rs.getString("pwd")+"<br>");}
  rs.close();stmt.close();conn.close();%>

  第二种方式,用JavaBean来实现:

  DBConnMySql.java编译以后的Class文件应该放在Web-INF\classes\conn目录下。

  package conn; //导入包import java.sql.*;
  //导入数据库操作的类public class DBConnMySql
  //构造方法,初始化{private Connection conn;
  //连接对象private Statement stmt;
  //语句对象private ResultSet rs;
  //结果集对象private String MySqldriver;
  //MYSQL Server驱动程序字符串private String MySqlURL;
  //MYSQL Server连接字符串//*********************************
  用 org.gjt.mm.mysql.Driver 驱动
  * 该方法取得连接所需各种参数,组成连接字符串,
  然后再建立连接* server;dbname,user,pass,port
  分别表示MYSQL 服务器的地址,
  * 数据库,用户名,密码,端口
  **********************************/
  public Connection getConnToMySql
  (String server,String dbname,String user,String pass,String port)
  {//MYSQl驱动程序MySqldriver = "org.gjt.mm.mysql.Driver";
  MySqlURL = "jdbc:mysql://";
  //连接字符串一部分try{//完整的连接字符串MySqlURL
  =MySqlURL+server+":"+port+"/"+dbname+"?user=
  "+user+"&password="+pass+"&useUnicode
  =true&characterEncoding=GB2312";
  Class.forName(MySqldriver);conn
  = DriverManager.getConnection(MySqlURL);}
  catch(Exception e){System.out.println
  ("操作数据库出错,请仔细检查");
  //System.err.println(e.getMessage());}return conn;}
  //关闭数据库连接public void close(){try{//rs.close();
  //stmt.close();conn.close();}catch(SQLException
  sqlexception){sqlexception.printStackTrace();}}}

  这个文件只是实现了数据库的连接,下面再写一个测试文件,就是用SQL语句从数据库里查询出记录,以验证我们数据库的连接是否成功。

  connmysql.jsp文件源代码如下:

  <meta http-equiv="Content-Type" content="text/html;
  charset=gb2312"><%@ page contentType="text/html;
  charset=gb2312" language="java" import="java.sql.*" %>
  <jsp:useBean id="DBConn" scope="page" class="conn.DBConnMySql"/>
  <% //以下几项请自行修改String server="localhost";
  //MYSQL 服务器的地址String dbname="test";
  //MYSQL 数据库的名字String user="root";
  //MYSQL 数据库的登录用户名String pass="chfanwsp";
  //MYSQL 数据库的登录密码String port="3306";
  //SQL Server 服务器的端口号,默认为1433Connection
  conn=DBConn.getConnToMySql
  (server,dbname,user,pass,port);
  Statement stmt=conn.createStatement
  (ResultSet.TYPE_SCROLL_INSENSITIVE,
  ResultSet.CONCUR_READ_ONLY);
  String sql="select * from username";
  String sql1="insert into username (uid,pwd) values
  ('梦想年华','梦想年华')";stmt.executeUpdate(sql1);
  ResultSet rs=stmt.executeQuery(sql);while(rs.next())
  {out.print("用户名:");out.print(rs.getString("uid")+" 密码:");
  out.println(rs.getString("pwd")+"<br>");}
  //rs.close();//stmt.close();//conn.close();DBConn.close();%>

网友评论
多特网友 2013-06-26 09:48:35 回复
我正好用到这方面的知识,而且似乎有用
多特网友 2012-03-31 16:47:12 回复
最近转行写JSP,和PHP很不一样。一边学一边写吧
多特网友 2012-03-31 16:47:12 回复
最近转行写JSP,和PHP很不一样。一边学一边写吧
多特网友 2013-06-26 09:48:35 回复
我正好用到这方面的知识,而且似乎有用
精品软件课程
更多 >
Adobe Flash,是Macromedi... [详细]
Dreamweaver是网页制作和管理的所见... [详细]
MySQL是一个小型关系型数据库管理系统,被... [详细]
PHP是一种 HTML 内嵌式的语言,是一种... [详细]
HTML的中文叫做“超文本标记语言”。是用来... [详细]
Dreamweaver是网页制作和管理的所见... [详细]