Ⅰ 怎麼用java把資料庫查詢結果顯示在網頁上
java從資料庫查詢結果顯示在網頁上,步驟如下:
第一步:連接資料庫,並取得查詢結果:importjava.sql.*;
publicclassOraDriver{
publicstaticvoidmain(Stringargs[])throwsException{
//利用Oracle驅動進行連接
Class.forName("oracle.jdbc.driver.OracleDriver");//載入驅動
Stringurl="jdbc:oracle:thin:@localhost:1521:SCHOOL";
Connectionconn=DriverManager.getConnection(url,"scott","tiger");
Statementstat=conn.createStatement();
ResultSetrs=stat.executeQuery("SELECT姓名FROM學籍");
while(rs.next()){
System.out.println(rs.getString("姓名"));
}
}
}
2.在JSP上顯示可以用EL表達式如${user.getName()},也可以用JAVA胸本<%=user.getName()%>,或都直接用out.print(user.getName());
Ⅱ java連接資料庫查詢結果不顯示第一條
這個其實很簡單的`弄清楚next()的功能與處理機制就行了``
rs.next()後,結果集中的游標首先判斷結果集中是否還有下一條記錄,如果有游標定位到下一條記錄位置上``你上面代碼在取數據前next()兩次,所以是從第二條記錄取數據`
Ⅲ java中訪問一個資料庫把讀取的結果保存為list
代碼不好寫
首先得有一個數據結構
就是一條記錄的class
class
xx{
string
field=null;
//field的
set
和
get方法
}
新建一個list
然後遍歷一個表所有行
初始化一個
xx類
每行中的變數
付給xx的欄位
list中加入一個xx
這樣就形成一個list
希望有點幫助
Ⅳ java資料庫查詢結果沒有時,返回什麼
沒有結果時,rs.next()的返回值為假
Ⅳ java怎麼從資料庫中查詢數據並輸出
剛剛漏了帳號密碼了,現在補上
try{
//這里的是MYSQL舉例
//載入驅動
Class.forName("com.mysql.jdbc.Driver");
//創建資料庫連接
Connectioncon=DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","root");
//創建查詢「請求」
PreparedStatementps=con.prepareStatement("select*fromuser");
//返回查詢結果
ResultSetrs=ps.executeQuery();
//遍歷結果
while(rs.next()){
//假如User表中有個name列
System.out.println("name>>"+rs.getString("name"));
}
//關閉
rs.close();
ps.close();
con.close();
}catch(Exceptione){
e.printStackTrace();
}
Ⅵ 使用java,用resultset獲取資料庫中的結果
ResultSet
是一個迭代模式的動態連接容器。
迭代模式的容器遍歷的時候通常是這樣的
while(rs.next()){
//循環內容
}
rs.next()返回值是一個boolean,表示在迭代過程中是否已經到結尾。
直接從statement.excuteQuery()獲得的rs默認數據游標在起始數據的前一個位置,調用一遍rs.next()才能指向可能有數據的第一條數據。然後遍歷繼續,直到迭代集合中再無數據rs.next()返回false;
ps:rs.getRow()表達的意思是結果集在當前游標下共存在多少列,不是rs的size()
在循環體中您將可以獲得當前整行數據的各個列的值以及其它信息。
Ⅶ java界面里怎麼將從資料庫中按條件查詢的結果顯示在界面里。。急求
首先創建可以可以操作資料庫的模型用來實現crud
package model;
/*
* 負責對資料庫操作的表模型
*/
import java.sql.*;
public class SqlModel {
static Connection con=null;
static PreparedStatement ps=null;
static ResultSet rs=null;
//ResultSet rs2=null;
public SqlModel(){
try {
//載入驅動
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//2、得到連接(指定連接到那個數據源),hostel:數據源名
con=DriverManager.getConnection("jdbc:odbc:hostel","","");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//負責增、刪、改的方法
public boolean update(String sql,String []paras){
boolean b=true; //判斷是否刪除成功
try {
ps=con.prepareStatement(sql); //向資料庫發送sql語句
//利用循環給sql語句中的問號賦值
for(int i=0;i<paras.length;i++){
ps.setString(i+1, paras[i]);
}
//得到結果
//int rs=ps.executeUpdate();
ps.executeUpdate();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return b;
}
//負責查詢的方法
public ResultSet query(String sql, String []paras){
try {
ps=con.prepareStatement(sql); //向資料庫發送sql語句
//利用循環給sql語句中的問號賦值
for(int i=0;i<paras.length;i++){
ps.setString(i+1, paras[i]);
}
//得到結果
rs=ps.executeQuery();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return rs;
}
//關閉資料庫連接的方法
public void close(){
try {
if(rs!=null){rs.close();}
if(ps!=null){ps.close();}
if(con!=null){con.close();}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
再創建一個表模型,
package model;
import java.sql.*;
import java.util.*;
import javax.swing.JTable;
import javax.swing.table.AbstractTableModel;
public class Table extends AbstractTableModel{
SqlModel sm;
Connection con=null;
PreparedStatement ps=null;
ResultSet rs=null;
Vector Hang,Lie;
//查詢的方法
public void ShuJuKuLianJie(String sql,String []paras){
try {
Hang=new Vector();
Lie=new Vector();
SqlModel sm=new SqlModel();
rs=sm.query(sql, paras);
//利用ResultSetMetaData可以得到返回列的列名
ResultSetMetaData rsm=rs.getMetaData();
for(int i=0;i<rsm.getColumnCount();i++){
this.Hang.add(rsm.getColumnName(i+1));
}
while(rs.next()){
Vector<String> lie=new Vector<String>();
for(int i=0;i<rsm.getColumnCount();i++){
lie.add(rs.getString(i+1));
}
Lie.add(lie);
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
try {
if(rs!=null){rs.close();};
if(ps!=null){ps.close();};
if(con!=null){con.close();};
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
//增刪改方法
public boolean ZhengShanGai(String sql,String paras[]){
boolean b=true; //用來返回操作是否成功
SqlModel sm=new SqlModel();
try {
b=sm.update(sql, paras);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
sm.close();
}
return b;
}
@Override
public int getRowCount() {
// TODO Auto-generated method stub
//得到共有多少列
return this.Lie.size();
}
@Override
public int getColumnCount() {
// TODO Auto-generated method stub
//得到共有多少行
return this.Hang.size();
}
@Override
public Object getValueAt(int rowIndex, int columnIndex) {
// TODO Auto-generated method stub
//得到某行某列的數據
return ((Vector) this.Lie.get(rowIndex)).get(columnIndex);
}
public String getColumnName(int column) {
// TODO Auto-generated method stub
return (String)this.Hang.get(column);
}
}
查詢過後別忘記刷新表模型
.setModel();方法
Ⅷ java查詢資料庫的數據並顯示出來
本人使用的是 Jena-2.5.7 MySQL 5.0 mysql-connector-java-3.1.10 jdk1.6.0_07
源代碼:
import java.io.*;
import java.sql.SQLException;
import com.hp.hpl.jena.db.*;
import com.hp.hpl.jena.rdf.model.*;
public class MysqlTest{
public static final String strDriver = "com.mysql.jdbc.Driver"; // path of driver class
public static final String strURL = "jdbc:mysql://localhost/ontodb"; // URL of database
public static final String strUser = "root"; // database user id
public static final String strPassWord = "4408"; // database password
public static final String strDB = "MySQL"; // database type
public static void main(String[] args){
try{
// 創建一個資料庫連接
IDBConnection conn = new DBConnection ( strURL, strUser, strPassWord, strDB );
// 載入資料庫驅動類,需要處理異常
try
{
Class.forName(strDriver);
}catch(ClassNotFoundException e){
System.out.println("ClassNotFoundException, Driver is not available...");
}
// 使用資料庫連接參數創建一個模型製造器
ModelMaker maker = ModelFactory.createModelRDBMaker(conn);
// 創建一個默認模型,命名為 MyOntology
Model defModel = maker.createDefaultModel();
// 准備需要存入資料庫的本體文件,建立輸入文件流
FileInputStream inputSreamfile = null;
try
{
File file = new File("D:/Person.owl");
inputSreamfile = new FileInputStream(file);
} catch (FileNotFoundException e) {
e.printStackTrace();
System.out.println("Ontology File is not available...");
}
InputStreamReader in = null;
try
{
in = new InputStreamReader(inputSreamfile, "UTF-8");
} catch (UnsupportedEncodingException e) {
System.out.println("Exceptions occur33...");
e.printStackTrace();
}
// 讀取文件
defModel.read(in,null);
// 關閉輸入流讀取器
try
{
in.close();
} catch (IOException e) {
System.out.println("Exceptions occurclose1...");
e.printStackTrace();
}
// 執行數據轉換,將本體數據存入資料庫
defModel.commit();
// 關閉資料庫連接
try
{
conn.close();
} catch (SQLException e) {
System.out.println("Exceptions occur22...");
e.printStackTrace();
}
}catch(RDFRDBException e){
System.out.println("Exceptions occur...");
}
}
}
輸出結果
Tue Dec 30 17:07:06 CST 2008 TRACE:
Tue Dec 30 17:07:06 CST 2008 TRACE:
.....
Tue Dec 30 17:07:06 CST 2008 TRACE:
Tue Dec 30 17:07:06 CST 2008 TRACE:
Exceptions occur...
幫忙解決一下。。。
Ⅸ 如何在java web中獲得資料庫查詢的結果
建立個servlet,重寫doget()等方法
在web.xml中配置這個servlet
servlet可以實現前後台交互 建議看看這方面的知識,挺簡單的
Ⅹ 在Java中,如何通過在資料庫得到的結果集得到表的列數和行數
在Java中,獲得ResultSet的總行數的方法有以下幾種。
第一種:利用ResultSet的getRow方法來獲得ResultSet的總行數
Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);
ResultSet rset = stmt.executeQuery("select * from yourTableName");
rset.last();
int rowCount = rset.getRow(); //獲得ResultSet的總行數
第二種:利用循環ResultSet的元素來獲得ResultSet的總行數
ResultSet rset = stmt.executeQuery("select * from yourTableName");
int rowCount = 0;
while(rset.next()) {
rowCount++;}rowCount就是ResultSet的總行數。