웹프로젝트
- 객체 지향 JAVA_객체지향_프로그래밍 [1] 절차 지향 프로그램 (1) 정의 시간이나 사건의 흐름에 따른 절차 (2) 종류 C언어 [2] 객체 지향 프로그램 (1) 정의 구체적이나 추상적인 데이터를 객체화 하여 각 객체간의 협력이 생긴다 (2) 종류 JAVA (3) 목표 객체 정의 객체 역할 기능 구현 객체 간의 협력 [3] 객체 지향 프로그래밍 구현 객체 간의 협력을 통해 객체지향 프로그램을 구현한다 (1) 객체를 구분합니다 학생A와 학생B는 각각 버스와 지하철을 타고 학교에 갑니다. 학생A는 5000원을 가지고 있었고, 100번 버스를 타면서 1000원을 지불합니다. 학생B는 10000원을 가지고 있었고, 5호선 지하철을 타면서 1200원을 지불합니다. >결과 각 학생별 남은돈을 출력합니다 버스의 승객수와 수입을 출력합니다 지하철의 승객.. 더보기
스프링 프레임워크
스프링_OOP 5대 설계원칙 - S O L I D
[1] OOP 5대 설계원칙 - S O L I D (1) SRP 단일 책임 원칙 단일 책임의 원칙 하나의 메서드는 하나의 책임을 맡아야한다 YoilTeller 라는 메서드는 내부적으로 입력, 처리, 출력의 책임 3가지를 포함하고 있기 때문에 좋은 코드 분리가 아니다. 입력 메서드 , 처리메서드, 출력메서드로 3가지로 나눴어야한다 분리의 중요성 1. 관심사 cpmcerms 의 분리 2. (comman 코드 )변하는 것과 (uncomman코드)변하지 않는것의 분리 3. 중복 공통 코드의 분리 (2) OCP 개방 폐쇄 원칙 (3) LSP 리스코프 치환 원칙 (4) ISP 인터페이스 분리 원칙 (5) DIP 의존관계 원칙
더보기게시물이 존재할 경우 아래에 최신순 4건이 배열됩니다
- 오류_스프링_적어도 하나의 JAR가 TLD들을 찾기 위해 스캔되었으나 아무 것도 찾지 못했습니다. 스캔했으나 TLD가 없는 JAR들의 전체 목록을 보시려면, 로그 레벨을 디버그 레벨로 설정하십시오. [상황] 적어도 하나의 JAR가 TLD들을 찾기 위해 스캔되었으나 아무 것도 찾지 못했습니다. 스캔했으나 TLD가 없는 JAR들의 전체 목록을 보시려면, 로그 레벨을 디버그 레벨로 설정하십시오. 스캔 과정에서 불필요한 JAR들을 건너뛰면, 시스템 시작 시간과 JSP 컴파일 시간을 단축시킬 수 있습니다. 적어도 하나의 JAR가 TLD들을 찾기 위해 스캔되었으나 아무 것도 찾지 못했습니다. 스캔했으나 TLD가 없는 JAR들의 전체 목록을 보시려면, 로그 레벨을 디버그 레벨로 설정하십시오. 스캔 과정에서 불필요한 JAR들을 건너뛰면, 시스템 시작 시간과 JSP 컴파일 시간을 단축시킬 수 있습니다. 9월 08, 2023 6:14:09 오후 org.apache.jasper.servlet.TldScanner sca.. 더보기
- 🌻 웹프로젝트_[9] 오라클_MyBatis 페이징 처리 [1] 페이징 처리 (1) 필요조건 페이지 번호 페이지 당 데이터 갯수 [2] 페이징 기본 구축 (1) criteria.java 현재 페이지 넘버 pageNum 페이지의 데이터 갯수 amount (2) BoardMapper 인터페이스 페이징 처리하는 메서드 추가 (3) boardMapper.xml 오라클 힌트를 사용해야하므로 부등호 < 를 써야하는데 인식 오류가 일어나기 때문에 를 사용하면 부등호를 사용할수 있다 추출한 데이터 20개 중에서 10개를 조회해라 (4) BoardMapper Test paging 설계한대로 10개가 조회됨 [5] 페이징 설계 반영 (1) boardMapper.xml 아까 입력했던 20개 , 10개를 변수로 수정한다 (1-1) boardMapperTest (2) boardSer.. 더보기
- 오류_프로덕션 환경들에서 최적의 성능을 제공하는, APR 기반 Apache Tomcat Native 라이브러리가, 다음 java.library.path에서 발견되지 않습니다: [/Users/min/Library/Java/Extensions:/Library/Java/Extensions:/Network/Lib.. [상황] 오류_프로덕션 환경들에서 최적의 성능을 제공하는, APR 기반 Apache Tomcat Native 라이브러리가, 다음 java.library.path에서 발견되지 않습니다: [/Users/min/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:.] [해결] 톰캣 server.xml 주석 maven lib 삭제후 maven-update, run-as :maven install 톰캣 clean 실행 더보기
- 웹프로젝트_ [5] STS4 + DB MySQL 연결 [1] DB 연결 준비 (1) DB 계정을 준비한다. MySQL Workbench 에 들어가서 만들어진 데이터 베이스 정보를 가져올수 있도록 연결한다. mar1101/ 1111 (2) maven spring JDBC 또는 MySQL Connector/j 추가 STS4에 MySQL을 연결하기 위해 maven의 스프링 JDBC 또는 MySQL Connecotr/J 를 추가한다 https://mvnrepository.com/artifact/org.springframework/spring-jdbc https://mvnrepository.com/artifact/com.mysql/mysql-connector-j 복사해서 pom.xml 파일에 내용을 추가한다 (3) DB 계정 연동 객체 생성 MySQL을 연결하는 객.. 더보기
- 자료구조_검색 ⑤ 블록검색 [1] 블록 검색 (1) 블록검색 개요 초기 데이터를 여러 개의 블록으로 분리하여 검색한다 블록 내부의 데이터는 정렬과 상관없지만 블록간은 정렬이 되어있어야함 블록 내에서 순차 검색한다 (2) 블록 검색 과정 데이터의 개수가 16개라면 제곱근을 구하면 4가 되므로 각 블록은 4개의 데이터로 구성한다 각 블록의 최대값인 key를 검색하여 선택하고 블록 내 순차검색하여 검색한다 더보기
- CSS @include 중복 코드 관리 [1] 중복코드 (1) @include html 로 작성된 구조 중에서 헤더header , 사이드sidebar , 풋터 footer 처럼 중복으로 코드를 설정해야하는경우 각각의 jsp 파일에 적용해도 되지만 코드가 길어질수록 구분도 불편하기 때문에 중복되는 코드를 별도로 빼서 관리한다. (2) 사용법 views의 jsp 파일의 모임에서 include 폴더에 중복묶음을 할 파일을 따로 빼둔다 각각의 footer.jsp 와 siderbar.jsp 에 해당하는 부분의 코드를 입력한다 jsp 파일에 넣어야하는 sidebar 와 footer 위치에 연결시킨다 더보기
- 아마존 aws EC2 RDP 연결오류 0x204 [상황] 가상서버 윈도우에서 방화벽에 원격 설정하려다 로딩 오류가 나서 껐는데 이후 같은 방법으로 가상서버에 들어가려고 하니 오류가 난다 [해결] 인스턴스를 종료하고 새로 만들었다. 더보기
- 오류_심각: Context initialization failed org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Unable to locate Spring NamespaceHandler for XML schema namespace [http://www.springframework.org/schema/tx] Of.. [상황] 심각: Context initialization failed org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Unable to locate Spring NamespaceHandler for XML schema namespace [http://www.springframework.org/schema/tx] Offending resource: ServletContext resource [/WEB-INF/spring/root-context.xml] [해결] pom.xml 에 해당 내용 미추가해서 발생하였음 더보기
- MBTI 또 바뀌었네 INTP 논리술사 내가 오늘 써 내려가는 이 글은 MBTI 무료성격유형검사를 통해 알아보았는데 원래 정석대로라면 심리학에서 검사하는 정식검사지를 통해 3시간 동안 200개 이상의 문항을 체크하여 결과를 도출해야하는걸로는 알고 있다. 성격은 지금 현재 환경적인 요인에 따라 어느쪽이 더 가까운지 파악하는것이다 보니 6개월에 1번씩 검사해서 동일한 MBTI가 나오면 나의 기본성향이 이 MBTI구나 하게되고 6개월 전과 다르게 나온다면 환경적인 요소가 영향을 주었는지 파악하고 이후 6개월에도 동일하게 나오는지 알아본다. MBTI는 계속 변화하고 내가 인지하지 못한 내면의 심리에 대해 조금 더 파악하기 위한 도움이 되는 자료라고 보면 될것 같다 무료 성격유형검사 | 16Personalities 자신의 성격 유형이 삶의 여러 영역에.. 더보기
- 스프링_ 데이터 객체 DAO + 트랜잭션 서비스 [1] 트랜잭션 서비스 (1) DAO 만들기 A1Dao B1Dao 같은 구조를 가진 DAO 만들기 (2) MySQL DB 테이블 만들기 key, value로 구성된 DB 2개 만들기 (3) 트랜잭션 서비스 만들기 (4) 트랜잭션 서비스 테스트 실행하기 각각의 트랜잭션이 서로 다르게 실행된다 transactional 을 코드 작성하고 실행시 계속 오류가 뜸 . 수정할수 있도록 구글링과 카페에서 찾아봤지만 해결방법을 못찾음 ... 더보기 INFO : org.springframework.test.context.support.DefaultTestContextBootstrapper - Loaded default TestExecutionListener class names from location [META-INF.. 더보기
- 웹프로젝트_ [5] 유료 인텔리제이 + DB MySQL 연결 [1] 유료버전 인텔리제이 & DB 연결 유료버전 인텔리제이는 데이터베이스를 연결하는 탭이 따로 있다 데이트베이스의 정보를 입력해준다 인텔리제이와 MySQL 연결완료 MySQL Workbench를 열지 않아도 인텔리제이에서 가능하다 인텔리제이 내부에서 직접적으로 MySQL 의 쿼리를 작성할수 있다 인텔리제이 화면에서 MySQL의 커밋 , 롤백 , 오토 커밋 선택하는 방법 인텔리제이 화면에서 MySQL의 자동 insert문 만드는 방법 인텔리제이 화면에서 MySQL의 쿼리문 실행시 한줄씩만 실행되는 단축키 확인 인텔리제이 화면에서 MySQL Workbench 처럼 테이블표가 확인이 가능하다 MySQL 워크벤치에서와 똑같이 유료 인텔리제이에서 사용이 가능하다 더보기
- 웹프로젝트_ [1] 회원가입 화면 만들기 [1] 회원가입 화면 만들기 (1) HTML , CSS , javaScript 디자인 폼 만들기 form 에 action =" 전송할 URL 지정 또는 디폴트 자기자신 method = "Get 또는 Post 또는 디폴트 Get 설정해줘야한다 (2) JSP 를 설정하여 값을 전송받아 출력하게 만든다 (3) 전송방식을 Post로 수정한다 입력하지 않으면 자동으로 GET으로 적용된다 주소에 요청메세지에 넣은 값이 보여지지 않는다 (4) SNS 배열로 받아오도록 정보를 수정하자 SNS = facebook&kakaotalk&instagram 으로 동시에 같은 값을 가지고 있는데 JSP 파일에 sns 값을 하나만 가져오도록 설정했기 때문에 배열로 선택한 전부 출력되도록 바꾸자 String[] snsArr = reg.. 더보기