📄 jserver.java
字号:
/* * JServer.java * * Created on 2008年4月8日, 下午11:38 *//** * * @author Owner */import java.awt.*;import java.awt.event.*;import java.io.*;import java.net.*;public class JServer extends javax.swing.JFrame implements Runnable { Thread readThread ; ServerSocket serverSock; public final static int DEFAULT_PORT=6666; PrintWriter out; BufferedReader in=null; boolean isTrue=true; /** Creates new form JServer */ public JServer() { try{ initComponents(); }catch(Exception e){ e.printStackTrace(); } serverListen(); } /** 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="Generated Code">//GEN-BEGIN:initComponents private void initComponents() { jScrollPane1 = new javax.swing.JScrollPane(); jTextArea1 = new javax.swing.JTextArea(); jTextField1 = new javax.swing.JTextField(); jButton1 = new javax.swing.JButton(); setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); jTextArea1.setColumns(20); jTextArea1.setRows(5); jScrollPane1.setViewportView(jTextArea1); jButton1.setText("发送"); jButton1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton1ActionPerformed(evt); } }); 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() .addContainerGap() .add(jScrollPane1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 380, Short.MAX_VALUE)) .add(layout.createSequentialGroup() .add(32, 32, 32) .add(jTextField1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 225, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE) .add(29, 29, 29) .add(jButton1))) .addContainerGap()) ); layout.setVerticalGroup( layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING) .add(layout.createSequentialGroup() .addContainerGap() .add(jScrollPane1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 242, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE) .add(27, 27, 27) .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE) .add(jTextField1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 35, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE) .add(jButton1)) .addContainerGap(21, Short.MAX_VALUE)) ); pack(); }// </editor-fold>//GEN-END:initComponents private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed sendInformation();// TODO add your handling code here: }//GEN-LAST:event_jButton1ActionPerformed public void processMsg(String str){// jTextArea1.append(str); jTextArea1.append("\n"); } public void serverListen(){ try{ serverSock=new ServerSocket(DEFAULT_PORT); }catch(IOException e){ processMsg(e.toString()); processMsg("server failed!\n"); } processMsg("server listening on port:"+DEFAULT_PORT); readThread=new Thread(this); readThread.start(); } public void run(){ isTrue=true; String msg; while(isTrue){ try{ Socket clientSock=serverSock.accept(); processMsg("用户访问服务器"); in=new BufferedReader(new InputStreamReader(clientSock.getInputStream())); out=new PrintWriter(clientSock.getOutputStream()); msg=in.readLine(); if(msg!=null){ processMsg(msg); } } catch(IOException e){ processMsg(e.toString()); } } try{ clientSock.close(); in.close(); out.close(); }catch(IOException ei){;} //endConnect(); }public void sendInformation() { out.println(jTextField1.getText()); out.flush(); } /** * @param args the command line arguments */ public static void main(String args[]) { JServer c=new JServer();c.show(); } // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JButton jButton1; private javax.swing.JScrollPane jScrollPane1; private javax.swing.JTextArea jTextArea1; private javax.swing.JTextField jTextField1; // End of variables declaration//GEN-END:variables }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -