java数据库连接

现在有好多初学jsp的网友经常会问数据库怎么连接啊,怎么老出错啊?所以我集中的在这写篇文章供大家参考,其实这种把数据库逻辑全部放在jsp里未必是好的做法,但是有利于初学者学习,所以我就这样做了,当大家学到一定程度的时候,可以考虑用MVC的模式开发。在练习这些代码的时候,你一定将jdbc的驱动程序放到服务器的类路径里,然后要在数据库里建一个表test,有两个字段比如为test1,test2,可以用下面SQL建
create table test(test1 varchar(20),test2 varchar(20)
然后向这个表写入一条测试纪录
那么现在开始我们的jsp和数据库之旅吧。
一、jsp连接Oracle8/8i/9i数据库(用thin模式)
testoracle.jsp如下:
<%@ page contentType="text/html;charset=gb2312"%> 
<%@ page import="java.sql.*"%> 
<html> 
<body> 
<%Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); 
String url
="jdbc:oracle:thin:@localhost:1521:orcl"
//orcl为你的数据库的SID 
String user="scott"
String password
="tiger"
Connection conn
= DriverManager.getConnection(url,user,password); 
Statement stmt
=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); 
String sql
="select * from test"
ResultSet rs
=stmt.executeQuery(sql); 
while(rs.next()) {%> 
您的第一个字段内容为:
<%=rs.getString(1)%> 
您的第二个字段内容为:
<%=rs.getString(2)%> 
<%}
%> 
<%out.print("数据库操作成功,恭喜你");%> 
<%rs.close(); 
stmt.close(); 
conn.close(); 
%> 
</body> 
</html> 
二、jsp连接Sql Server7.0/2000数据库
testsqlserver.jsp如下:
 1<%@ page contentType="text/html;charset=gb2312"%> 
 2<%@ page import="java.sql.*"%> 
 3<html> 
 4<body> 
 5<%Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); 
 6String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs"
 7//pubs为你的数据库的 
 8String user="sa"
 9String password=""
10Connection conn= DriverManager.getConnection(url,user,password); 
11Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); 
12String sql="select * from test"
13ResultSet rs=stmt.executeQuery(sql); 
14while(rs.next()) {%> 
15您的第一个字段内容为:<%=rs.getString(1)%> 
16您的第二个字段内容为:<%=rs.getString(2)%> 
17<%}
%> 
18<%out.print("数据库操作成功,恭喜你");%> 
19<%rs.close(); 
20stmt.close(); 
21conn.close(); 
22%> 
23</body> 
24</html> 

三、jsp连接DB2数据库
testdb2.jsp如下:
 1<%@ page contentType="text/html;charset=gb2312"%> 
 2<%@ page import="java.sql.*"%> 
 3<html> 
 4<body> 
 5<%Class.forName("com.ibm.db2.jdbc.app.DB2Driver ").newInstance(); 
 6String url="jdbc:db2://localhost:5000/sample"
 7//sample为你的数据库名 
 8String user="admin"
 9String password=""
10Connection conn= DriverManager.getConnection(url,user,password); 
11Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); 
12String sql="select * from test"
13ResultSet rs=stmt.executeQuery(sql); 
14while(rs.next()) {%> 
15您的第一个字段内容为:<%=rs.getString(1)%> 
16您的第二个字段内容为:<%=rs.getString(2)%> 
17<%}
%> 
18<%out.print("数据库操作成功,恭喜你");%> 
19<%rs.close(); 
20stmt.close(); 
21conn.close(); 
22%> 
23</body> 
24</html> 
25
四、jsp连接Informix数据库
testinformix.jsp如下:
 1<%@ page contentType="text/html;charset=gb2312"%> 
 2<%@ page import="java.sql.*"%> 
 3<html> 
 4<body> 
 5<%Class.forName("com.informix.jdbc.IfxDriver").newInstance(); 
 6String url = 
 7"jdbc:informix-sqli://123.45.67.89:1533/testDB:INFORMIXSERVER=myserver; 
 8user=testuser;password=testpassword"
 9//testDB为你的数据库名 
10Connection conn= DriverManager.getConnection(url); 
11Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); 
12String sql="select * from test"
13ResultSet rs=stmt.executeQuery(sql); 
14while(rs.next()) {%> 
15您的第一个字段内容为:<%=rs.getString(1)%> 
16您的第二个字段内容为:<%=rs.getString(2)%> 
17<%}
%> 
18<%out.print("数据库操作成功,恭喜你");%> 
19<%rs.close(); 
20stmt.close(); 
21conn.close(); 
22%> 
23</body> 
24</html> 
25
五、jsp连接Sybase数据库
testmysql.jsp如下:
 1<%@ page contentType="text/html;charset=gb2312"%> 
 2<%@ page import="java.sql.*"%> 
 3<html> 
 4<body> 
 5<%Class.forName("com.sybase.jdbc.SybDriver").newInstance(); 
 6String url =" jdbc:sybase:Tds:localhost:5007/tsdata"
 7//tsdata为你的数据库名 
 8Properties sysProps = System.getProperties(); 
 9SysProps.put("user","userid"); 
10SysProps.put("password","user_password"); 
11Connection conn= DriverManager.getConnection(url, SysProps); 
12Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); 
13String sql="select * from test"
14ResultSet rs=stmt.executeQuery(sql); 
15while(rs.next()) {%> 
16您的第一个字段内容为:<%=rs.getString(1)%> 
17您的第二个字段内容为:<%=rs.getString(2)%> 
18<%}
%> 
19<%out.print("数据库操作成功,恭喜你");%> 
20<%rs.close(); 
21stmt.close(); 
22conn.close(); 
23%> 
24</body> 
25</html> 
26
六、jsp连接MySQL数据库
testmysql.jsp如下:
 1<%@ page contentType="text/html;charset=gb2312"%> 
 2<%@ page import="java.sql.*"%> 
 3<html> 
 4<body> 
 5<%Class.forName("org.gjt.mm.mysql.Driver").newInstance(); 
 6String url ="jdbc:mysql://localhost/softforum?user=soft&password=soft1234&useUnicode=true&characterEncoding=8859_1" 
 7//testDB为你的数据库名 
 8Connection conn= DriverManager.getConnection(url); 
 9Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); 
10String sql="select * from test"
11ResultSet rs=stmt.executeQuery(sql); 
12while(rs.next()) {%> 
13您的第一个字段内容为:<%=rs.getString(1)%> 
14您的第二个字段内容为:<%=rs.getString(2)%> 
15<%}
%> 
16<%out.print("数据库操作成功,恭喜你");%> 
17<%rs.close(); 
18stmt.close(); 
19conn.close(); 
20%> 
21</body> 
22</html> 
23
七、jsp连接PostgreSQL数据库
testmysql.jsp如下:
 1<%@ page contentType="text/html;charset=gb2312"%> 
 2<%@ page import="java.sql.*"%> 
 3<html> 
 4<body> 
 5<%Class.forName("org.postgresql.Driver").newInstance(); 
 6String url ="jdbc:postgresql://localhost/soft" 
 7//soft为你的数据库名 
 8String user="myuser"
 9String password="mypassword"
10Connection conn= DriverManager.getConnection(url,user,password); 
11Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); 
12String sql="select * from test"
13ResultSet rs=stmt.executeQuery(sql); 
14while(rs.next()) {%> 
15您的第一个字段内容为:<%=rs.getString(1)%> 
16您的第二个字段内容为:<%=rs.getString(2)%> 
17<%}
%> 
18<%out.print("数据库操作成功,恭喜你");%> 
19<%rs.close(); 
20stmt.close(); 
21conn.close(); 
22%> 
23</body> 
24</html> 
25
例:
 1import java.sql.*;
 2public class dbaccess{
 3public static void main(String args[]) throws Exception{
 4    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
 5    String dburl ="jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=Mobile.mdb";//此为NO-DSN方式
 6    //String dburl ="jdbc:odbc:odbcName";//此为ODBC连接方式
 7    Connection conn=DriverManager.getConnection(dburl);
 8    Statement stmt=conn.createStatement();
 9    ResultSet rs=stmt.executeQuery("select Top 20 * from MobileSection");
10    System.out.println("号段 地区 类型 省份 区号");
11    while(rs.next()){
12        System.out.println(rs.getString(1)+" "+rs.getString(2)+" "+rs.getString(3)+" "+rs.getString(4)+" "+rs.getString(5));
13        }

14    rs.close();
15    stmt.close();
16    conn.close();
17    }

18}

19
原文地址:https://www.cnblogs.com/xuefuwu/p/913643.html