jsp與資料庫
① jsp頁面中數據與資料庫數據匹配
可能是jsp對應的name名字與資料庫所對應的名字或獲取的名字沒對應上,在瀏覽器控制台可以看到接受的數據,看看有沒有寫錯,我給你看我UserDaoImpl里登錄的代碼,在servlet中判斷=null就登錄失敗跳轉登錄界面,!=null就登錄成功跳轉主頁面,還有如果表單是post請求要設置編碼格式
try {
String sql = "select * from user where username = ? and password = ?";
User user = template.queryForObject(sql, new BeanPropertyRowMapper<User>(User.class), username, password);
return user;
} catch (Exception e) {
e.printStackTrace();
return null;
}
② jsp如何連接資料庫
1、先打開我們編輯運行JSP的開發環境,我們新建一個java web項目。
③ 在JSP頁面中實現連接資料庫與在Java程序中實現連接資料庫有什麼區別
在JSP頁面中去連接資料庫,這個是很久遠的實現方式了。在前端中增加了很多後端代碼的邏輯。前端和後端不能實現明顯的分離,兩者耦合性比較高。這種方式現在級別不用了,只有特別古老的項目目前還是這樣的方式架構。應該是SSH框架的時候,有這樣的寫法。在jsp頁面中,嵌套很多JSTL標簽,好像是這個標簽。記不太清除了。並且這樣的寫法容易在jsp總暴露資料庫的連接信息。現在SSH框架級別沒有人使用了。
現在比較流行都是微服務架構和springboot框架。實現前後端代碼的分離,架構清洗明了,管理起來方便。
④ 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編程中如何連接資料庫
首先你的機器上得裝有一款資料庫,通常是Oracle,Ms sql,MySQL等,不考慮框架等,jsp中主要是利用jdbc進行連接資料庫
1,打開資料庫服務(你已經設計好了資料庫)
2,在class-path中添加相應資料庫的連接jar包,
3.利用jdbc進行操作
例如:
JDBC - 環境設置:
請確認您已完成以下設置:
核心JAVA安裝
SQL 或 MySQL資料庫安裝
除上述者外,需要建立一個資料庫,為本程測試項目使用。假設這是EMP,在同一個資料庫上創建表Employees。
創建JDBC應用程序:
參與建立一個JDBC應用程序,本教程中按六個步驟進行:
導入包:
這需要你有軟體包包含了資料庫編程所需的JDBC類。大多數情況下,使用import java.sql.* 就足夠了,如下所示:
//STEP 1. Import required packages
import java.sql.*;
注冊JDBC驅動程序:
這需要初始化驅動程序,這樣就可以打開與資料庫的通信信道。以下是代碼片段實現這一目標:
//STEP 2: Register JDBC driver
Class.forName("com.mysql.jdbc.Driver");
打開一個連接:
這需要使用DriverManager.getConnection()方法來創建一個Connection對象,它代表一個物理連接的資料庫,如下所示:
//STEP 3: Open a connection
// Database credentials
static final String USER = "username";
static final String PASS = "password";
System.out.println("Connecting to database...");
conn = DriverManager.getConnection(DB_URL,USER,PASS);
執行一個查詢:
這需要使用一個對象類型Statement或PreparedStatement構建,並提交一個SQL語句到資料庫。如下:
//STEP 4: Execute a query
System.out.println("Creating statement...");
stmt = conn.createStatement();
String sql;
sql = "SELECT id, first, last, age FROM Employees";
ResultSet rs = stmt.executeQuery(sql);
如果有一個SQL UPDATE,INSERT或DELETE語句,那麼需要下面的代碼片段:
//STEP 4: Execute a query
System.out.println("Creating statement...");
stmt = conn.createStatement();
String sql;
sql = "DELETE FROM Employees";
ResultSet rs = stmt.executeUpdate(sql);
從結果集中提取數據:
這一步是必需的情況下,從資料庫中獲取數據。可以使用適當的ResultSet.getXXX()方法來檢索的數據結果如下:
//STEP 5: Extract data from result set
while(rs.next()){
//Retrieve by column name
int id = rs.getInt("id");
int age = rs.getInt("age");
String first = rs.getString("first");
String last = rs.getString("last");
//Display values
System.out.print("ID: " + id);
System.out.print(", Age: " + age);
System.out.print(", First: " + first);
System.out.println(", Last: " + last);
}
清理環境:
應該明確地關閉所有的資料庫資源,對依賴於JVM的垃圾收集如下:
//STEP 6: Clean-up environment
rs.close();
stmt.close();
conn.close();
⑥ jsp如何和資料庫連接起來呢
1、
jsp直接採用jdbc連接資料庫。
2、採用web容器,自帶的數據源,獲得connection,操作資料庫。
3、採用資料庫框架,hibernate,ibatis,等。
⑦ jsp 資料庫
如果是分層的程序會把資料庫單獨拿出來寫成DB.java一類的文件,不分層可能會是db或者conn.jsp一類的文件,代碼裡面有Connection,ResultSet,DriverManager一類的一般就是連資料庫的
⑧ jsp怎麼連接資料庫
1、jsp是java服務端動態網頁技術,主要應用於網頁構建,理論上講不應該在頁面中直接連資料庫。合理的做法是先構建一個java後端,然後在JAVA後端中通過jdbc連接sqlserver。
2、如果一定要在jsp頁面中連資料庫也是可以的。jsp中有專門的sql標簽可以連接資料庫進行操作,這是jstl的內容,需要導入相應的資料庫驅動包。
3、jsp的內容相對來說技術難度都不算特別高,學習起來還是比較容易的。
4、希望對你有幫助。祝你學有所得。
⑨ 在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中怎麼使用資料庫
JSP使用資料庫的例子:
showByJdbcOdbc.jsp
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.sql.*" %>
<HTML><BODY bgcolor=cyan>
<% Connection con;
Statement sql;
ResultSet rs;
try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e)
{ out.print(e);
}
try { con=DriverManager.getConnection("jdbc:odbc:mymoon","sa","sa");
sql=con.createStatement();
rs=sql.executeQuery("SELECT * FROM employee WHERE salary>3000");
out.print("<table border=2>");
out.print("<tr>");
out.print("<th width=100>"+"雇員號");
out.print("<th width=100>"+"姓名");
out.print("<th width=50>"+"出生日期");
out.print("<th width=50>"+"薪水");
out.print("</TR>");
while(rs.next())
{ out.print("<tr>");
out.print("<td >"+rs.getString(1)+"</td>");
out.print("<td >"+rs.getString(2)+"</td>");
out.print("<td >"+rs.getDate("birthday")+"</td>");
out.print("<td >"+rs.getFloat("salary")+"</td>");
out.print("</tr>") ;
}
out.print("</table>");
con.close();
}
catch(SQLException e)
{ out.print(e);
}
%>
</BODY></HTML>