웹개발 15

tomcat이 심볼릭 링크를 보도록 허용 하는 법

tomcat 서버 webapps 하위의 소스 경로에 심볼릭링크를 추가해야 하는 경우가 있었다. 내 tomcat 서버 버전은 8.5였고.. 별 짓을 다해보는데도 tomcat이 심볼릭링크 경로를 찾지 못했다.(찾지 못한 것인지 보안 때문에 막아 놓은거 때문인지.. 아마 후자인 듯 하다) 별 짓을 다 해봤으나.. 아래 블로그를 보고 바로 해결.. 감사합니다.. https://lalalaho.tistory.com/34 톰켓 심볼릭 링크 인식하기 한동안 톰켓 6버전만 사용하고 7버전때 잠깐 고생했던거 같은데 1년전이라 기억도 안남. 심볼릭링크로 연결된 upload 폴더가 톰켓 8.5버전에서 인식이 안됨. 이것 저것 다 시도 해봤으나 적용 안됨. lalalaho.tistory.com context.xml 파일에 아..

웹개발/인프라 2023.04.19

form 데이터를 VO List로 받기

Form 데이터를 controller 에서 VO List로 받을 일이 있을 때 사용하면 좋을 듯 함. https://tjdguqdl.tistory.com/54?category=908348 HTML FORM 데이터 @ModelAttribute list로 받기 VO를 사용할 때 List Type 을 사용하여 여러 FormTag를 리스트(배열)로 받는 예제이다. 한 Form 에서 전송할 때 보통은 VO 를 하나만 매칭시켜서 Controller 에서 받는다. 근데 나는 한 Form 에서 전송하고 Cont tjdguqdl.tistory.com 정리는 이따가

웹개발/jQuery 2023.02.01

[에러] java.lang.ClassNotFoundException: org/apache/jsp/WEB_002dINF/views/ 에러 해결

jsp 파일이 있는 경로 중 폴더 명칭을 변경하였더니 controller의 경로를 맞게 설정하여도 java.lang.ClassNotFoundException: org/apache/jsp/WEB_002dINF/views/ 에러가 계속 발생하면서 jsp 경로를 찾지 못했다. clean도 해보고 빌드도 해보고 톰캣과 이클립스도 껏다 켜보다가 jsp를 컴파일한 클래스들이 모여있는 디렉토리를 지우고 톰캣을 재실행하면 된다는 글을 확인했다. 아마 jsp 컴파일 클래스들이 당연하게도 경로가 그대로 컴파일 되어 있을텐데 이게 갱신이 안되니.. 지워버리고 강제로 갱신되게 하는 듯 보였고.. 그대로 따라 해보니 성공이었다. jsp 컴파일 클래스 디렉토리 확인하는 법은 아래와 같다. 1. 서버 더블클릭하여 Overview에..

웹개발/인프라 2022.12.13

멀티쓰레드

Multi Thread 일반적으로 하나의 프로세스는 하나의 스레드를 가지고 작업을 수행한다. 멀티 쓰레드는 당연하게도 둘 이상의 스레드가 동시에 작업하는 것을 의미한다. 그리고 멀티 프로세스(Multi Process)는 여러 개의 CPU를 사용하여 여러 프로세스를 실행하는 것을 의미한다. 멀티 프로세스는 각 프로세스가 독립적인 메모리를 가지고 동작하지만, 멀티 스레드는 각 스레드가 자신이 속한 프로세스의 메모리를 공유한다는 점에서 차이가 있다. Context Switching 컴퓨터에서 동시에 처리할 수 있는 최대 작업 수는 CPU의 코어 수와 동일하다. 만약 CPU의 코어 수보다 많은 스레드가 실행 된다면 각 코어가 정해진 시간동안 여러 작업을 번갈아 가면서 수행하게 된다. 이때 각 스레드가 작업을 번..

웹개발/개념 2022.10.12

[JAVA] String, Stringbuilder, Stringbuffer 차이점

String과 Stringbuilder/Stringbuffer 클래스의 가장 큰 차이점은 String은 불변의 속성을 갖는 다는 점이다. 이게 무슨 말이냐면 String으로 선언된 다음과 같은 코드의 경우 String str = "hi"; // String str = new String("hi"); 와 동일 str = str + " loo"; 기존에 "hi"가 들어가 있던 str 변수가 "hi loo" 라는 값을 가지고 있는 새로운 메모리 영역을 가리키도록 변경되고 처음 선언했던 "hi" 값이 있던 메모리 영역은 Garbage로 남아있다가 GC에 의해 사라진다는 것이다. 따라서 변하지 않는 문자열을 자주 읽어들이는 경우에는 String 클래스를 사용한다면 성능 향상을 기대할 수 있다는 것이다. 또한 불변..

웹개발/개념 2022.10.12

[JAVA] 상속과 오버라이딩

1. 상속(inheritance) - 상속의 정의와 장점 상속이란 기존 클래스를 재사용 하여 새로운 클래스를 작성하는 것 적은 양의 코드로 새로운 클래스를 작성할 수 있고, 코드를 공통적으로 관리할 수 있어 코드의 추가 및 변경이 용이해짐. = 코드의 재사용성을 높이고 코드의 중복을 제거하여 프로그램의 생산성과 유지보수가 편리해짐 - 자바는 단일 상속만 지원함. 2. 오버라이딩 조상클래스로부터 상속받은 메소드의 내용을 변경하는 것을 오버라이딩이라고 함. - 오버라이딩의 조건 - 자손클래스에서 오버라이딩하는 메소드는 조상클래스의 이름, 매개변수, 반환타입이 같아야 한다. - 접근제어자는 조상클래스보다 좁은 범위로 변경 가능하다. - 조상클래드의 메소드보다 많은 수의 예외를 선언할 수 없다. - 인스턴스 메..

웹개발/개념 2022.10.12

웹 개발 개념 정리

참고 유튜브 : 개발하는 정대리 개발하는 정대리 한국에서 개발자로 살아남기! 예전에 저처럼 프로그래머가 되고 싶지만 그 길을 몰라 해매는 분들에게 도움 되고자 이 채널을 운영하기 시작했습니다. 프로그램에 관심 있는 분들이나 취업 준 www.youtube.com 1. 프론트앤드와 백앤드 통상 프론트앤드는 클라이언트, 백앤드는 서버를 지칭한다. 프론트앤드는 말 그대로 사용자에 가까운 화면, 백은 사용자가 보지 못하는 곳을 다루는 것이라 생각해도 된다. 2. 프론트앤드 html, css, javascript를 다루게 됨. 화면 구성, 화면의 동작 들을 다루는 것임. 3. 백앤드 js, java, go, php, python, kotlin, c# 등등.. 4. 프레임워크 개발을 보다 쉽고 간편하게 기본 및 사용..

웹개발/개념 2022.10.11