jsp连接数据库方法(详细的)

jsp连接数据库方法(详细的),第1张

上面的给出了jsp内嵌java的最初模式,现在一般是三层结构了即MVC结构,就这个例子我来给你解释下是怎么做的,java对连接数据提供了统一的接口,各个数据库厂商根据提供的接口规范开发自己的连接方法顺序如下:1、用Class.forName()方法加载驱动:Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance()黑体部分为数据库厂商自己开发的驱动。2、定义好连接数据库的url地址,连接串String url="jdbc:microsoft:sqlserver://localhost:1433DatabaseName=pubs"黑体部分为固定写法不用理会。回到你最初的问题,如何创建数据库,这里你可以去baidu下每个数据库创建的方法,一般数据库安装的时候都有默认的数据库名,和对应的系统管理员工号和密码,DatabaseName=pubs这里说明sql serv 2000中建立了一个名字叫pubs的数据库jdbc:microsoft:sqlserver://localhost:1433固定写法唯一不同的是1433端口号,可能你在安装sql serv 2000的时候改变了该端口号为1500那么这里就应该为jdbc:microsoft:sqlserver://localhost:15003、定义好DatabaseName=pubs的登录用户名和密码 String user="sa"用户名

String password=""密码4、创建Connection对象,通过调用DriverManager.getConnection方法获得。 Connection conn= DriverManager.getConnection(url,user,password)黑体部分就是你定义好的连接串,用户名,密码,不可改变顺序。到这里为止数据库就连接上了,但是连接好了数据库还要做点什么,比如打印出来,接下看。5、通过获得的Connection对象conn创建Statement 对象stmtStatement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE)黑体部分是定义ResultSet的一些属性的,具体含义可以参考JDK的api。6、定义好你准备取得数据的sql语句,比如下面 select * from test说明想从test表中取得所有的数据,关于sql语句可以去查找相关数据库资料。 String sql="select * from test"定义好语句后,就用上一步创建好的Statement 对象stmt来执行这个sql语句,并返回一个ResultSet对象。

  ResultSet rs=stmt.executeQuery(sql)执行完这步后rs中已经取得了test表所有的数据,那么接下来要展现在网页上。7、rs.next()对你取得的记录集做一个循环直到没有值为止,rs.getString(1)代表你test表中的第一个字段rs.getString(2)代表你test中的第二个字段,如果还有更多字段可以继续rs.getString(3)..rs.getString(N) while(rs.next()) {%>

您的第一个字段内容为:<%=rs.getString(1)%>

您的第二个字段内容为:<%=rs.getString(2)%>

<%}%>8、当所有数据展现完毕,调用close()方法将所有资源关闭。 rs.close()

stmt.close()

conn.close()回顾下大致过程:加载驱动 Class.forName()定义好相关的数据,调用DriverManager.getConnection(driver,user,password)获得一个数据库连接conn通过conn创建Statement对象stmt,conn.createStatement()通过stmt执行定义好的sql语句获得数据集ResultSet rs=stmt.executeQuery(“select * from test”)通过rs.next()方法循环遍历数据集的数据,通过rs.getString(1)获得第一条数据的第一个字段内容,这里要注意的是getString是对应数据库是字符类型,如果test表的第一个字段不是字符类型则用rs.getInt(1)获得。展现完毕后关闭所有资源conn stmt rs close方法。

Class.forName("com.mysql.jdbc.Driver")

Connection conn=DriverManager.getConnection("jdbc:mysql://"+host+"/"+dbname,username,password)

Statement Stmt=conn.createStatement()

ResultSet rs=Stmt.executeQuery(sql)

这是基本的数据库 *** 作方法

导入jdbc驱动程序包其实有很多种方法,但是不同的导包方式有不同的含义,

1、给Tomcat导包(表示服务器可能要用到数据库,例如数据源),如果是MyEclipse集成Tomcat,显然是要用“右键项目 ->Properties ->Java Build Path ->右侧选项卡选择Libraries ->Add JARs...”。如果是非集成Tomcat,你必须把驱动程序包复制粘贴在Tomcat根目录“common\lib”文件夹下。

2、给Web项目导包(表示Web项目需要使用到数据库),把驱动程序包复制粘贴到“Web项目\WEB-INF\lib”文件夹下。同时也要在Tomcat的webapps\Web项目\WEB-INF\lib文件夹中粘贴驱动程序。

3、给单纯Java项目导包(表示Web项目需要使用到数据库),对着project单击右键,选择Bulid Path选择Add External Achieves再选择mysqljdbc.jar 或者将其添加到classpath中去。

用JDBC技术

创建数据库连接,分为以下几步:

1.装载并注册数据库的JDBC驱动程序

2.取得数据库连接

3.建立Statement 对象

4.准备并执行调用SQL语句

5.处理ResultSet中的记录集

6.释放资源

第一步

加载驱动程序

try{ //装载MySQL数据库驱动

Class.forName("com.mysql.jdbc.Driver")

}

catch(ClassNotFoundException e)

{

e.printStackTrace()

}

注意:在使用JDBC之前,要在文件前导入有关SQL的类即

import java.sql.*

第二步

取得数据库连接

try{

String url="jdbc:mysql://localhost:3306/student

String user="root"

String password="1234"

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

}

catch(SQLException e)

{

e.printStackTrace()

}

第三步

建立Statement 对象

try{

Statement sql=con.createStatement()

}

catch(SQLException e)

{

e.printStackTrace()

}

第四步

执行各种SQL语句

try{

ResultSet rs=sql.executeQuery(

"select * from student")

}

catch(SQLException e)

{

e.printStackTrace()

}

第五步

获取查询结果

ResultSet rs=sql.executeQuery(

"select * from student")

while(rs.next())

{

rs.getString(2)或者是rs.getString("name")

rs.getInt(3)或者是rs.getInt("age")

}

注意

只有select语句才会有结果集返回;

ResultSet对象一次只能看到一个数据行

使用next()方法走到下一数据行

获得一行数据后,ResultSet对象可以使用getXxx()方法获得字段值,将位置索引或字段名传递给get第六步

关闭创建的各个对象(后打开的先关)

rs.close()

sql.close()

con.close()Xxx方法()即可。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6101441.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-14
下一篇 2023-03-14

发表评论

登录后才能评论

评论列表(0条)

保存