当前位置: 首页 > 图文教程 > 数据库 > MYSQL > 轻松应对JSP连接MySQL数据库问题

MYSQL
mysql 常用数据库语句 小练习
MYSQL ERROR 1045 (28000): Access denied for user (using password: YES)问题的解决
mysql 字符集的系统变量说明
MySQL 在触发器里中断记录的插入或更新?
将MySQL数据库移植为PostgreSQL
mysql 操作总结 INSERT和REPLACE
linux mysql忘记密码的多种解决或Access denied for user ''root''@''localhost''
运用mysqldump 工具时需要注意的问题
mysql 优化日记
MySQL 字符串函数大全
mysql 截取指定的两个字符串之间的内容
MySQL 备份还原数据库批处理
mysql 数据库中my.ini的优化 2G内存针对站多 抗压型的设置
Mysql 数字类型转换函数
mysql 动态生成测试数据
mysql 显示SQL语句执行时间的代码
mysql 设置查询缓存
MYSQL explain 执行计划
MySQL 有输入输出参数的存储过程实例
巧用mysql提示符prompt清晰管理数据库的方法

MYSQL 中的 轻松应对JSP连接MySQL数据库问题


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 68 ::
收藏到网摘: n/a

  当您面临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();%>

 

  请作者联系本站,及时附注您的姓名。联系邮箱:edu#ruanchen.com(把#改为@)。