本帖最后由 群发软件 于 2017-7-2 20:29 编辑
JSP可以动态连接MySQL这个你不会不知道怎么弄吧
环境配置
将其环境变量配置好之后,下载Java 专用的连接mysql的驱动包JDBC,有人会发现在一些下载的JDBC压缩包里面发现若干文件, 比如:mysql-connector-java-gpl-5.1.34.msi的安装文件,那这个文件是干什么用的呢,它又与mysql-connector-java-5.1.34-bin.jar有什么区别?其实两个都是一样的,只不过mysql-connector-java-gpl-5.1.34.msi是把mysql-connector-java-5.1.xx-bin.jar封装在里面了,msi的安装完后会有一个文件夹,里面会有mysql-connector-java-5.1.34-bin.jar这个文件,在这里我们只需要这个mysql-connector-java-5.1.xx-bin.jar就行了。
把mysql-connector-java-x.x.x-bin.jar拷贝到Tomcat的安装bin目录D:\Tomcat 6.0\lib下(如果你安装的是msi文件,那么他可能会在MySQL的安装目录的Tools文件夹下,这个我们不建议这样用,直接下载jar文件复制过去就行),然后在classpath里面加入D:\Tomcat 6.0\lib\mysql-connector-java-x.x.x-bin.jar即可。 拷贝这一步就是为JSP连接数据库配置驱动。 如果使用的是MyEclipse上自带的tomcat则直接将jar文件复制到“项目\WebRoot\WEB-INF\lib”路径下即可。
配置这个的目的是让JavaApplication找到连接mysql的驱动。
符型的字段,字段名分别为: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();%>
- ①driverClass=”com.mysql.jdbc.Driver”
②url=”jdbc:mysql://127.0.0.1:3306/mytest”
- 2
举个例子
连接数据库查询表的相关语句:
Class.forName("com.mysql.jdbc.Driver");
Connection conn=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/mytest","root","");
Statement stmt=conn.createStatement();
ResultSet rs=stmt.executeQuery("select * from userinfo");
while(rs.next())
{
out.print("<br>用户名:"+rs.getString("username")+"密码:"+rs.getString("password"));
}
rs.close();
stmt.close();
conn.close();
END
通过JDBC-ODBC桥驱动器连接
- 1
首先设置odbc数据源,具体步骤为:
打开控制面板,”性能与维护—》管理工具—》数据源(ODBC)”,打开数据源,如图所示:
- 2
点击“系统DSN”,界面如图
- 3
点击添加,出现“创建新数据源”对话框,如图
- 4
选择MySql odbc 5.1
- 5
填写数据库信息
- 6
点击确定,反回 “ODBC 数据源管理器”对话框,系统数据源中出现新建的数据源
- 7
相应代码为
classDriver=”sun.jdbc.odbc.JdbcOdbcDriver”
url=”jdbcdbc:MySql”
举个例子
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn=DriverManager.getConnection("jdbcdbc:MySql","","");
Statement stmt=conn.createStatement();贴贴狂贴 营销软件论坛
ResultSet rs=stmt.executeQuery("select * from userinfo");
while(rs.next())贴贴狂贴 营销软件论坛
{
out.print("<br>用户名:"+rs.getString("username")+"密码:"+rs.getString("password"));
}
rs.close();
stmt.close();
conn.close();