jsp連接資料庫的代碼
❶ 怎麼在myeclipse中JSP文件里連接資料庫
代碼功能:實現jsp文件連接資料庫,這是介面的代碼
代碼使用:以下代碼是連接Mysql資料庫的介面程序。將他作為一個.java文件或者加入到需要調用資料庫的jsp文件中作為一部分都可以用,一定先寫上介面,在寫後面的資料庫操作,最後記得關閉資料庫。
源代碼:
String url="jdbc:mysql://localhost:3306/lab?user=root&password=root&useUnicode=true&characterEncoding=GB2312";//連接相應的mysql伺服器
Class.forName("com.mysql.jdbc.Driver").newInstance();//載入相應的驅動程序
Connection con = DriverManager.getConnection(url);
String sql =
"insert message (name,email,phone,department,subject,message,time,vision)"
+"values('"+name+"','"+email+"','"+phone+"','"+department+"','"+subject+"','"+message+"','"+time+"','"+vision+"')";//執行資料庫代碼
PreparedStatement smt = con.prepareStatement(sql);
smt.executeUpdate(sql);
sql="select * from message";
ResultSet rs = smt.executeQuery(sql);
while(rs.next())
count++;
lastp=(int)Math.ceil((double)count/5);
response.sendRedirect("sendmail.jsp");
smt.close();//關閉資料庫
con.close();
❷ jsp怎麼連接sql資料庫
1.將資料庫驅動程序的JAR文件放在Tomcat的 common/lib 中; 2.在server.xml中設置數據源,以MySQL資料庫為例,如下: 在 節點中加入, 屬性說明:name,數據源名稱,通常取」jdbc/XXX」的格式; type,」javax.sql.DataSource」; password,資料庫用戶密碼; driveClassName,資料庫驅動; maxIdle,最大空閑數,資料庫連接的最大空閑時間。超過空閑時間,資料庫連 接將被標記為不可用,然後被釋放。設為0表示無限制。 MaxActive,連接池的最大資料庫連接數。設為0表示無限制。 maxWait ,最大建立連接等待時間。如果超過此時間將接到異常。設為-1表示 無限制。 3.在你的web應用程序的web.xml中設置數據源參考,如下: 在節點中加入, MySQL DB Connection Pool jdbc/DBPool javax.sql.DataSource Container Shareable 子節點說明: description,描述信息; res-ref-name,參考數據源名字,同上一步的屬性name; res-type,資源類型,」javax.sql.DataSource」; res-auth,」Container」; res-sharing-scope,」Shareable」; 4.在web應用程序的context.xml中設置數據源鏈接,如下: 在節點中加入, 屬性說明:name,同第2步和第3步的屬性name值,和子節點res-ref-name值; type,同樣取」javax.sql.DataSource」; global,同name值。 至此,設置完成,下面是如何使用資料庫連接池。 1.建立一個連接池類,DBPool.java,用來創建連接池,代碼如下: import javax.naming.Context; import javax.naming.InitialContext; import javax.naming.NamingException; import javax.sql.DataSource; public class DBPool { private static DataSource pool; static { Context env = null; try { env = (Context) new InitialContext().lookup("java:comp/env"); pool = (DataSource)env.lookup("jdbc/DBPool"); if(pool==null) System.err.println("'DBPool' is an unknown DataSource"); } catch(NamingException ne) { ne.printStackTrace(); } } public static DataSource getPool() { return pool; } } 2.在要用到資料庫操作的類或jsp頁面中,用DBPool.getPool().getConnection(),獲得一個Connection對象,就可以進行資料庫操作,最後別忘了對Connection對象調用close()方法,注意:這里不會關閉這個Connection,而是將這個Connection放回資料庫連接池。
❸ 在jsp編程中如何連接資料庫
用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方法()即可。
❹ jsp如何連接資料庫
1、先打開我們編輯運行JSP的開發環境,我們新建一個java web項目。
❺ jsp資料庫連接
//導入JDBC相關類
import java.sql.*;
//導入MySQL的JDBC相關類
import org.gjt.mm.mysql.*;
public class MysqlExample{
Connection conn=null;//定義資料庫連接對象
Statement st=null;//定義資料庫執行象
//定義連接資料庫的方法
public void connectToMySQL(){
try{
Class.forName("org.gjt.mm.mysql.Driver");
/*載入JDBC驅動程序,如果找不到會出錯,如果頻繁的對資料庫進行操作,可以把
載入的內容寫在類開頭的static塊里,因為驅動只要載入一次就夠了,沒有必要在每次建立連接時載入驅動.
*/
/*
如果查找成功就嘗試連接資料庫,DriverManager的getConnection的方法有3個參數:
1.資料庫的URL,MySQL為jdbc:mysql://hostname.port/databasename
2.資料庫用戶名
3.資料庫密碼
以下的參數只是舉例而已
*/
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/person","root","");
//如果要用到事務,必須如下設置
/*
conn.setAutoCommit(false);
*/
System.out.println("OK");//只是便於自己查看是否連接成功了
}catch(Exception e){//捕獲錯誤
System.out.println(e.getMessage());
}
}
到此為止是完成了用connectToMySQL方法封裝了對資料庫的連接,當然你還可以對add,remove,query等方法對資料庫里操作進行封裝,最後就是一個定義一個方法connectClose(),調用close(),將st和conn關閉,當然在關閉conn之前記得conn.commit();
❻ jsp連接資料庫方法(詳細的)
上面的給出了jsp內嵌java的最初模式,現在一般是三層結構了即MVC結構,就這個例子我來給你解釋下是怎麼做的,java對連接資料庫提供了統一的介面,各個資料庫廠商根據提供的介面規范開發自己的連接方法順序如下:1、用Class.forName()方法載入驅動:Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); 黑體部分為資料庫廠商自己開發的驅動。2、定義好連接資料庫的url地址,連接串Stringurl="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs";黑體部分為固定寫法不用理會。回到你最初的問題,如何創建資料庫,這里你可以去下每個資料庫創建的方法,一般資料庫安裝的時候都有默認的資料庫名,和對應的系統管理員工號和密碼,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方法。
❼ jsp怎麼連接資料庫
1、jsp是java服務端動態網頁技術,主要應用於網頁構建,理論上講不應該在頁面中直接連資料庫。合理的做法是先構建一個java後端,然後在JAVA後端中通過jdbc連接sqlserver。
2、如果一定要在jsp頁面中連資料庫也是可以的。jsp中有專門的sql標簽可以連接資料庫進行操作,這是jstl的內容,需要導入相應的資料庫驅動包。
3、jsp的內容相對來說技術難度都不算特別高,學習起來還是比較容易的。
4、希望對你有幫助。祝你學有所得。
❽ JSP連接資料庫的代碼
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);
這是基本的資料庫操作方法
大概流程就是載入驅動類,創建連接,執行資料庫操作,關閉
❾ jsp中使用JDBC連接MySQL資料庫如何解決
在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
即可刪除對應的進程。
❿ 用jsp向資料庫插入數據
你的問題我知道了,你想往資料庫里插入數據,單純從jsp頁面插入沒有現實意義,可以考慮到再編寫一個表單頁面提交表單數據,在jsp頁面用統配符向資料庫插入數據。
我大致一個小例子你看看。
zhuce.html
<html>
<body>
<form name="form1" method="post" action="register.jsp">
<p align="center">用戶名:
<input type="text" name="name">
</p>
<p align="center">密碼:
<input type="password" name="password">
</p>
<p align="center">
<input type="submit" name="Submit" value=" 注 冊">
</p>
</form>
</body>
</html>
register.jsp
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<html>
<body>
<%
request.setCharacterEncoding("GBK");
String name=request.getParameter("name");//內置對象應該會吧
String password=request.getParameter("password");
try{
Class.forName("org.gjt.mm.mysql.Driver"); //驅動程序你自己的,我的是com.mysql.jdbc.Driver
String url="jdbc:mysql://localhost:3306/tian";//你自己設置資料庫名稱
Connection con=DriverManager.getConnection(url,"root",""); //如果你mysql中root的密碼是空的話最好寫成""代替null
String sql="insert into txt (name,password) values ('"+name+"','"+password+"')";//你使用的表是txt,sql建表自己看著辦吧
Statement stmt=con.createStatement();
if{
stmt.executeUpdate(sql);
response.sendRedirect("success.html");//根據結果定向成功頁面
}else{
response.sendRedirect("f.html");//失敗頁面
}
}catch(Exception e){
e.printStackTrace();
System.out.println(e);
}
%>
</body>
</html>
至於success.jsp和f.jsp比較簡單自己寫下吧。
不會了可以上網查資料,或許再提問吧