成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

java代碼中條件查詢 java中條件語(yǔ)句

Java中數(shù)據(jù)庫(kù)實(shí)現(xiàn)多條件查詢(條件是不確定的,可以是一個(gè),兩個(gè),三個(gè),四個(gè),五個(gè))!

你這樣做輸出SS語(yǔ)句調(diào)試看看,你會(huì)發(fā)現(xiàn)你輸出的SQL語(yǔ)句有問(wèn)題!

創(chuàng)新互聯(lián)建站從2013年創(chuàng)立,是專(zhuān)業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目網(wǎng)站設(shè)計(jì)、成都網(wǎng)站設(shè)計(jì)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元紅花崗做網(wǎng)站,已為上家服務(wù),為紅花崗各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:13518219792

String ss="SELETE * FROM MESSAGE WHERE";

int i=1;char c='"';

if(na!=null)

{ss=ss+"AND 姓名='"+na+"'";i=0;

System.out.println(ss);

}

if(se!="")

{

if(i==0){ss=ss+"AND 性別='"+se+"'";i=0;}

else {ss=ss+"AND 性別='"+se+"'";i=1;}

}

if(xi!="")

{

if(i==0){ss=ss+"AND 系別='"+xi+"'";i=0;}

else {ss=ss+"AND 系別='"+xi+"'";i=1;}

}

if(zh!="")

{

if(i==0){ss=ss+"AND 專(zhuān)業(yè)='"+zh+"'";i=0;}

else {ss=ss+"AND 專(zhuān)業(yè)='"+zh+"'";i=1;}

}

if(ni!="")

{

if(i==0){ss=ss+"AND 年級(jí)='"+ni+"'";}

else {ss=ss+"AND 年級(jí)='"+ni+"'";}

}

ss=c+ss+c;

rs=sql.executeQuery(ss);

就拿第一個(gè)SQL語(yǔ)句來(lái)做示范,加入你的na值為abc,輸出的SS是 SELETE * FROM MESSAGE WHEREAND 姓名= 'abc'

仔細(xì)一看就知道SQL語(yǔ)句上很?chē)?yán)重的錯(cuò)誤 WHERE 后面接了AND關(guān)鍵詞

可以這樣改:ss=ss+" " + "姓名='"+na+"'" +" " +"AND";

最后使用replaceAll('AND$', ")") 替換最后一個(gè)AND字符穿?;蛘呤褂米址麆?chuàng)截取 去掉最后三個(gè)字符(AND)

求助用JAVA實(shí)現(xiàn)數(shù)據(jù)庫(kù)帶條件查詢

我這里有個(gè)現(xiàn)成的數(shù)據(jù)庫(kù)連接類(lèi)

先配個(gè)數(shù)據(jù)源

import java.sql.*;

public class DB{

Connection con;

Statement stt;

private void begin()

{

if(con!=null||stt!=null)

{

this.closs();

}

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

con = DriverManager.getConnection("jdbc:odbc:數(shù)據(jù)源名");

stt = con.createStatement();

}

public Resultset qu(String sql)

{

this.begin();

return stt.executeQuery(sql);

}

public boolean cun(String sql)

{

this.begin();

return stt.execute(sql);

}

public void closs()

{

stt.close();

con.close();

}

}

要用的時(shí)候 DB a = new DB()

a.qu("select * from 你的表名 where 你表中書(shū)名的那一列的列名 like '%書(shū)名%'")

%是通配符 就是說(shuō)如果書(shū)名是"12ab45" 你輸入"ab 也能查詢到" 如果不需要可以去掉%

a.qu()

返回一個(gè)ResultSet

你可以創(chuàng)建一個(gè)數(shù)組

String[][] b = new String[返回的Result的條數(shù)][JTable中需要顯示的列數(shù)量]

用new JTable(String[][],String[])的方法來(lái)構(gòu)造這個(gè)表吧

java多條件查詢問(wèn)題

java多條件不定條件查詢

網(wǎng)站或各類(lèi)管理系統(tǒng)都會(huì)用到搜索,會(huì)用到一個(gè)或多個(gè)不確定條件搜索,單條件搜索比較簡(jiǎn)單,有時(shí)候會(huì)有多個(gè)條件共同查詢,如果系統(tǒng)中已經(jīng)提供了相關(guān)的方法供你使用最好,像我做這老系統(tǒng)改版,需要添加搜索,就要自己寫(xiě)了。開(kāi)始也沒(méi)管那么多,就是拼sql,但是后來(lái)發(fā)現(xiàn)要加搜索地方不少,總是這樣寫(xiě)既增加了工作量,還要做很多重復(fù)工作,說(shuō)不定以后還會(huì)做這樣的工作,所以還是寫(xiě)一個(gè)比較通用的查詢方法。

package com.test;

import java.util.Iterator;

import java.util.LinkedHashMap;

import java.util.List;

import java.util.Map;

import java.util.Map.Entry;

import java.util.Set;

import javax.annotation.Resource;

import org.apache.poi.hssf.record.formula.functions.T;

import org.springframework.context.ApplicationContext;

import org.springframework.context.support.ClassPathXmlApplicationContext;

import org.springframework.jdbc.core.BeanPropertyRowMapper;

import org.springframework.jdbc.core.JdbcTemplate;

import com.ams.bo.webapi.dto.Agent;

public class MultiTaskSearch {

@Resource(name="jdbcTemplate")

private JdbcTemplate jdbcTemplate;

@Resource(name = "storeFrontDAO")

private Map search() {

String name="公司";

String email="@163";

String invoiceTitle="公司";

int sign=1;

String at="2012-04-26";

MapString, Object map=new LinkedHashMapString, Object();//保持添加順序

// MapString, Object map=new HashMapString, Object();//無(wú)固定順序

map.put("name like", name);

map.put("email like", email);

map.put("invoiceTitle like", invoiceTitle);

map.put("sign =", sign);

map.put("addtime=", at);

return map;

}

public T ListT dbSearch(Class typeClass,MapString, Object map,String orderby) {

String paths[] = { "ams-servlet.xml" };

ApplicationContext ctx = new ClassPathXmlApplicationContext(paths);

jdbcTemplate = (JdbcTemplate)ctx.getBean("jdbcTemplate");

ListT TList=null;

String tablename = typeClass.getName().substring(

typeClass.getName().lastIndexOf(".") + 1);

StringBuffer sql=new StringBuffer("select * from ");

sql.append(tablename);

if (map.size()!=0) {

sql.append(" t where 1=1");//后面只需拼接and條件

}

SetEntryString, Object set=map.entrySet();

Iterator iterator=set.iterator();

for (int i = 0; i set.size(); i++) {

Map.Entry mapEntry=(Entry) iterator.next();

if (!"".equals(mapEntry.getValue().toString())) {

//模糊匹配

if (mapEntry.getKey().toString().contains("like")) {

// sql.append(" and t."+mapEntry.getKey()+" "+mapEntry.getValue()+" ");

sql.append(" and t."+mapEntry.getKey()+" '%"+mapEntry.getValue()+"%'");

//精確匹配

}else {

// sql.append(" and t."+mapEntry.getKey()+" '%"+mapEntry.getValue()+"%'");

sql.append(" and t."+mapEntry.getKey()+" "+mapEntry.getValue()+" ");

}

}

}

if (null!=orderby!"".equals(orderby)) {

sql.append(orderby);

}

System.out.println("SQL:"+sql.toString());

TList=jdbcTemplate.query(sql.toString(),new Object[] {}, new BeanPropertyRowMapperT (typeClass));

return TList;

}

public static void main(String[] args) {

MultiTaskSearch mt=new MultiTaskSearch();

Map map=mt.search();

String orderby=" order by addTime desc";

ListAgent agents=mt.dbSearch(Agent.class, map,orderby);

for (Agent agent : agents) {

System.out.println(agent.getName());

}

System.out.println("****************"+agents.size());

}

}

或者可以用拼sql的方法實(shí)現(xiàn)

使用union關(guān)鍵字可以在一個(gè)文本框內(nèi)搜索出多個(gè)條件的數(shù)據(jù)

select t1.* from

(

select * from agent where name like '"2%'

union

select * from agent where email like '"2%'

union

select * from agent where ContactPerson like '"2%'

) t1

這種查詢結(jié)果是所有的集合,也可以把union換成or

java中的條件查詢?cè)趺磳?xiě)

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";

/**

* 準(zhǔn)備連接

*/

public void startConnection() throws ClassNotFoundException, SQLException {

Class.forName(driver); //注冊(cè)數(shù)據(jù)庫(kù)驅(qū)動(dòng)

con = DriverManager.getConnection(url, user, password); //獲得數(shù)據(jù)庫(kù)連接

}

/**

* 執(zhí)行select 并返回結(jié)果集 throws SQLException

*/

public ResultSet query(String sql) throws SQLException {

stmt = con.createStatement(); //創(chuàng)建Statement

rs = stmt.executeQuery(sql); //執(zhí)行查詢

return rs;

}

/**

* 執(zhí)行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(); }

} }

新聞名稱(chēng):java代碼中條件查詢 java中條件語(yǔ)句
網(wǎng)址分享:http://jinyejixie.com/article8/dosjoip.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、外貿(mào)建站、定制開(kāi)發(fā)商城網(wǎng)站、網(wǎng)站制作服務(wù)器托管

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)
陈巴尔虎旗| 榕江县| 清河县| 鄂托克旗| 达孜县| 民丰县| 岳普湖县| 明星| 六枝特区| 崇信县| 营山县| 大冶市| 潜山县| 鄂伦春自治旗| 武穴市| 庆云县| 广平县| 永德县| 徐闻县| 苗栗县| 许昌县| 礼泉县| 宜兴市| 锦屏县| 河曲县| 建宁县| 宣威市| 理塘县| 连南| 襄垣县| 南丰县| 绥德县| 哈巴河县| 无棣县| 克什克腾旗| 陆良县| 文昌市| 扎囊县| 大方县| 凤冈县| 镇远县|