Пред.
След.
Макеты страниц
Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике ДЛЯ СТУДЕНТОВ И ШКОЛЬНИКОВ ЕСТЬ
ZADANIA.TO
ПРИЛОЖЕНИЕ 3. Исходный код сервера приложения 2
package primer_2; import java.net.*; import java.io.*; public class ServerForm extends java.awt.Frame implements Runnable { public final static int PORT = 220; Socket sock = null; BufferedReader in = null; FileWriter fw = null; BufferedWriter out = null; Thread t = new Thread(this); /** Создаем новое окно сервера */ public ServerForm() { initComponents(); } private void initComponents() { list1 = new java.awt.List(); textField1 = new java.awt.TextField(); button1 = new java.awt.Button(); button2 = new java.awt.Button(); button3 = new java.awt.Button(); setTitle("Server"); addWindowListener(new java.awt.event.WindowAdapter() { public void windowClosing(java.awt.event.WindowEvent evt) { exitForm(evt); } }); setLayout(null); add(list1); list1.setBounds(30, 90, 160, 150); add(textField1); textField1.setBounds(30, 50, 160, 20); button1.setLabel("Send"); button1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { button1ActionPerformed(evt); } }); add(button1); button1.setBounds(240, 50, 110, 24); button2.setLabel("Connect"); button2.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { button2ActionPerformed(evt); } }); add(button2); button2.setBounds(250, 200, 110, 24); button3.setLabel("Close"); button3.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { button3ActionPerformed(evt); } }); add(button3); button3.setBounds(250, 150, 100, 24); setBounds(500, 500, 400, 300); } /** Завершение приложения */ private void exitForm(java.awt.event.WindowEvent evt) { System.exit(0); } private void button1ActionPerformed(java.awt.event.ActionEvent evt) { // Получаем строку от пользователя и передаем клиенту try{ String data = textField1.getText(); out.write(data); out.newLine(); out.flush(); } catch(Exception e){} } private void button2ActionPerformed(java.awt.event.ActionEvent evt) { // Устанавливаем соединение connect(); } private void button3ActionPerformed(java.awt.event.ActionEvent evt) { // Закрываем файл данных, потоки и соединение try { fw.close(); in.close(); out.close(); sock.close(); } catch(Exception e){} } public void run(){ String indata_; try { //Читаем в цикле данные while(true) { indata_ = in.readLine(); //Отображаем в компоненте list1.add(indata_); //Записываем в файл fw.write(indata_); } } catch(Exception e){} } public void connect() { try { //Создаем серверный сокет ServerSocket ss = new ServerSocket(PORT); sock = ss.accept(); //Получаем потоки in = new BufferedReader(new InputStreamReader(sock.getInputStream())); out = new BufferedWriter(new OutputStreamWriter(sock.getOutputStream())); //Запускаем подпроцесс t.start(); //Открываем файл данных fw = new FileWriter("messageServ.txt"); } catch (Exception ex) { System.out.println(" ошибка "); } } public static void main(String args[]) { java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new ServerForm().setVisible(true); } }); } // Variables declaration - do not modify private java.awt.Button button1; private java.awt.Button button2; private java.awt.Button button3; private java.awt.List list1; private java.awt.TextField textField1; // End of variables declaration }
|
1 |
Оглавление
|