글
3월, 2023의 게시물 표시
단체 채팅 구현
- 공유 링크 만들기
- X
- 이메일
- 기타 앱
import java.io.DataInputStream; import java.io.DataOutputStream; import java.net.ServerSocket; import java.net.Socket; import java.util.LinkedList; import java.util.List; public class Server { static List<DataOutputStream> outs; public static void main(String[] args) { try { ServerSocket serverSocket = new ServerSocket(2400); outs = new LinkedList(); Socket socket; DataOutputStream out; while (true) { socket = serverSocket.accept(); new Broadcaster(new DataInputStream(socket.getInputStream()), out = new DataOutputStream(socket.getOutputStream())).start(); outs.add(out); } } catch (Exception e) { e.printStackTrace(); } } static class Broadcaster extends Thread { DataInputStream in; DataOutputStream out; Broadcaster(DataInputStream in, DataOutputStream out) { this.in = in; this.out = out; } @Override public void run() { while (true) { try { String message = in.readUTF(); for (DataOutputStream ou...
자바스크립트 구구단 document.write
- 공유 링크 만들기
- X
- 이메일
- 기타 앱
let table = '<table border="1">'; for (let r = 0; r < 10; r++) { table += '<tr>'; for (let c = 1; c < 10; c++) { table += r == 0 ? '<th>' : '<td>'; table += r == 0 ? (c == 1 ? '' : c + '단') : (c == 1 ? r : c + ' x ' + r + ' = ' + c * r); table += r == 0 ? '</th>' : '</td>'; } table += '</tr>'; } table += '</table>'; document.write(table);
세미 프로젝트 작업일지 7일차
- 공유 링크 만들기
- X
- 이메일
- 기타 앱
2023-03-04 7일차 공부를 하면서 드디어 프로세스가 머리속에 만들어짐. 기존 패턴: 뷰-컨트롤러-모델-DB - 스레드 1개 새 패턴 : Server.java - 무한으로 연결요청 계속 받는 서버. FrongEnd.java - 서버에 연결요청을 하는 클라이언트. Controller.java - 서버에 연결되면 클라이언트에게 생성해주는 서비스 스레드 뷰-소켓-컨트롤러-모델-DB x n개 스레드 생성 배운점: "\n"을 포함해서 전송하려면 PrintWriter는 안되고 DataOutputStream.writeUTF를 쓰면된다. 스캐너의 nextInt 대신 nextLine을 쓰면 try catch를 줄일수 있다. 스캐너 외에 InputStreamReader도 System.in을 파라미터로 넣으면 키보드 입력을 받을 수 있다. 할일: 여러 클라이언트 연결중, 새로운 글이 올라오면 모든 클라이언트에게 그 메시지를 전송하는 로직을 만들 수 있을까? FrontEnd 클래스 과부하. 가능하면 다른 클래스로 분산. DAO 함수 데이터 타입 정리. AuthBean 사용할만한 곳 찾아서 활용. https://github.com/byulsdeep/cliForumSocket
세미 프로젝트 작업일지 4, 5일차
- 공유 링크 만들기
- X
- 이메일
- 기타 앱
2023-03-02 어제 부터 이틀간 밤샘작업 중 회원가입 유효성 확인 추가 등 마무리 회원가입하면서 만든 패턴으로 로그인도 마무리 PageUtils와 ServiceUtils 클라스 ProjectUtils로 통합 ViewRules -> PageRules, ModelRules -> ServiceRules로 이름변경 신규 클래스 : Authentication - 회원가입, 로그인 백엔드 PostBean - 게시글 캡슐화용 클래스 ForumPage - 게시판 프론트엔드 Forum - 게시판 백엔드 신규 db : posts.txt - 게시판 db 게시판 글 쓰기, 글 목록 불러오기까지 완성 게시글 저장 양식: 행당 한 게시글 정보 열은 "|" 로 분리 사용자가 입력한 "\n"는 "<newLine>"으로 저장하고 불러올때 "\n"으로 replace 함 Json 복습하기 귀찮아서 선택한 방식 배운점 : BufferedWriter를 Writer 보다 먼저 close 해야한다.