。゚(*´□`)゚。

코딩의 즐거움과 도전, 그리고 일상의 소소한 순간들이 어우러진 블로그

분류 전체보기 399

[Spring 입문] 4. 스프링 빈과 의존관계

스프링 빈(Spring Bean) 스프링 프레임워크에서 관리되는 객체 스프링은 객체 지향 프로그래밍의 장점을 활용하여 애플리케이션을 개발하는데, 이때 많은 객체들이 생성되고 관리되어야 합니다. 스프링 빈은 이러한 객체들을 스프링 컨테이너가 생성, 관리, 조립하여 제공하는 것입니다. 특징: 생성과 소멸의 관리: 스프링 컨테이너가 객체의 생성과 소멸을 담당하므로 개발자는 객체의 생명주기를 직접 다룰 필요가 없습니다. 의존성 주입(Dependency Injection): 스프링은 빈을 생성하고 조립할 때 의존성 주입(DI)을 통해 필요한 의존 객체들을 자동으로 주입합니다. 이로써 객체 간의 결합도가 낮아지며 유지보수와 테스트 용이성이 향상됩니다. 스코프 관리: 스프링은 빈의 스코프를 관리하며, 싱글톤, 프로토..

강의/Spring 2023.12.11

[Spring 입문] 3. 회원 도메인 개발

일반적인 웹 어플리케이션 구조 컨트롤러: 웹 MVC의 컨트롤러 역할 서비스: 핵심 비즈니스 로직 구현 리포지토리: 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리 도메인: 비즈니스 도메인 객체, 예) 회원, 주문, 쿠폰 등등 주로 데이터베이스에 저장하고 관리됨 회원 객체 public class Member { private Long id; private String name; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } } 회원 ..

강의/Spring 2023.12.11

[JSP 게시판 만들기] 14. 웹 사이트 메인 페이지 디자인

jumbotron 폰트꾸미기 캐러셀 만들기 폰트꾸미기 위한 css 파일 생성 @import url(http://fonts.googleapis.com/earlyaccess/nanumgothic.css); @import url(http://fonts.googleapis.com/earlyaccess/hanna.css); * { font-family : 'Nanum Gothic'; } h1 { font-family : 'Hanna'; } main 페이지 웹사이트 소개 이 웹사이트는 부트스트랩으로 만든 JSP 웹 사이트입니다. 최소한의 간단한 로직만을 이용해서 개발했습니다. 디자인 템플릿으로는 부트스트랩을 사용했습니다. 포트폴리오 전체보기 캐러셀 만들기!

[JSP 게시판 만들기] 13. 게시글 수정 및 삭제 기능 구현하기

onclick BbsDAO 에 update 메서드 추가 post method 설정 및 기존 글 내용 출력되게 표시 게시판 글수정 양식 넘어온 BbsTitle과 BbsContent 값이 null이거나 빈문자열인 경우 체크 if (request.getParameter("bbsTitle") == null || request.getParameter("bbsContent") == null || request.getParameter("bbsTitle").equals("") || request.getParameter("bbsContent").equals("")) { update 메서드 실행 BbsDAO BbsDAO = new BbsDAO(); int result = BbsDAO.update(bbsID, request..

[JSP 게시판 만들기] 12. 게시판 보기 기능 구현하기

는 JSP(JavaServer Pages)에서 사용되는 스크립트릿(scriptlet) 태그입니다. 이 태그 안에 포함된 코드는 JSP 페이지를 서블릿으로 변환할 때 자바 코드로 처리됩니다. 는 표현식(expression) 태그로, 그 안에 있는 값이 출력됩니다. 로그인 유저와 글쓴이가 같으면 수정&삭제 버튼 띄우기 수정 삭제 글 목록에서 게시글 제목 선택해서 들어가서 글 보기 게시글 번호에 맞는 내용 출력하기 위한 메서드 생성 public Bbs getBbs(int bbsID) { String SQL = "SELECT * FROM BBS WHERE bbsID=?"; try { PreparedStatement pstmt = conn.prepareStatement(SQL); pstmt.setInt(1, bb..

[JSP 게시판 만들기] 11. 게시판 글 목록 기능 구현하기

게시글 리스트 만들기 getNext()는 다음에 쓰여질 게시글 번호이기 때문에 -1 Limit 10을 주었기 때문에 한 페이지에는 게시글 10개가 담김. 따라서 가장 최신의 게시물부터 10번째 이전의 게시물까지 가져옴 public ArrayList getList(int pageNumber) { String SQL = "SELECT BBS WHERE bbsID < ? AND bbsAvailable = 1 ORDER BY bbsID DESC LIMIT 10"; ArrayList list = new ArrayList(); try { PreparedStatement pstmt = conn.prepareStatement(SQL); pstmt.setInt(1, getNext() - (pageNumber - 1) *..

[JSP 게시판 만들기] 10. 글쓰기 기능 구현하기

td 속 tr로 한 줄씩 표현 input type="text" || textarea [화면] 게시판 글쓰기 양식 BbsDAO 객체 생성 DAO: 데이터 접근 객체 DB 연결, 게시글 번호와 현재 시간 호출 함수, INSERT 실행함수 package bbs; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; public class BbsDAO { private Connection conn; //Connection 객체는 데이터베이스와의 연결 private ResultSet rs; //데이터베이스에서 가져온 결과를 저장하고 조회하는 데 사용 p..

[JSP 게시판 만들기] 7. 접속한 회원 세션 관리하기

세션: 현재 접속한 회원에 할당하는 고유 ID 로그인한 유저에게 세션 ID를 부여하는 것으로 부터 세션 관리 시작이라 할 수 있음. 로그인 성공했을 때 세션ID 부여하는 코드 추가 session.setAttribute("userID", user.getUserID()); 로그아웃 시엔 회수 회원가입 후에도 세션을 부여하기 때문에 이미 로그인한 유저는 회원가입 & 로그인에 접근 막기 String userID = null; if(session.getAttribute("userID") != null) { userID = (String) session.getAttribute("userID"); } if (userID != null) { PrintWriter script = response.getWriter(); ..