목록전체 글 (65)
혜야의 코딩스토리
이번 포스팅에선 웹 어플리케이션 성능 테스트 오픈 소스인 JMeter에 대해서 알아보겠습니다. 📌JMeter란?Apache에서 만든 자바로 만들어진 웹 어플리케이션 성능 테스트 오픈 소스입니다. JMeter를 이용해서 아래와 같은 테스트를 할 수 있습니다. - 웹 - HTTP, HTTPS (Java, NodeJS, PHP, ASP.NET, …)- SOAP / REST 웹 서비스- FTP- JDBC- LDAP- JMS - Message-oriented middleware (MOM)- Mail - SMTP(S), POP3(S) and IMAP(S)- Native commands or shell scripts- TCP- Java Objects Swing으로 제작한 GUI와 CLI 방법을 지원하고 있습니다. ..
🧸 postgres_fdw foreign-data wrapper for remote PostgreSQL servers dblink와 마찬가지로 물리적으로 떨어져 있는 원격 테이블에 접속하기 위해 사용합니다. 1. postgres_fdw 확장을 설치합니다.CREATE EXTENSION postgres_fdw; 2. CREATE SERVER로 외부 데이터 서버를 생성합니다.CREATE SERVER {1}FOREIGN DATA WRAPPER postgres_fdwOPTIONS (host '{2}', port '{3}', dbname '{4}'); {1}: 앞으로 원격 db를 사용할 server name (사용자 임의로 입력가능) {2}: 연결할 원격디비의 주소 {3}: 연결할 원격디비의 포트 {..
trigger() 함수는 지정된 이벤트 유형에 대해 일치하는 요소에 연결된 모든 핸들러 및 동작을 실행한다.$(selector).trigger( eventType [, extraParameters ] ) 🔥seletor요소를 지정하는 선택자 🔥 eventType필수 매개변수이다. 지정된 요소에 대해 트리거할 이벤트를 입력한다. 🔥 extraParameters선택 매개변수이다.이벤트 처리기에 전달할 매개변수이다.주로 사용자 지정 이벤트에 사용한다. $("#all").trigger("click");all이라는 id를 가진 태그에 click이벤트를 발생시키는 코드이다.$(document).on("click", "#all", function(){ var checked_radio_btn = $(t..
https -> http로 redircet되는 것을https -> https로 redircet되도록 설정이 필요함 각 환경에 따라 다르겠지만,dispatcher-servlet.xml파일에redirectHttp10Compatible "false" 설정 추가해야함 예시1)예시2) 참고https://iamfreeman.tistory.com/entry/Spring-mvc%EC%97%90%EC%84%9C-redirect-https-http-redirect-%EB%AC%B8%EC%A0%9C-%ED%95%B4%EA%B2%B0
📌 Interceptor(인터셉터) - 요청을 가로채는 작업( 메인 액션 전,후)매개변수 - HttpServletRequest, HttpServletResponse 용도 - 로그인 처리, pc웹/모바일웹 분기 처리 등ex) 로그인 세션체크 파일을 각 페이지마다 include하지 않고 인터셉터로 대체하면 좋음 📌실행순서 Filter > DispatcherServlet => Interceptor = > AOPFilter(필터) - DispatcherServlet 이전에 실행 📌 AOP@Around => ProceedingJoinPoint 객체 사용@Before, @After => JoinPoint 객체 사용 📌 요청형식(파일 등)에 따른 웹서버에서의 처리 hello.html 통과 hell..
웹페이지에서 json으로 request한 파라미터들을 java에서 받으려면 java Object로의 변환이 필요하며, response시에도 java Object에서 json으로 변환이 필요하다. 이런 작업들을 해주는것이 @RequestBody 와 @ResponseBody 이다. 컨트롤러에 두 어노테이션을 쓰게 되면 JSON이나 key/value 방식의 xml등으로 송수신 할 수 있다.@RequestBody : HTTP요청의 body내용을 자바 객체로 매핑하는 역할@ResponseBody : 자바 객체를 HTTP요청의 body내용으로 매핑하는 역할 💡 정리 클라이언트에서 =>서버로 필요한 데이터를 요청하기 위해 json데이터를 요청 본문에 담아서 서버로 보내면 서버에서는 @RequestBody를 사..
📌 AOP (Aspect Oriented Programming)- 관점(관심) 지향 프로그래밍- 횡단 관심사(cross-cutting concern )에 따라 프로그래밍 하는 것- 객체지향 프로그래밍(Object Oriented Programming, OOP)를 보완하는 확장적인 개념- 장점 : 중복되는 코드 제거, 효율적인 유지보수, 높은 생산성, 재활용성 극대화, 변화 수용의 용이성📌 Aspect (측면, 관점, 관심) 핵심적인 비즈니스 로직은 아니지만 반드시 해야 하는 부가기능(인프라 로직) **인프라 로직 - 애플리케이션의 전 영역에서 나타날 수 있음 - 중복코드를 만들어낼 가능성때문에 유지보수가 힘들어짐 - 비즈니스 로직과 함께 있으면 비즈니스..
📌Framework란?'기능을 미리 클래스나 인터페이스 등으로 만들어 제공하는 반제품'일정한 툴 속에서 개발하기 때문에 개발 후 유지보수 및 기능의 확장 용이 => 소프트웨어 품질 향상📌Spring Framework란?자바 웹 애플리케이션 개발을 위한 오픈 소스 프레임워크기존 프레임워크보다 가벼워 경량 프레임워크라고도 함경량 컨테이너EJB보다 가벼운 경량 컨테이너 기능을 수행POJO(Plain Old Java Object) :자바 개발자가 특별한 언어를 추가로 배우지 않고 순수 자바 언어를 써서 개발의 부담을 줄일 수 있다.DI(Dependency Injection) 의존성 주입이라고 하며 클래스 객체를 개발자가 코드에서 생성하지 않고 프레임워크가 생성하여 사용하는 방법이다. IoC(Inversion..
📌효율적인 유지보수를 위해 인터페이스, 구현 클래스로 나누는 것이 좋음A => B (클래스) 강한 결합 관계 BadA => B(인터페이스) => C(클래스) 느슨한 결합 Good 💡 forward : 주소 그대로, 화면 이동, 대량의 데이터 전달(주 목적) - 목록 조회 등 💡 redirect : 주소 변경, 화면 이동(주 목적), get방식의 소량의 데이터 - 회원 가입 등 💡 스프링은 jsp와 달리 기본 값이 forward방식(리다이렉트는 별도로 지정해야 함) 📌프로그램 호출 순서MainController => MemberController => MemberService(인터페이스), MemberServiceImpl =>MemberDAO(인터페이스), MemberDAOImpl => SqlSe..