[转帖]教你轻松应对JSP连接MySQL数据库问题_MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 1977 | 回复: 0   主题: [转帖]教你轻松应对JSP连接MySQL数据库问题        下一篇 
felix
注册用户
等级:新兵
经验:6
发帖:56
精华:0
注册:2011-7-22
状态:离线
发送短消息息给felix 加好友    发送短消息息给felix 发消息
发表于: IP:您无权察看 2014-12-11 9:27:17 | [全部帖] [楼主帖] 楼主

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


--转自 北京联动北方科技有限公司




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论