開發中鏈接數據庫的方式有多中,能夠直接用jdbc鏈接,也能夠配置服務器的鏈接池.寫法也有多種,能夠直接寫在jsp頁面中,但一般都會寫個專用的類,用單態之類的設計模式把他封裝起來.但其中的基本鏈接驅動形式代碼是不變的,下面是些示例代碼,你必定將jdbc的驅動程序放到服務器的類路徑裏,而後要在數據庫裏建一個表test,有兩個字段好比爲test1,test2,能夠用下面SQL建
create table test(test1 varchar(20),test2 varchar(20)
而後向這個表寫入一條測試紀錄
那麼如今開始咱們的jsp和數據庫之旅吧。
1、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>
2、jsp鏈接Sql Server7.0/2000數據庫
testsqlserver.jsp以下:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs";
//pubs爲你的數據庫的
String user="sa";
String password="";
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>
3、jsp鏈接DB2數據庫
testdb2.jsp以下:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%Class.forName("com.ibm.db2.jdbc.app.DB2Driver ").newInstance();
String url="jdbc:db2://localhost:5000/sample";
//sample爲你的數據庫名
String user="admin";
String password="";
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>
4、jsp鏈接Informix數據庫
testinformix.jsp以下:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%Class.forName("com.informix.jdbc.IfxDriver").newInstance();
String url =
"jdbc:informix-sqli://123.45.67.89:1533/testDB:INFORMIXSERVER=myserver;
user=testuser;password=testpassword";
//testDB爲你的數據庫名
Connection conn= DriverManager.getConnection(url);
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>
5、jsp鏈接Sybase數據庫
testmysql.jsp以下:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%Class.forName("com.sybase.jdbc.SybDriver").newInstance();
String url =" jdbc:sybase:Tds:localhost:5007/tsdata";
//tsdata爲你的數據庫名
Properties sysProps = System.getProperties();
SysProps.put("user","userid");
SysProps.put("password","user_password");
Connection conn= DriverManager.getConnection(url, SysProps);
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>
6、jsp鏈接MySQL數據庫
testmysql.jsp以下:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%Class.forName("org.gjt.mm.mysql.Driver").newInstance();
String url ="jdbc:mysql://localhost/softforum?user=soft&password=soft1234&useUnicode=true&characterEncoding=8859_1"
//testDB爲你的數據庫名
Connection conn= DriverManager.getConnection(url);
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>
7、jsp鏈接PostgreSQL數據庫
testmysql.jsp以下:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%Class.forName("org.postgresql.Driver").newInstance();
String url ="jdbc:postgresql://localhost/soft"
//soft爲你的數據庫名
String user="myuser";
String password="mypassword";
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>
八.鏈接access例子
public class AccessTest {
public static void main(String args[]) {
try {
String strurl = "jdbc:odbc:MS Access Database;DBQ=d:\\books.mdb";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn = DriverManager.getConnection(strurl, "", "");
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("select * from books");
while (rs.next())
{
System.out.print(rs.getString(1) + " ");
System.out.print(rs.getString(2));
}
} catch (Exception e) {
System.out.println(e);
}
}
}