十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
花了我将近一个小时的时间摆弄,你还不舍得给分
创新互联公司是一家专注网站建设、网络营销策划、小程序设计、电子商务建设、网络推广、移动互联开发、研究、服务为一体的技术型公司。公司成立十多年以来,已经为数千家假山制作各业的企业公司提供互联网服务。现在,服务的数千家客户与我们一路同行,见证我们的成长;未来,我们一起分享成功的喜悦。
第一个类
/**************************************************************************
* 该类为启动类,运行该类,将跳出输入数组对话框,输入的数字之间用逗号隔开,若输入
* 的不是数字有可能出现异常,请自己处理。输入的数字最大个数为100,也可以修改处理
* 更大个数的数组。
**************************************************************************/
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("请输入数组:");
JTextField text=new JTextField("数字之间用逗号隔开");
Panel panel1=new Panel();
Panel panel2=new Panel();
@SuppressWarnings("deprecation")
public InputData()
{
super("输入有序数据对话框");
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();//截取写入的数组,现在还是一个字符串
ordArray arr=new ordArray(100);//生成排序类的实例;
//以下为处理整个字符串,转化为整型数组。
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, "在数组中,请输入整数值!");
}
arr.insert(temp);
}
}
this.dispose();
new InputSearchApp(arr);
}
}
public static void main(String args[])
{
new InputData();
}
}
第二个类
/**************************************************
* InputData实例向该类的实例传递了orderArray参数变量*
* *
*/
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("请输入要查找的数值:");
JTextField text=new JTextField(10);
ordArray arr=null;
Panel panel1=new Panel();
Panel panel2=new Panel();
public InputSearchApp(ordArray testArray)
{
super("输入有序数据对话框");
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, ("查找到数据"+searchKey));
}
else
{
JOptionPane.showMessageDialog(null, ("没有查找到数据"+searchKey));
}
}
}
}
第三个类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服务器下来,里面有example例子,再百度“solr 3.5配置”,会出来 “solr 3.5 配置及应用” 的列表, 你照着里面配置好,就可以基于服务器进行搜索了,网上现成的例子是没有的,当时我用的时候也找了好久
你好
建议你直接搜索 Java开源大全
看看是不是可以给你带来帮助
在业务逻辑层里操作不是都相同的么?为什么特别指出不需要JSP要用GUI呢?难道是用ajax写?但你说在数据库搜索内容并显示又不像ajax。搞不懂。
类似于下面那样子的业务吧?:
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);
搜索文件? 你是指搜索硬盘上的文件么 ? 你可以参考下这个
这个是建索引的 之后你在索引里查找就行了
import java.io.File;
public class bianli {
public static void main(String[] args) throws Exception {
getAndPrintFile(new File("E:\\"));
}
/**
* 打印出file下的所有目录包括其子目录。
* 算法是深度优先。
*/
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]); //递归调用
}
}
}
else System.out.println(file.toString());
}
}