请各位帮个忙,找一下。
解决方案 »
- 谁有kettle的详细教程,
- 为什么实例化对像时不会自动调用构造方法??
- 静态工厂模式
- 怎么才可以找到一个可以实习的公司呢?
- 到底swing用的是哪个包啊?这个问题好郁闷。
- 请指教: 发送Event,编译提示Method not found in anonymous class of method
- 请教如何获得当前的Date?
- 网页装换成txt文件
- jbuiler 的问题
- 在执行 rs.previous(); 的时候,出现的错误
- java如何实现拨号连接???
- 感觉线程很难懂,看了thinking in java ,有很长时间了,最后还是对线程不怎么理解,尤其是对于一些线程运行的结果,很多都出乎意料
package com.dong.login;import com.dong.mainClient.Frame1;
import com.dong.regist.addNew;
import java.util.Vector;
import javax.swing.JOptionPane;import java.io.*;
import java.net.Socket;
import java.net.InetAddress;
import javax.swing.JPasswordField;/**
*
* @author Administrator
*/
public class LoginFrame extends javax.swing.JFrame {
String server;// 服务器名
static int serport = 9999;//服务器端口号
//static int serport = 10000;// 端口
// static int serport = 10001;// 端口
public int myqqlogin;
private Socket socket;
private BufferedReader in;// 输入输出流
private PrintWriter out;
public String userName;
/** Creates new form LoginFrame */
public LoginFrame() {
initComponents();
}
/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
// <editor-fold defaultstate="collapsed" desc=" 生成的代码 ">
private void initComponents() {
jOptionPane1 = new javax.swing.JOptionPane();
jLabel1 = new javax.swing.JLabel();
jTextField1 = new javax.swing.JTextField();
jLabel2 = new javax.swing.JLabel();
jButton1 = new javax.swing.JButton();
jButton2 = new javax.swing.JButton();
jButton3 = new javax.swing.JButton();
jPasswordField1 = new javax.swing.JPasswordField();
jTextField2 = new javax.swing.JTextField();
jTextField3 = new javax.swing.JTextField();
jLabel3 = new javax.swing.JLabel();
jLabel4 = new javax.swing.JLabel(); setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jLabel1.setText("\u7528\u6237\u540d\uff1a"); jLabel2.setText("\u5bc6\u7801\uff1a"); jButton1.setText("\u767b\u9646");
jButton1.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
jButton1MouseClicked(evt);
}
}); jButton2.setText("\u53d6\u6d88");
jButton2.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
jButton2MouseClicked(evt);
}
}); jButton3.setText("\u6ce8\u518c");
jButton3.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
ClickedToRegist(evt);
}
}); jTextField2.setText("192.168.3.46"); jTextField3.setText("9999"); jLabel3.setText("\u7aef\u53e3\uff1a"); jLabel4.setText("\u670d\u52a1\u5668\uff1a"); org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(layout.createSequentialGroup()
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(layout.createSequentialGroup()
.add(34, 34, 34)
.add(jButton1)
.add(36, 36, 36)
.add(jButton2)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 33, Short.MAX_VALUE)
.add(jButton3))
.add(layout.createSequentialGroup()
.addContainerGap()
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jLabel2)
.add(jLabel4, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 59, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
.add(18, 18, 18)
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jPasswordField1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 193, Short.MAX_VALUE)
.add(layout.createSequentialGroup()
.add(jTextField2, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 76, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(jLabel3, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 46, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 13, Short.MAX_VALUE)
.add(jTextField3, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 54, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
.add(jTextField1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 193, Short.MAX_VALUE))))
.add(56, 56, 56))
.add(layout.createSequentialGroup()
.addContainerGap()
.add(jLabel1)
.addContainerGap(278, Short.MAX_VALUE))
layout.setVerticalGroup(
layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(layout.createSequentialGroup()
.add(38, 38, 38)
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
.add(jLabel1)
.add(jTextField1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
.add(34, 34, 34)
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
.add(jLabel2)
.add(jPasswordField1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
.add(27, 27, 27)
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
.add(jTextField2, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(jTextField3, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(jLabel3)
.add(jLabel4))
.add(18, 18, 18)
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
.add(jButton1)
.add(jButton2)
.add(jButton3))
.addContainerGap(33, Short.MAX_VALUE))
);
pack();
}// </editor-fold>
private void jButton2MouseClicked(java.awt.event.MouseEvent evt) {
// TODO 将在此处添加您的处理代码:
System.exit(0);
}
private void jButton1MouseClicked(java.awt.event.MouseEvent evt) {
// TODO 将在此处添加您的处理代码://登陆button
userName = jTextField1.getText();
try{
myqqlogin=Integer.parseInt(userName);
}catch(NumberFormatException nfe){
JOptionPane.showMessageDialog(this, "请输入您的号码!", "", JOptionPane.ERROR_MESSAGE);
jTextField1.setText("");
jTextField1.requestFocus();
return;
}
System.out.println("myqqloginsfdsfdfsdfsf is :" + myqqlogin);
String passWord =new String(jPasswordField1.getPassword());
if(passWord == null || passWord.equals("")){
JOptionPane.showMessageDialog(this,"请输入密码","",JOptionPane.ERROR_MESSAGE);
jPasswordField1.setText("");
jPasswordField1.requestFocus();
return;
}
System.out.println("password is :" + passWord);
server=jTextField2.getText();
System.out.println("Server's ip is :" + server);
serport=Integer.parseInt(jTextField3.getText());
System.out.println("server's port is :" + serport);
//*****************
try{
Socket socket = new Socket(InetAddress.getByName(server), serport);// 连接服务器
System.out.println("connected to server");
BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
PrintWriter out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())), true);
out.println("login");// 告诉服务器我要登录
out.println(this.jTextField1.getText().trim());
out.println(this.jPasswordField1.getPassword());
System.out.println("the pwd:" + jPasswordField1.getPassword());
String str = " ";
}catch(IOException ex){
ex.printStackTrace();
}
//*****************
if (userName == null || userName.equals("")) {
// JOptionPane.showMessageDialog();
JOptionPane.showConfirmDialog(this,"用户名不能为空","提示",javax.swing.JOptionPane.OK_CANCEL_OPTION,javax.swing.JOptionPane.YES_NO_OPTION);
jTextField1.requestFocus();
jPasswordField1.setText("");
return;
}
//--------------------------------------------验证登陆
// -----------------------
// jTextField2 servername = new JTextField();
// ---------------------
try {
Vector myinfo = new Vector();
String myjicq = this.jTextField1.getText().trim();
server = jTextField2.getText();
//serport=Integer.parseInt(this.serverport.getText());
System.out.println("login button clicked");
Socket socket = new Socket(InetAddress.getByName(server), serport);// 连接服务器
System.out.println("connected to server");
BufferedReader in = new BufferedReader(new InputStreamReader(socket
.getInputStream()));
PrintWriter out = new PrintWriter(new BufferedWriter(
new OutputStreamWriter(socket.getOutputStream())), true);
out.println("login");// 告诉服务器我要登录
out.println(this.jTextField1.getText().trim());
out.println(this.jPasswordField1.getPassword());
System.out.println("the pwd:" + jPasswordField1.getPassword());
String str="";
do{
str=in.readLine().trim();
if (str.equals("pwderror"))
JOptionPane.showMessageDialog(this, "密码无效,请验证重输:-(",
"JICQ2007提示", JOptionPane.INFORMATION_MESSAGE);
else if (str.equals("usererror"))
JOptionPane.showMessageDialog(this, "您的JICQ号有误,请输入正确的JICQ号码",
"JICQ2007提示", JOptionPane.INFORMATION_MESSAGE);
else if (str.equals("false")){
JOptionPane.showMessageDialog(this, "对不起,服务器正忙,请稍后再试!",
"JICQ2007提示", JOptionPane.INFORMATION_MESSAGE);
return;
}
else{//登陆成功先接受自己的个人信息,然后打开主程序
Frame1 f1=new Frame1(myqqlogin,server,serport);
f1.setBounds(1040,400,240,595);
f1.setVisible(true);
//---------------------
//int g=Integer.parseInt(jTextField1.getText());
// MainWin f2=new MainWin(g,server,serport);
//f2.setVisible(true);
//=----------------------
this.dispose();
}
}while(!str.equals("ok"));
} catch (IOException ex) {
ex.printStackTrace();
}
import com.dong.regist.addNew;这两个包那里有?
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.border.*;
import java.net.*;class register implements ActionListener
{
private final int EXIT=2;
private JFrame frame;
private JPanel totalPanel,centerUpPanel,downPanel,subDownPanel,centerDownPanel;
private JTextField userName,myword,serverAddress;
private ImageIcon QQ;
private JLabel lShow,tName,tWord,voidLabel,addressLabel;
private JRadioButton g,b;
private ButtonGroup bg;
private Person p=null;
private Client c=null;
private JButton connectB,exitB,faceB;
register()
{
p=new Person();
frame=new JFrame("登陆");
QQ=new ImageIcon("frameImage/good.jpg");
lShow=new JLabel("welcome to chating here !",QQ,JLabel.CENTER);
lShow.setBackground(new Color(85,170,255));
lShow.setFont(new Font("华文隶书",Font.BOLD,22));
faceB=new JButton("图片");
faceB.addActionListener(this); g=new JRadioButton("gril",true);
b=new JRadioButton("boy");
bg=new ButtonGroup();
bg.add(g);
bg.add(b);
g.setBackground(new Color(85,170,255));
b.setBackground(new Color(85,170,255));
g.addActionListener(this);
b.addActionListener(this);
centerUpPanel=new JPanel();//the center panel
serverAddress=new JTextField("localhost",16);
serverAddress.setBorder(new EtchedBorder());
addressLabel=new JLabel("连接址");
addressLabel.setBorder(new EtchedBorder());
addressLabel.setForeground(Color.orange);
centerUpPanel.add(serverAddress);
centerUpPanel.add(addressLabel);
centerUpPanel.setBackground(Color.orange);
userName=new JTextField(16);
userName.addFocusListener(new FocusAdapter()
{
public void focusGained(FocusEvent fe)
{
userName.setText("");
userName.setToolTipText("用户名不能为空!");
}
});
userName.setBorder(new EtchedBorder());
tName=new JLabel("昵 称");
tName.setForeground(Color.orange);
tName.setBorder(new EtchedBorder());
centerDownPanel=new JPanel();
centerDownPanel.add(userName);
centerDownPanel.add(tName);
centerDownPanel.setBackground(Color.orange); downPanel=new JPanel();//the down pane
myword=new JTextField("键入我的个性语",16);
myword.addFocusListener(new FocusAdapter()
{
public void focusGained(FocusEvent fe)
{
myword.setText("");
myword.setToolTipText("按回车键登陆!"); }
}); userName.addKeyListener(new KeyAdapter()
{
public void keyPressed(KeyEvent ke)
{
if(ke.getKeyCode()==10)
{
if(userName.getText().length()==0){
myword.setEditable(true);
connectB.setEnabled(true);
serverAddress.setEnabled(true);
JOptionPane.showMessageDialog(frame,"用户名不能为空");
}
else
p.setName(userName.getText().trim());
}else if(ke.getKeyChar()=='#'&&ke.getKeyChar()=='%'&&ke.getKeyChar()=='&'){
userName.setText("");
JOptionPane.showMessageDialog(frame,"不能包含%、#、&!!!");
}
}
});
myword.addKeyListener(new KeyAdapter()
{
public void keyPressed(KeyEvent ke)
{
if(ke.getKeyCode()==10)
{
myword.setEditable(false);
connectB.setEnabled(false);
serverAddress.setEnabled(false);
c=new Client(serverAddress.getText().trim());
if(userName.getText().length()>0)
{
p.setWord(myword.getText().trim());
p.setName(userName.getText().trim());
frame.setVisible(false);
try
{
c.pw.println(p.toString());
if(c.br.readLine().equals("1"))
{
new Thread(new NewChatFrame(p,c)).start(); //用户名有效
}
else
{
frame.setVisible(true);
userName.setEditable(true);
connectB.setEnabled(true);
JOptionPane.showMessageDialog(frame,"用户名存在!");
userName.setText("");
c.socket.close();
}
}
catch (Exception e)
{
System.exit(0);
e.toString();
}
}
else
{
myword.setEditable(true);
connectB.setEnabled(true);
serverAddress.setEnabled(true);
JOptionPane.showMessageDialog(frame,"用户名不能为空!");
}
}else if(ke.getKeyChar()=='#'&&ke.getKeyChar()=='%'&&ke.getKeyChar()=='&'){
myword.setText("");
JOptionPane.showMessageDialog(frame,"不能包含%、#、&!!!"); }
}
});
myword.setBorder(new EtchedBorder());
userName.addFocusListener(new FocusAdapter()
{
public void focusGained(FocusEvent fe){
myword.setEditable(true);
connectB.setEnabled(true);
serverAddress.setEnabled(true);
}
});
tWord=new JLabel("个性语");
tWord.setForeground(Color.orange);
tWord.setBorder(new EtchedBorder());
downPanel.add(myword);
downPanel.add(tWord);
connectB=new JButton("登陆");
exitB=new JButton("退出");
connectB.addActionListener(this);
exitB.addActionListener(this);
connectB.setForeground(Color.red);
exitB.setForeground(Color.red);
voidLabel=new JLabel(new ImageIcon("frameImage/welcome.gif"));
subDownPanel=new JPanel();
subDownPanel.add(exitB);
subDownPanel.add(voidLabel);
subDownPanel.add(connectB);
subDownPanel.setBackground(new Color(85,170,255));
totalPanel=new JPanel();
totalPanel.setBackground(new Color(85,170,255));
totalPanel.add(lShow);
totalPanel.add(faceB);
totalPanel.add(g);
totalPanel.add(b);
totalPanel.add(centerUpPanel);
totalPanel.add(centerDownPanel);
totalPanel.add(downPanel);
totalPanel.add(subDownPanel);
frame.setIconImage(frame.getToolkit().getImage("face/85.gif"));
frame.add(totalPanel);
frame.setBounds(200,200,308,312);
frame.setVisible(true);
frame.setResizable(false);
frame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
frame.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent we){
if(c!=null){
if(c.socket.isConnected()==false)
System.exit(0);
else if(c.socket.isConnected()==true&&c.socket.isClosed()==false){
c.pw.println(EXIT+"&"+p.getName());
try
{
c.socket.close();
}
catch (IOException ioe)
{ System.out.println("socket close error");
}
finally{
System.exit(0);
}
}
}
else
System.exit(0);
}
});
}
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.border.*;
import java.net.*;class register implements ActionListener
{
private final int EXIT=2;
private JFrame frame;
private JPanel totalPanel,centerUpPanel,downPanel,subDownPanel,centerDownPanel;
private JTextField userName,myword,serverAddress;
private ImageIcon QQ;
private JLabel lShow,tName,tWord,voidLabel,addressLabel;
private JRadioButton g,b;
private ButtonGroup bg;
private Person p=null;
private Client c=null;
private JButton connectB,exitB,faceB;
register()
{
p=new Person();
frame=new JFrame("登陆");
QQ=new ImageIcon("frameImage/good.jpg");
lShow=new JLabel("welcome to chating here !",QQ,JLabel.CENTER);
lShow.setBackground(new Color(85,170,255));
lShow.setFont(new Font("华文隶书",Font.BOLD,22));
faceB=new JButton("图片");
faceB.addActionListener(this); g=new JRadioButton("gril",true);
b=new JRadioButton("boy");
bg=new ButtonGroup();
bg.add(g);
bg.add(b);
g.setBackground(new Color(85,170,255));
b.setBackground(new Color(85,170,255));
g.addActionListener(this);
b.addActionListener(this);
centerUpPanel=new JPanel();//the center panel
serverAddress=new JTextField("localhost",16);
serverAddress.setBorder(new EtchedBorder());
addressLabel=new JLabel("连接址");
addressLabel.setBorder(new EtchedBorder());
addressLabel.setForeground(Color.orange);
centerUpPanel.add(serverAddress);
centerUpPanel.add(addressLabel);
centerUpPanel.setBackground(Color.orange);
userName=new JTextField(16);
userName.addFocusListener(new FocusAdapter()
{
public void focusGained(FocusEvent fe)
{
userName.setText("");
userName.setToolTipText("用户名不能为空!");
}
});
userName.setBorder(new EtchedBorder());
tName=new JLabel("昵 称");
tName.setForeground(Color.orange);
tName.setBorder(new EtchedBorder());
centerDownPanel=new JPanel();
centerDownPanel.add(userName);
centerDownPanel.add(tName);
centerDownPanel.setBackground(Color.orange); downPanel=new JPanel();//the down pane
myword=new JTextField("键入我的个性语",16);
myword.addFocusListener(new FocusAdapter()
{
public void focusGained(FocusEvent fe)
{
myword.setText("");
myword.setToolTipText("按回车键登陆!"); }
}); userName.addKeyListener(new KeyAdapter()
{
public void keyPressed(KeyEvent ke)
{
if(ke.getKeyCode()==10)
{
if(userName.getText().length()==0){
myword.setEditable(true);
connectB.setEnabled(true);
serverAddress.setEnabled(true);
JOptionPane.showMessageDialog(frame,"用户名不能为空");
}
else
p.setName(userName.getText().trim());
}else if(ke.getKeyChar()=='#'&&ke.getKeyChar()=='%'&&ke.getKeyChar()=='&'){
userName.setText("");
JOptionPane.showMessageDialog(frame,"不能包含%、#、&!!!");
}
}
});
myword.addKeyListener(new KeyAdapter()
{
public void keyPressed(KeyEvent ke)
{
if(ke.getKeyCode()==10)
{
myword.setEditable(false);
connectB.setEnabled(false);
serverAddress.setEnabled(false);
c=new Client(serverAddress.getText().trim());
if(userName.getText().length()>0)
{
p.setWord(myword.getText().trim());
p.setName(userName.getText().trim());
frame.setVisible(false);
try
{
c.pw.println(p.toString());
if(c.br.readLine().equals("1"))
{
new Thread(new NewChatFrame(p,c)).start(); //用户名有效
}
else
{
frame.setVisible(true);
userName.setEditable(true);
connectB.setEnabled(true);
JOptionPane.showMessageDialog(frame,"用户名存在!");
userName.setText("");
c.socket.close();
}
}
catch (Exception e)
{
System.exit(0);
e.toString();
}
}
else
{
myword.setEditable(true);
connectB.setEnabled(true);
serverAddress.setEnabled(true);
JOptionPane.showMessageDialog(frame,"用户名不能为空!");
}
}else if(ke.getKeyChar()=='#'&&ke.getKeyChar()=='%'&&ke.getKeyChar()=='&'){
myword.setText("");
JOptionPane.showMessageDialog(frame,"不能包含%、#、&!!!"); }
}
});
myword.setBorder(new EtchedBorder());
userName.addFocusListener(new FocusAdapter()
{
public void focusGained(FocusEvent fe){
myword.setEditable(true);
connectB.setEnabled(true);
serverAddress.setEnabled(true);
}
});
tWord=new JLabel("个性语");
tWord.setForeground(Color.orange);
tWord.setBorder(new EtchedBorder());
downPanel.add(myword);
downPanel.add(tWord);
connectB=new JButton("登陆");
exitB=new JButton("退出");
connectB.addActionListener(this);
exitB.addActionListener(this);
connectB.setForeground(Color.red);
exitB.setForeground(Color.red);
voidLabel=new JLabel(new ImageIcon("frameImage/welcome.gif"));
subDownPanel=new JPanel();
subDownPanel.add(exitB);
subDownPanel.add(voidLabel);
subDownPanel.add(connectB);
subDownPanel.setBackground(new Color(85,170,255));
totalPanel=new JPanel();
totalPanel.setBackground(new Color(85,170,255));
totalPanel.add(lShow);
totalPanel.add(faceB);
totalPanel.add(g);
totalPanel.add(b);
totalPanel.add(centerUpPanel);
totalPanel.add(centerDownPanel);
totalPanel.add(downPanel);
totalPanel.add(subDownPanel);
frame.setIconImage(frame.getToolkit().getImage("face/85.gif"));
frame.add(totalPanel);
frame.setBounds(200,200,308,312);
frame.setVisible(true);
frame.setResizable(false);
frame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
frame.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent we){
if(c!=null){
if(c.socket.isConnected()==false)
System.exit(0);
else if(c.socket.isConnected()==true&&c.socket.isClosed()==false){
c.pw.println(EXIT+"&"+p.getName());
try
{
c.socket.close();
}
catch (IOException ioe)
{ System.out.println("socket close error");
}
finally{
System.exit(0);
}
}
}
else
System.exit(0);
}
});
}