JDBC连接MySql数据库


本站长承接“企业网站定制服务,有想做网站的客户可联系!站长QQ:739696033 | 微信:bing-0719

下载JDBC数据库驱动程序for mysql(比如:mysql-connector-java-5.1.22-bin.jar)

使用方法: 将此jar包复制到JDK的扩展目录中,比如C:\Program Files (x86)\Java\jdk1.8.0_60\jre\lib\ext

应用程序加载MySql的JDBC数据库驱动程序代码如下:

[cc lang=”java”]
Try{

Class.forName(“com.mysql.jdbc.Driver”);

}

Catch(Exception e){}

[/cc]
 

建立连接

使用Java.sql中DriverManager类的类方法

Connection getConnection(java.lang.String);

此方法会抛出SQLException异常。返回Connection对象。

连接代码如下:

[cc lang=”java”]
Connection con;

try{

String url=”jdbc:mysql://127.0.0.1/bcoder_db1″;

String user=”root”;

String password=””;

con=DriverManager.getConnection(url, user, password);

}

Catch(SQLException e){}

[/cc]
 

测试

首先打开mysql

net start mysql

测试写好的代码:
[cc lang=”java”]

<%@page import="java.sql.SQLException"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.Statement"%>
<%@page import="java.sql.Connection"%>
<%@ page contentType="text/html; charset=utf-8" %>



<% Connection con; Statement sql; ResultSet rs; try{ Class.forName("com.mysql.jdbc.Driver"); } catch(Exception e){} try{ String url="jdbc:mysql://127.0.0.1/bcoder_db1"; String user="root"; String password=""; con=DriverManager.getConnection(url, user, password); sql=con.createStatement(); rs=sql.executeQuery("SELECT * FROM product"); out.print("

“);
out.print(“
“);
out.print(“

“);
while(rs.next()){
out.print(“

“);
out.print(“

“);
out.print(“

“);
out.print(“

“);
out.print(“

“);
out.print(“

“);

}
out.print(“

“+”产品号”);
out.print(“
“+”名称”);
out.print(“
“+”生产日期”);
out.print(“
“+”价格”);
out.print(“
“+rs.getString(1)+” “+rs.getString(2)+” “+rs.getDate(“madeTime”)+” “+rs.getFloat(“price”)+”

“);
con.close();

}
catch(SQLException e){
out.print(e);
}

%>

[/cc]

查询记录

 

和数据库建立连接后,就可以使用JDBC提供的api操作数据库了,比如查询,修改,更新数据库表。。。。

查询步骤:

(1)向数据库发送SQL查询语句

声明Statement对象,连接对象con调用createStatement()返回Statement对象。

代码如下:
[cc lang=”java”]

Statement sql;

Try{

sql=con.createStatement();

}

catch(SQLException e){

out.print(e);

}
[/cc]

(2)处理查询结果

有了SQL语句对象,就可以调用相应方法使用sql语句。查询结果将放入到ResultSet对象中。

ResultSet rs = sql.executeQuery(“SELECT * FROM tableName”);

遍历数据行next()方法,获取字段值 getXX()方法。

 

顺序查询

我们可以通过JDBC提供的api,可以在查询数据之前获取表中的各个字段名字和个数等,这样有助于编写可复用代码。

当和数据库建立连接后,使用连接对象con调用getMetaData()方法返回一个DatabaseMetaData对象。

DatabaseMetaData medata = con.getMetaData();

medata对象再调用getColumns()方法可以将表的字段信息以行列的形式存储在一个ResultSet对象中。

ResultSet tableMessage = metadata.getColumns(null,null,”product”,null);

代码示例:

“NewFile.jsp

[cc lang=”html”]
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>




数据库名:
表名:

Mysql用户名:

mysql密码:(默认为空)



[/cc]

“inquire.jsp”

[cc lang=”java”]
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib tagdir="/WEB-INF/tags" prefix="inquire"%>





<% String database =request.getParameter("dataBaseName"); String tName=request.getParameter("tableName"); String id=request.getParameter("user"); String secret=request.getParameter("password"); %>


<%@tag import="java.sql.DatabaseMetaData"%>
<%@tag import="java.sql.DriverManager"%>
<%@tag import="java.sql.ResultSet"%>
<%@tag import="java.sql.Statement"%>
<%@tag import="java.sql.Connection"%>

<%@ tag language="java" pageEncoding="UTF-8"%>
<%@ attribute name="dataBaseName" required="true" %>
<%@ attribute name="tableName" required="true" %>
<%@ attribute name="user" required="true" %>
<%@ attribute name="password" required="false" %>

<%@ variable name-given="biao" scope="AT_END" %>
<%@ variable name-given="queryResult" scope="AT_END" %>

<% StringBuffer result=new StringBuffer(); try{ Class.forName("com.mysql.jdbc.Driver"); } catch(Exception e){ } Connection con; Statement sql; ResultSet rs; try{ result.append("

“);
String uri=”jdbc:mysql://127.0.0.1/”+dataBaseName;
con=DriverManager.getConnection(uri,user,””);
DatabaseMetaData metadata=con.getMetaData();
ResultSet rs1=metadata.getColumns(null, null,tableName,null);
int 字段个数=0; //字段个数
result.append(“
“);
while(rs1.next()){
字段个数++;
String clumnName=rs1.getString(4);
result.append(“

“);

}
result.append(“

“);

sql=con.createStatement();
rs=sql.executeQuery(“SELECT * FROM “+tableName);

while(rs.next()){
result.append(“

“);
for(int k=1;k<=字段个数;k++) result.append("

“);
result.append(“

“);
}
result.append(“

“+clumnName+”
“+rs.getString(k)+”

“);
con.close();
}
catch(SQLException e){
out.println(e);

}
//返回对象
jspContext.setAttribute(“queryResult”,new String(result));
jspContext.setAttribute(“biao”, tableName);
%>

[/cc]

站长QQ:739696033 | 微信:bing-0719:Bcoder资源网 » JDBC连接MySql数据库


扫描二维码关注微信公众号:“bcoder-cn 声明:本站内容部分来自互联网,仅供交流学习之用,请勿作商业用途,版权归原作者所有。如果有侵犯到您的权益,请提供相关证明联系本站删除,谢谢合作!
赞 (0)
分享到:更多 ()

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址