導航:首頁 > 知識科普 > java查詢的方法怎麼寫

java查詢的方法怎麼寫

發布時間:2022-08-12 21:20:32

A. java後台根據條件查詢怎麼寫呀

如果是動態查詢,也就是上面的條件個數不確定時,你在後台先做判斷哪個條件是需要用的,然後先定義一個String類型的參數,把你需要的條件拼接出來。sql的話就這樣寫select * from 表明 where 1=1 後面拼接你的條件

B. Java里通用的查詢方法怎麼寫

import java.sql.Connection;
import java.sql.Date;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.PreparedStatement;

public class JDBC {
private Connection con = null;
private Statement stmt = null;
private ResultSet rs = null;
private String driver = "com.mysql.jdbc.Driver";
private String url="jdbc:mysql://localhost:3306/dataname
?characterEncoding=GBK";
private String user = "root";
private String password = "mysql";

/**
* 准備連接
*/
public void startConnection() throws ClassNotFoundException, SQLException {
Class.forName(driver); //注冊資料庫驅動
con = DriverManager.getConnection(url, user, password); //獲得資料庫連接
}

/**
* 執行select 並返回結果集 throws SQLException
*/

public ResultSet query(String sql) throws SQLException {
stmt = con.createStatement(); //創建Statement
rs = stmt.executeQuery(sql); //執行查詢
return rs;
}

/**
* 執行insert update delete
*/
public int update(String sql) throws SQLException {
stmt = con.createStatement();
int r = stmt.executeUpdate(sql);
return r;
}

/**
* 釋放資源(連接)
*/

public void releaseConnection() {
try {
if (rs != null)
rs.close();
stmt.close();
if (con != null)
con.close();

} catch (SQLException e) {
e.printStackTrace();
}
}

}

C. java中怎麼寫一個公共的查詢資料庫方法

package cn.db;//這個是自己建的包,這樣子方便用的時候就可以通過包名來確定路徑了

import java.sql.*;
import java.util.ArrayList;

public class DbDao {
Connection con=null;//連接
Statement stm=null;//執行SQL語句
ResultSet rs=null;//保存查詢結果

public void connectDb(){
try {
Class.forName("com.mysql.jdbc.Driver");//這句固定的
con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/mydb","root","root");//其中的mydb是資料庫名,後面兩個root分別是資料庫用戶名和密碼(我用的是MySQL資料庫)
stm = con.createStatement();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

public ArrayList executeQuery(String sql){//這個方法是用來查詢資料庫的,並且將查詢的數據放到鏈表中
ArrayList list = new ArrayList();

try {
rs = stm.executeQuery(sql);
while(rs.next()){
//這里寫入你要查詢的數據,得由你自己寫了。
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return list;
}
public void closeDb(){//關閉資料庫
try {
if(rs!=null) rs.close();
if(stm!=null) stm.close();
if(con!=null) con.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}

D. JAVA連接資料庫,查詢功能怎麼寫

public class JdbcNoarg {

//查詢一行數據

public void getQueryNoargOne(){

JdbcMysqlPool jdbc = new JdbcMysqlPool();

Connection con=null;

Statement st = null;

String sql;

ResultSet rst = null;

try {

//獲取資料庫連接

con = jdbc.getConnection();

//在連接里打開一條通道createStatement,返回Statement對象

st = con.createStatement();

sql = "select *from student";

//把我們想要結果sql語句發送給資料庫,資料庫返回的數據用java ResultSet來接收

rst= st.executeQuery(sql);

//獲取結果集的第一行數據9

rst.first();

//獲取結果集指定列的數據

String name = rst.getString("name");

String interest = rst.getString("interest");

System.out.println("name:"+name+";interest:"+interest);

} catch (Exception e) {

e.printStackTrace();

}finally {

try {

if(rst!=null)

rst.close();

if(st!=null)

st.close();

if(con!=null)

con.close();

} catch (Exception e2) {

e2.printStackTrace();

}

}

}


E. JAVA中怎麼實現查詢 代碼

try{Connection con;
Statement stmt;
ResultSet rs;
int temp;
Class.forName("com.mysql.jdbc.Driver");
con=DriverManager.getConnection("jdbc:mysql://localhost:3306/java","root","");//以上是資料庫連接,不同的數據管理器有 //不同的驅動和鏈接方式,以上是mysql的連接
stmt=con.createStatement();
rs=stmt.executeQuery("select * from student");//執行查詢語句,結果賦值給結果集rs
//結果集是結果於欄位編號的映射,每一個字
//段都有一個編號,最小為1,也就是第一個欄位
while(rs.next()){
String names=rs.getString("name");//查詢結果轉換成字元串。

System.out.println(names);

}rs.close();
}catch(Exception e){
e.printStackTrace();
}

F. java中的條件查詢怎麼寫

import java.sql.Connection;
import java.sql.Date;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.PreparedStatement;

public class JDBC {
private Connection con = null;
private Statement stmt = null;
private ResultSet rs = null;
private String driver = "com.mysql.jdbc.Driver";
private String url="jdbc:mysql://localhost:3306/dataname
?characterEncoding=GBK";
private String user = "root";
private String password = "mysql";

/**
* 准備連接
*/
public void startConnection() throws ClassNotFoundException, SQLException {
Class.forName(driver); //注冊資料庫驅動
con = DriverManager.getConnection(url, user, password); //獲得資料庫連接
}

/**
* 執行select 並返回結果集 throws SQLException
*/

public ResultSet query(String sql) throws SQLException {
stmt = con.createStatement(); //創建Statement
rs = stmt.executeQuery(sql); //執行查詢
return rs;
}

/**
* 執行insert update delete
*/
public int update(String sql) throws SQLException {
stmt = con.createStatement();
int r = stmt.executeUpdate(sql);
return r;
}

/**
* 釋放資源(連接)
*/

public void releaseConnection() {
try {
if (rs != null)
rs.close();
stmt.close();
if (con != null)
con.close();

} catch (SQLException e) {
e.printStackTrace(); }
} }

G. java查詢類怎麼寫

寫一個方法,多一個參數,表示參數類型,根據參數類型,改變查詢SQL語句
如:
public
ResultSet
query(參數1,參數2....
類型參數1){
if
類型參數1=1
{
sql=按第一種方式查詢的sqlstring
}
if...........
if...........
xxx.executequery(sql)
return
...
}

H. Java實現查詢的功能

查詢部分代碼如下:

StringstrSQL;
strSQL="select*fromtb_managerwheremanager='"+jTextField1.getText().trim()+"'";
rs=db.getResult(strSQL);
try
{
if(rs.first())
{
jTextField1.setText(rs.getString("manager"));
jTextField2.setText(rs.getString("den"));
jTextField3.setText(rs.getString("ID"));
jTextField4.setText(rs.getString("remark"));
jTextField5.setText(rs.getString("sex"));

}
else
{
JOptionPane.showMessageDialog(null,"無此信息");
}
}catch(SQLExceptione)
{JOptionPane.showMessageDialog(null,"查詢信息失敗!");}

}

I. java的遞歸查詢怎麼寫

原文在這里,寫得不錯,樓主可參考下,具體鏈接如下,我只是搬運工!

http://blog.csdn.net/u011627980/article/details/51454323

/**
*說明方法描述:將list轉為樹tree結構
*
*@paramallRrecords
*@return
*@time2016年5月10日下午6:00:35
*@authoryangdong
*/
publicList<Record>useListRecordToTree(List<Record>allRrecords){

List<Record>listParentRecord=newArrayList<Record>();
List<Record>listNotParentRecord=newArrayList<Record>();
//第一步:遍歷allRrecords保存所有數據的uuid用於判斷是不是根節點
Map<String,String>mapAllUuid=newHashMap<String,String>();
Map<String,Record>allRecordMap=newHashMap<String,Record>();
for(Recordrecord:allRrecords){
mapAllUuid.put(record.getStr("uuid"),record.getStr("uuid"));
allRecordMap.put(record.getStr("uuid"),record);
}
//第二步:遍歷allRrecords找出所有的根節點和非根節點
if(allRrecords!=null&&allRrecords.size()>0){
for(Recordrecord:allRrecords){
if(StringUtil.isBlank(record.getStr("parent_uuid"))
||!mapAllUuid.containsKey(record.getStr("parent_uuid"))){
listParentRecord.add(record);
}else{
listNotParentRecord.add(record);
}
}
}

//第三步:遞歸獲取所有子節點
if(listParentRecord.size()>0){
for(Recordrecord:listParentRecord){
//添加所有子級
record.set("childs",this.getTreeChildRecord(listNotParentRecord,record.getStr("uuid")));
}
}
returnlistParentRecord;
}

/**
*說明方法描述:使list轉換為樹並根據關鍵字和節點名稱過濾
*
*@paramallRecords所有節點
*@paramkeywords要過濾的關鍵字
*@paramfilterFields要過濾的欄位
*@return
*@time2016年5月19日下午3:27:32
*@authoryangdong
*/
publicList<Record>useListRecordToTreeByKeywords(List<Record>allRecords,Stringkeywords,String...filterFields){
List<Record>listRecord=newArrayList<Record>();
Map<String,Record>allRecordMap=newHashMap<String,Record>();
for(Recordrecord:allRecords){
allRecordMap.put(record.getStr("uuid"),record);
}
//遍歷allRrecords找出所有的nodeName和關鍵字keywords相關的數據
if(allRecords!=null&&allRecords.size()>0){
if(filterFields.length>1){
for(Recordrecord:allRecords){
for(Stringfield:filterFields){
//比較
if(record.getStr(field).toLowerCase().indexOf(keywords.toLowerCase())!=-1){
listRecord.add(record);
}
}
}
}else{
for(Recordrecord:allRecords){
//比較
if(record.getStr(filterFields[0]).toLowerCase().indexOf(keywords.toLowerCase())!=-1){
listRecord.add(record);
}
}
}
}
//查找過濾出來的節點和他們的父節點
listRecord=this.getSelfAndTheirParentRecord(listRecord,newArrayList<Record>(),
newHashMap<String,Record>(),allRecordMap);
//將過濾出來的數據變成樹tree結構
listRecord=this.useListRecordToTree(listRecord);
returnlistRecord;
}

/**
*說明方法描述:遞歸查詢子節點
*
*@paramchildList子節點
*@paramparentUuid父節點id
*@return
*@time2016年5月10日下午3:29:35
*@authoryangdong
*/
privateList<Record>getTreeChildRecord(List<Record>childList,StringparentUuid){
List<Record>listParentRecord=newArrayList<Record>();
List<Record>listNotParentRecord=newArrayList<Record>();
//遍歷tmpList,找出所有的根節點和非根節點
if(childList!=null&&childList.size()>0){
for(Recordrecord:childList){
//對比找出父節點
if(StringUtil.equals(record.getStr("parent_uuid"),parentUuid)){
listParentRecord.add(record);
}else{
listNotParentRecord.add(record);
}

}
}
//查詢子節點
if(listParentRecord.size()>0){
for(Recordrecord:listParentRecord){
//遞歸查詢子節點
record.set("childs",getTreeChildRecord(listNotParentRecord,record.getStr("uuid")));
}
}
returnlistParentRecord;
}

/**
*說明方法描述:遞歸找出本節點和他們的父節點
*
*@paramparentList根據關鍵字過濾出來的相關節點的父節點
*@paramresultList返回的過濾出來的節點
*@paramfilterRecordMap已經過濾出來的節點
*@paramallRecordMap所有節點
*@return
*@time2016年5月19日上午9:53:56
*@authoryangdong
*/
privateList<Record>getSelfAndTheirParentRecord(List<Record>parentList,List<Record>resultList,
Map<String,Record>filterRecordMap,
Map<String,Record>allRecordMap){
//當父節點為null或者節點數量為0時返回結果,退出遞歸
if(parentList==null||parentList.size()==0){
returnresultList;
}
//重新創建父節點集合
List<Record>listParentRecord=newArrayList<Record>();
//遍歷已經過濾出來的節點
for(Recordrecord:parentList){

Stringuuid=record.getStr("uuid");
Stringparent_uuid=record.getStr("parent_uuid");

//如果已經過濾出來的節點不存在則添加到list中
if(!filterRecordMap.containsKey(uuid)){
listParentRecord.add(record);//添加到父節點中
filterRecordMap.put(uuid,record);//添加到已過濾的map中
allRecordMap.remove(uuid);//移除集合中相應的元素
resultList.add(record);//添加到結果集中
}

//找出本節點的父節點並添加到listParentRecord父節點集合中,並移除集合中相應的元素
if(StringUtil.isNotBlank(parent_uuid)){
RecordparentRecord=allRecordMap.get(parent_uuid);
if(parentRecord!=null){
listParentRecord.add(parentRecord);
allRecordMap.remove(parent_uuid);
}
}

}
//遞歸調用
getSelfAndTheirParentRecord(listParentRecord,resultList,filterRecordMap,allRecordMap);

returnresultList;
}
[java]viewplain
//示例
[java]viewplain
/**
*說明方法描述:遞歸查詢所有許可權
*
*@paramkeyword
*@paramis_deleted
*@return
*@time2016年5月10日下午3:47:50
*@authoryangdong
*/
publicList<Record>getRecordByKeywordRecursive(Stringkeyword,Stringis_deleted){
//第一步:查詢所有的數據
StringBuffersql=newStringBuffer(
"selectpa.uuid,pa.parent_uuid,pa.author_code,pa.author_name,pa.is_menu,pa.sort_number,pa.is_enable,pa.menu_icon");
sql.append("froms_authorpa");
List<Object>params=newArrayList<Object>();
sql.append("wherepa.is_deleted=?");
params.add(is_deleted);
sql.append("orderbypa.sort_numberasc");


List<Record>allRrecords=Db.use(AppConst.DB_DATASOURCE_MAIN).find(sql.toString(),ParamUtil.listToArray(params));
[java]viewplain
//第二步:將list變為樹tree結構
if(StringUtil.isNotBlank(keyword)){
returnsuper.useListRecordToTreeByKeywords(allRrecords,keyword,"author_name");
}else{
returnsuper.useListRecordToTree(allRrecords);
}
}

J. 在java中如何使用一個方法實現兩種不同的查詢

樓主能否說的詳細點,我這里認為的是一個方法實現兩種不同形式的查詢(此處舉例:模糊查詢、精準查詢)
定義vo類A
public
class
A{
private
String
name;
private
String
addr;
......
//
get\set方法
}
定義方法B
public
list
A(A
vo){
//
vo:包含name、addr
String
sql
=
"Select
*
from
表名
where
1=1";
1、精準查詢
if(vo.getName()!=null&&vo.getName().trim()>0){
sql
+=
"and
欄位
=
'"+vo.getName()+"'";
}
2、模糊查詢
if(vo.getAddr()!=null&&vo.getAddr().trim()>0){
sql
+=
"and
欄位
like
'"+vo.getAddr()+"'";
}
return
list結果集;
}
註:不建議使用sql拼接方法進行查詢,容易sql注入,此處為了方便才這樣編寫,希望回答對你有點啟發。

閱讀全文

與java查詢的方法怎麼寫相關的資料

熱點內容
499x32十32簡便方法 瀏覽:752
電子支付器怎麼使用方法 瀏覽:586
365天鍛煉方法 瀏覽:378
rnw使用方法步驟 瀏覽:504
怎麼賺錢方法 瀏覽:213
用什麼方法可以把肉弄成熟 瀏覽:446
小孩脾虛出夜汗怎麼調理食補方法 瀏覽:682
毛衣雞心領大了改小的簡單方法視頻 瀏覽:433
物理中減小摩擦力的方法有哪些 瀏覽:895
常用的有機物分析方法 瀏覽:334
人類有什麼打鬥方法 瀏覽:806
人物分析描寫方法 瀏覽:791
皂角刺如何食用方法 瀏覽:566
研究問卷的方法 瀏覽:830
古箏琴碼的安裝方法 瀏覽:579
國外大學研究方法有哪些 瀏覽:424
手上雞眼的圖片症狀和處理方法 瀏覽:70
梔子的種植方法和圖片 瀏覽:604
癬的症狀和治療方法 瀏覽:422
黛珂白檀乳液使用方法 瀏覽:849