花了我將近一個(gè)小時(shí)的時(shí)間擺弄,你還不舍得給分
創(chuàng)新互聯(lián)公司是一家專注網(wǎng)站建設(shè)、網(wǎng)絡(luò)營(yíng)銷策劃、小程序設(shè)計(jì)、電子商務(wù)建設(shè)、網(wǎng)絡(luò)推廣、移動(dòng)互聯(lián)開發(fā)、研究、服務(wù)為一體的技術(shù)型公司。公司成立十多年以來,已經(jīng)為數(shù)千家假山制作各業(yè)的企業(yè)公司提供互聯(lián)網(wǎng)服務(wù)?,F(xiàn)在,服務(wù)的數(shù)千家客戶與我們一路同行,見證我們的成長(zhǎng);未來,我們一起分享成功的喜悅。
第一個(gè)類
/**************************************************************************
* 該類為啟動(dòng)類,運(yùn)行該類,將跳出輸入數(shù)組對(duì)話框,輸入的數(shù)字之間用逗號(hào)隔開,若輸入
* 的不是數(shù)字有可能出現(xiàn)異常,請(qǐng)自己處理。輸入的數(shù)字最大個(gè)數(shù)為100,也可以修改處理
* 更大個(gè)數(shù)的數(shù)組。
**************************************************************************/
package terry.test;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.util.EventListener;
import java.util.StringTokenizer;
public class InputData extends JFrame implements ActionListener
{
Container con=this.getContentPane();
JButton button1=new JButton("確定");
JButton button2=new JButton("取消");
JLabel label=new JLabel("請(qǐng)輸入數(shù)組:");
JTextField text=new JTextField("數(shù)字之間用逗號(hào)隔開");
Panel panel1=new Panel();
Panel panel2=new Panel();
@SuppressWarnings("deprecation")
public InputData()
{
super("輸入有序數(shù)據(jù)對(duì)話框");
con.setLayout(new GridLayout(2,1));
panel1.add(label);
panel1.add(text);
con.add(panel1);
button1.addActionListener(this);
panel2.add(button1);
button2.addActionListener(this);
panel2.add(button2);
con.add(panel2);
this.setSize(300,200);
this.show();
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==button1)
{
String dataString=text.getText();//截取寫入的數(shù)組,現(xiàn)在還是一個(gè)字符串
ordArray arr=new ordArray(100);//生成排序類的實(shí)例;
//以下為處理整個(gè)字符串,轉(zhuǎn)化為整型數(shù)組。
if(dataString!=null)
{
StringTokenizer s=new StringTokenizer(dataString,",");
while(s.hasMoreTokens())
{
int temp=0;
try
{
temp=(new Integer(s.nextToken())).intValue();
}catch(NumberFormatException ex)
{
JOptionPane.showMessageDialog(null, "在數(shù)組中,請(qǐng)輸入整數(shù)值!");
}
arr.insert(temp);
}
}
this.dispose();
new InputSearchApp(arr);
}
}
public static void main(String args[])
{
new InputData();
}
}
第二個(gè)類
/**************************************************
* InputData實(shí)例向該類的實(shí)例傳遞了orderArray參數(shù)變量*
* *
*/
package terry.test;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.Panel;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
public class InputSearchApp extends JFrame implements ActionListener{
Container con=this.getContentPane();
JButton button1=new JButton("確定");
JButton button2=new JButton("取消");
JLabel label=new JLabel("請(qǐng)輸入要查找的數(shù)值:");
JTextField text=new JTextField(10);
ordArray arr=null;
Panel panel1=new Panel();
Panel panel2=new Panel();
public InputSearchApp(ordArray testArray)
{
super("輸入有序數(shù)據(jù)對(duì)話框");
arr=testArray;
con.setLayout(new GridLayout(2,1));
panel1.add(label);
panel1.add(text);
con.add(panel1);
button1.addActionListener(this);
panel2.add(button1);
button2.addActionListener(this);
panel2.add(button2);
con.add(panel2);
this.setSize(200,200);
this.show();
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==button1)
{
String dataString=text.getText();
int searchKey= (new Integer(dataString)).intValue();
boolean success=arr.find(searchKey);
if(success)
{
this.dispose();
JOptionPane.showMessageDialog(null, ("查找到數(shù)據(jù)"+searchKey));
}
else
{
JOptionPane.showMessageDialog(null, ("沒有查找到數(shù)據(jù)"+searchKey));
}
}
}
}
第三個(gè)類2分查找類
package terry.test;
public class ordArray {
private int[]a;
private int nElems;
public ordArray(int max)
{
a=new int[max];
nElems=0;
}
public int size()
{
return nElems;
}
public boolean find(int searchKey)
{
return recFind(searchKey,0,nElems-1);
}
private boolean recFind(int searchKey,int lowerBound,int upperBound)
{
int curIn,theindex;
//boolean flag=false;
curIn=(lowerBound+upperBound)/2;
if(a[curIn]==searchKey)
theindex=curIn;
else if(lowerBoundupperBound)
theindex=nElems;
else
{
if(a[curIn]searchKey)
return recFind(searchKey,lowerBound,curIn-1);
else
return recFind(searchKey,curIn+1,upperBound);
}
if(theindex!=this.size())
return true;
else
return false;
}
public void insert(int value)
{
int j;
for(j=0;jnElems;j++)
if(a[j]value)
break;
for(int k=nElems;kj;k--)
a[k]=a[k-1];
a[j]=value;
nElems++;
}
}
下載solr3.5服務(wù)器下來,里面有example例子,再百度“solr 3.5配置”,會(huì)出來 “solr 3.5 配置及應(yīng)用” 的列表, 你照著里面配置好,就可以基于服務(wù)器進(jìn)行搜索了,網(wǎng)上現(xiàn)成的例子是沒有的,當(dāng)時(shí)我用的時(shí)候也找了好久
你好
建議你直接搜索 Java開源大全
看看是不是可以給你帶來幫助
在業(yè)務(wù)邏輯層里操作不是都相同的么?為什么特別指出不需要JSP要用GUI呢?難道是用ajax寫?但你說在數(shù)據(jù)庫(kù)搜索內(nèi)容并顯示又不像ajax。搞不懂。
類似于下面那樣子的業(yè)務(wù)吧?:
String sql="select WP_PRODUCT.*,WP_PROD_CTGRY.C_NAME from WP_PRODUCT,WP_PROD_CTGRY where WP_PRODUCT.CTGRY_ID=WP_PROD_CTGRY.TID ";
ListObject params=new ArrayListObject();
if(type!=null!"".equals(type)){
sql+=" and CTGRY_ID like ?";
params.add(type+"%");
}
if(proName!=null!"".equals(proName)){
sql+=" and NAME like ?";
params.add("%"+proName+"%");
}
if(code!=null!"".equals(code)){
sql+=" and CUSTOM_ID like ?";
params.add(code+"%");
}
if(brandId!=null!"".equals(brandId)){
sql+=" and OWNER_ID = ?";
params.add(brandId);
}
if(netId!=null !"".equals(netId)) {
sql += " and WP_PRODUCT.TID IN(SELECT PRODUCT_ID FROM WP_NET_PRODUCT WHERE OWNER_ID = ?) ";
params.add(netId);
}
sql += " order by WP_PRODUCT.MOD_DATE desc";
this.getVisitor().createPaginationExecutor(sql, page, params.toArray()).pagination(WpProdBean.class);
搜索文件? 你是指搜索硬盤上的文件么 ? 你可以參考下這個(gè)
這個(gè)是建索引的 之后你在索引里查找就行了
import java.io.File;
public class bianli {
public static void main(String[] args) throws Exception {
getAndPrintFile(new File("E:\\"));
}
/**
* 打印出file下的所有目錄包括其子目錄。
* 算法是深度優(yōu)先。
*/
public static void getAndPrintFile(File file) {
if(file.isDirectory()) {
System.out.println(file.toString());
File[] fa = file.listFiles();
if(fa.length 0) {
for(int i = 0; i fa.length; i++) {
getAndPrintFile(fa[i]); //遞歸調(diào)用
}
}
}
else System.out.println(file.toString());
}
}