要正确的使用这段代码,你需要首先在MySQL数据库里创建一username表,表里面创建两个字符型的字段,字段名分别为:uid,pwd,然后插入几条测试数据。
以下用两种方式来实现JSP连接MySql数据库。
第一种方式,用JSP实现。
<%@ page contentType="text/htmlcharset=gb2312" language="java"
import="java.sql.*"%>
<%
//**************************************
********* 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")+"
")
}
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 驱动
* 该方法取得连接所需各种参数,组成连接字符串,然后再建立连接
* serverdbname,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文件源代码如下:
<%@ page contentType="text/htmlcharset=gb2312" language="java"
import="java.sql.*" %>
<%
//以下几项请自行修改
String server="localhost" //MYSQL 服务器的地址
String dbname="test" //MYSQL 数据库的名字
String user="root" //MYSQL 数据库的登录用户名
String pass="chfanwsp" //MYSQL 数据库的登录密码
String port="3306" //SQL Server 服务器的端口号,默认为1433
Connection 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")+"
")
}
//rs.close()
//stmt.close()
//conn.close()
DBConn.close()
%>
在index.jsp中输入如下代码,并配置相应mySQL数据库数据<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ page import="java.sql.*" %>
<body>
<%
String driver = "com.mysql.jdbc.Driver"
// URL指向要访问的数据库名test1
String url = "jdbc:mysql://127.0.0.1:3306/test"
// MySQL配置时的用户名
String user = "root"
// Java连接MySQL配置时的密码
String password = "111"
try {
// 1 加载驱动程序
Class.forName(driver)
// 2 连接数据库
Connection conn = DriverManager.getConnection(url, user, password)
// 3 用来执行SQL语句
Statement statement = conn.createStatement()
// 要执行的SQL语句
String sql = "select * from login"
ResultSet rs = statement.executeQuery(sql)
String name = null
String mima=null
while (rs.next()) {
name = rs.getString("userName")
mima = rs.getString("passWord")
out.println(name+"\t"+mima)
}
rs.close()
conn.close()
} catch (ClassNotFoundException e) {
System.out.println("Sorry,can`t find the Driver!")
e.printStackTrace()
} catch (SQLException e) {
e.printStackTrace()
} catch (Exception e) {
e.printStackTrace()
}
%>
</body>
12,这样就运行成功了,对于出现8080端口号被占用,可以采用如下的方法进行删除对应的进程。
在命令提示符下,输入netstat -aon | findstr 8080
找到对应的进程的PID,假设是7659 再输入如下的命令
taskkill /pid 7659 /F
即可删除对应的进程。
一. 数据库的连接和操作笔记:1.初始化连接字符串
2. 发送请求连接
3.如果需要对数据库进行操作,如查询,添加,删除,修改等,则发送数据库操作请 求,成功就返回结果,不成功操作失败
4. 不进行操作就关闭数据库操作,以及关闭数据库发送请求
二.配置环境
”工欲善其事必先利其器“ 在配置之前必须准备好几个必要的文件java 的jdk(我用的是1.5),Tomcat(我的是5.5) ,mysql(5.0),jdbc(mysql-connector-java-3.1.14.zip) 的驱动,当然还有Dreamweaver 等等必要工具。
第一件事情:安装jdk 1.5版本,安装tomcat,mysql,解压jdbc到包(官方网站有下载,注册一个就行)
第二件事情:配置jdk,配置tomcat,jdbc
jdbc的配置:我的解压目录是 I:\mysql-connector-java-3.1.14 里面可以看到一个mysql-connector-java-3.1.14-bin.jar 这个jar 的文件。右键打开电脑属性-----高级---环境变量---找到系统变量。。点击CLASSPATH,进行”编辑“ 加入I:\mysql-connector-java-3.1.14\mysql-connector-java-3.1.14-bin.jar 这个路径去,这里说明的我是盘式i盘,jdbc可以随便解压到那个盘都行,指定路径就是。
第二步:jdbc解压包下 mysql-connector-java-3.1.14-bin.jar 这个文件放入到Tomcat安装目录下
Tomcat 5.5\common\lib
Tomcat 5.5\shared\lib
这两个文件夹里面。
基本上的工作就完成了。呵呵(当然这个要看网上的资料,这里要自己重新写一次 唉好苦啊,没得抄)
基本工作准备好,找一个mysql 数据库的界面操作 GUI软件 名字为: navicat(这个很好用)打开mysql,测试一下自己的mysql 可不可以连通,可以的话那么就可以新建一个数据库test,一个表为mytest,字段是id和myname(这个随便也行)
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)