❶ java調WebService完整的實例
首先, 你要先把你的WS服務啟動起來,就是http://localhost:8080/Example/services/HelloWorldService?wsdl
然後在你的另一個項目中建一個Webservice Client 客戶端,用來訪問你的WS服務。
建立Webservice Client 方法如下,在Eclipses中建立一個java工程,然後在src上右鍵--NEW---Other---Web Service Client --Xfire--在WsdL url 中寫上http://localhost:8080/Example/services/HelloWorldService?wsdl-----下一步結束。
在src里的會出現一些java文件,你找一個以Client結束的java文件,在裡面的main方法中會有個service對象,現在你就可以直接用這個對象了,service.peerstatus(參數)這樣寫就行了。
純手打啊,希望能對你有幫助。
❷ 如何用java進行 web開發實例
這……使用工具創建一個就好,打開eclipse-file-new-Others-Dynamic Web Project
如下填寫好項目名稱就好了,這就是一個web工程,然後你啟動服務就OK了。再復雜的就不是一會能說明白的。
❸ java web網站如何實現qq在線客服,最好友詳細代碼的例子。或者一些資料信息提供。非常感謝。
在HTML代碼里插入如下代碼:
<a href="http://wpa.qq.com/msgrd?V=1&Uin=你的QQ號碼&Site=網路知道&Menu=yes" target="_blank"><img src="http://wpa.qq.com/pa?p=1:你的QQ號碼:4" border="0" alt="QQ" /></a>
❹ java servlet 實例
一個web容器,可以有多個servlet。
「對於同一個業務請求,只會有一個servlet實例被容器產生?」。你的這個理解按說是正確的,但說法不嚴謹!
應該說,對提交到同一個servlet類的多個業務請求,共享一個servlet對象(即這個servlet類只被實例化一次)
別忘了,請求還可以從一個servlet forward到另一個servlet,因此一個請求是可以產生多個servlet的,但是由不同的servlet類實例化的,每個servlet類都只被實例化一次,直到應用程序終止或伺服器shutdown
問題1:容器里有2個servlet(當然,這是在「一個servlet對應一種業務請求」的前提下,如果你要把兩個業務邏輯寫在同一個servlet內另當別論了)
問題2:只有一個servlet實例。一個servlet是在第一次被訪問時載入到內存並實例化的。同樣的業務請求共享一個servlet實例。不同的業務請求一般對應不同的servlet.
想也知道拉,如果一個網站要被幾千萬人同時登錄,如果創建幾千萬個實例的話伺服器還怎麼跑得動?
❺ 我需要一個JavaWeb版的超市管理系統項目例子參考,請問下能發給我一個 重金感謝[email protected]
你看看這個怎麼樣,一個員工管理系統
打不開是什麼意思?你類名寫的對嗎--》Lei
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
import java.util.*;
public class Lei
{
public static void main(String args[])
{
new ManagerWindow();
}
}
/////////////////////////////////////////////////////////////////////////////////////////
class Worker implements java.io.Serializable
{
String num,name,tel,ads;
public void setNum(String num)
{
this.num=num;
}
public String getNum()
{
return num;
}
public void setName(String name)
{
this.name=name;
}
public String getName()
{
return name;
}
public void setTel(String tel)
{
this.tel=tel;
}
public String getTel()
{
return tel;
}
public void setAds(String ads)
{
this.ads=ads;
}
public String getAds()
{
return ads;
}
}
///////////////////////////////////////////////////////////////////////////////////////
class ManagerWindow extends Frame implements ActionListener
{
InputWorker 基本信息錄入=null;
Inquest 基本信息查找=null;
Button 查找,退出;
Hashtable 基本信息=null;
MenuBar bar;
Menu help;
MenuItem 幫助主題,關於;
File file=null;
public ManagerWindow()
{
setTitle("職工檔案管理系統");
bar=new MenuBar();
help=new Menu(" 幫 助 ");
幫助主題=new MenuItem("幫助主題");
關於=new MenuItem(" 關 於 ");
help.add(幫助主題);
help.add(關於);
bar.add(help);
bar.setFont(new java.awt.Font("Serif",1,15));
setMenuBar(bar);
基本信息=new Hashtable();
//幫助主題.addActionListener(this);
//關於.addActionListener(this);
查找=new Button(" 查 找 ");
退出=new Button(" 退 出 ");
查找.addActionListener(this);
file=new File("基本信息.txt");
if(!file.exists())
{
try
{
FileOutputStream out=new FileOutputStream(file);
ObjectOutputStream objectOut=new ObjectOutputStream(out);
objectOut.writeObject(基本信息);
objectOut.close();
out.close();
}
catch(IOException e){}
}
基本信息錄入=new InputWorker(file);
基本信息查找=new Inquest(this,file);
setLayout(new FlowLayout());
setBackground(Color.cyan);
add(基本信息錄入);
add(查找);
add(退出);
退出.addActionListener(this);
查找.setFont(new java.awt.Font("Serif",1,50));
查找.setBackground(Color.green);
退出.setFont(new java.awt.Font("Serif",1,50));
退出.setBackground(Color.red);
addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
} );
setVisible(true);
setBounds(100,50,700,500);
validate();
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==退出)
System.exit(0);
基本信息查找.setVisible(true);
}
}
////////////////////////////////////////////////////////////////////////////////////////
class InputWorker extends Panel implements ActionListener
{
Hashtable 基本信息表=null;
TextField 工號,姓名,電話,地址;
Worker 職工=null;
Button 錄入;
FileInputStream inOne=null;
ObjectInputStream inTwo=null;
FileOutputStream outOne=null;
ObjectOutputStream outTwo=null;
File file=null;
public InputWorker(File file)
{
this.file=file;
工號=new TextField(20);
姓名=new TextField(20);
電話=new TextField(20);
地址=new TextField(20);
錄入=new Button(" 錄 入 ");
錄入.addActionListener(this);
setLayout(new GridLayout(0,2,0,20));
add(new Label("請輸入工號:"));
add(工號);
工號.setBackground(Color.pink);
add(new Label("請輸入姓名:"));
add(姓名);
姓名.setBackground(Color.pink);
add(new Label("請輸入電話:"));
add(電話);
電話.setBackground(Color.pink);
add(new Label("請輸入地址:"));
add(地址);
地址.setBackground(Color.pink);
add(new Label("請點擊錄入:"));
add(錄入);
setFont(new java.awt.Font("Serif",3,30));
validate();
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==錄入)
{
String num="";
num=工號.getText();
if(num.length()>0)
{
try
{
inOne=new FileInputStream(file);
inTwo=new ObjectInputStream(inOne);
基本信息表=(Hashtable)inTwo.readObject();
inOne.close();
inTwo.close();
}
catch(Exception ee) {}
if(基本信息表.containsKey(num))
{
String m="信息已存在,新的信息將覆蓋原信息!";
int ok=JOptionPane.showConfirmDialog(this,m,"確認",
JOptionPane.YES_NO_OPTION,JOptionPane.INFORMATION_MESSAGE);
if(ok==JOptionPane.YES_OPTION)
{
record(num);
}
}
else
{
record(num);
}
}
else
{
String warning="必須要輸入工號!";
JOptionPane.showMessageDialog(this,warning,"警告",
JOptionPane.WARNING_MESSAGE);
}
}
}
public void record(String num)
{
String name=姓名.getText();
String tel=電話.getText();
String ads=地址.getText();
職工=new Worker();
職工.setNum(num);
職工.setName(name);
職工.setTel(tel);
職工.setAds(ads);
try
{
outOne=new FileOutputStream(file);
outTwo=new ObjectOutputStream(outOne);
基本信息表.put(num,職工);
outTwo.writeObject(基本信息表);
outTwo.close();
outOne.close();
工號.setText(null);
姓名.setText(null);
電話.setText(null);
地址.setText(null);
}
catch(Exception ee) {}
}
}
////////////////////////////////////////////////////////////////////////////////////////
class Inquest extends Dialog implements ActionListener
{
TextField 工號,姓名,電話,地址;
String num;
Hashtable 基本信息表=null;
TextField 工號或姓名,要刪除的工號;
Button 按工號查找,按姓名查找,查找全部,刪除,按工號排序;
TextArea show=new TextArea(10,80);
FileInputStream inOne=null;
ObjectInputStream inTwo=null;
File file=null;
public Inquest(Frame f,File file)
{
super(f,"查找對話框",false);
setLayout(new GridLayout(2,1));
Panel p1=new Panel();
p1.setLayout(new FlowLayout(FlowLayout.CENTER,150,10));
this.file=file;
工號或姓名=new TextField(10);
要刪除的工號=new TextField(10);
刪除=new Button(" 刪 除 ");
按工號查找=new Button("按工號查找");
按姓名查找=new Button("按姓名查找");
按工號查找.addActionListener(this);
按姓名查找.addActionListener(this);
按工號查找.addActionListener(this);
查找全部=new Button("查找全部");
按工號排序=new Button("按工號排序");
查找全部.addActionListener(this);
刪除.addActionListener(this);
p1.add(new Label("輸入要查找的工號或姓名:"));
p1.add(工號或姓名);
工號或姓名.setBackground(Color.cyan);
p1.add(按工號查找);
p1.add(按姓名查找);
p1.add(new Label("輸入要刪除的工號:"));
p1.add(要刪除的工號);
要刪除的工號.setBackground(Color.cyan);
p1.add(查找全部);
p1.add(刪除);
p1.add(按工號排序);
p1.setBackground(Color.pink);
p1.setFont(new java.awt.Font("Serif",1,30));
Panel p2=new Panel();
p2.add(show);
p2.setBackground(Color.green);
show.setBackground(Color.cyan);
add(p1);
add(p2);
setFont(new java.awt.Font("Serif",1,20));
setBounds(100,100,900,600);
addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
setVisible(false);
}
} );
}
public void actionPerformed(ActionEvent e)
{
show.setText(null);
readHashtable();
if(e.getSource()==按工號查找)
{
String num="";
num=工號或姓名.getText();
if(num.length()>0)
{
if(基本信息表.containsKey(num))
{
Worker wor=(Worker)基本信息表.get(num);
show.setText("工號:"+wor.getNum()+"\t姓名:"+wor.getName()+"\t電話:"
+wor.getTel()+"\t 地址:"+wor.getAds()+"\n");
}
else
{
String warning="該工號不存在!";
JOptionPane.showMessageDialog(this,warning,"警告",
JOptionPane.WARNING_MESSAGE);
}
}
else
{
String warning="必須要輸入工號!";
JOptionPane.showMessageDialog(this,warning,"警告",
JOptionPane.WARNING_MESSAGE);
}
}
else if(e.getSource()==按姓名查找)
{
String name="";
name=工號或姓名.getText();
if(name.length()>0)
{
if(基本信息表.containsKey(name))
{
Worker wor=(Worker)基本信息表.get(name);
show.setText("工號:"+wor.getNum()+"\t姓名:"+wor.getName()+"\t電話:"
+wor.getTel()+"\t 地址:"+wor.getAds()+"\n");
}
else
{
String warning="該姓名不存在!";
JOptionPane.showMessageDialog(this,warning,"警告",
JOptionPane.WARNING_MESSAGE);
}
}
else
{
String warning="必須要輸入姓名!";
JOptionPane.showMessageDialog(this,warning,"警告",
JOptionPane.WARNING_MESSAGE);
}
}
if(e.getSource()==查找全部)
{
int i=1;
Enumeration em=基本信息表.elements();
while(em.hasMoreElements())
{
Worker wor=(Worker)em.nextElement();
show.append(i+"、"+"工號:"+wor.getNum()+"\t姓名:"+wor.getName()+"\t電話:"
+wor.getTel()+"\t 地址:"+wor.getAds()+"\n");
i++;
}
}
else if(e.getSource()==刪除)
{
String num=要刪除的工號.getText();
if(num.length()>0)
{
if(基本信息表.containsKey(num))
{
Worker wor=(Worker)基本信息表.get(num);
show.setText("工號:"+wor.getNum()+"\t姓名:"+wor.getName()+"\t電話:"
+wor.getTel()+"\t 地址:"+wor.getAds()+"\n");
}
try
{
inOne=new FileInputStream(file);
inTwo=new ObjectInputStream(inOne);
基本信息表=(Hashtable)inTwo.readObject();
inOne.close();
}
catch(Exception ee) {}
if(基本信息表.containsKey(num))
{
String m="你想要刪除該職工的信息嗎?";
int ok=JOptionPane.showConfirmDialog(this,m,"確定",
JOptionPane.YES_NO_OPTION,JOptionPane.INFORMATION_MESSAGE);
if(ok==JOptionPane.YES_OPTION)
{
要刪除的工號.setText(null);
show.setText(null);
基本信息表.remove(num);
FileOutputStream outOne;
try
{
outOne=new FileOutputStream(file);
ObjectOutputStream outTwo=new ObjectOutputStream(outOne);
outTwo.writeObject(基本信息表);
outTwo.close();
}
catch(IOException e1) {}
}
}
else
{
String warning="沒有該工號";
JOptionPane.showMessageDialog(this,warning,"警告",
JOptionPane.WARNING_MESSAGE);
}
}
else
{
String warning="必須要輸入工號!";
JOptionPane.showMessageDialog(this,warning,"警告",
JOptionPane.WARNING_MESSAGE);
}
}
}
public void readHashtable()
{
try
{
inOne=new FileInputStream(file);
inTwo=new ObjectInputStream(inOne);
基本信息表=(Hashtable)inTwo.readObject();
inOne.close();
inTwo.close();
}
catch(Exception ee) {}
}
}
/////////////////////////////////////////////////////////////////////////////////
/*class Help extends Dialog
{
public Help(Frame f)
{
super(f,"幫助對話框",false);
TextArea txt=new TextArea(15,10);
txt.setForeground(Color.red);
txt.setFont(new java.awt.Font("Serif",1,30));
txt.setText("本系統最終解釋權歸\n新疆大學\n科學技術學院\n通信06-1班\n雷建平同學。\n翻版必究!");
setBounds(100,200,500,500);
add(txt);
addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
setVisible(false);
}
} );
}
}*/