기억노트
[ Spring / 스프링 ] Annotation(어노테이션) 공부 - 2 [ AOP ]
[ AOP 어노테이션 ] @Aspect -> AOP 적용시 사용 @Before -> AOP 메소드 이전 호출 지정 @After -> AOP 메소드 호출 이후 지정 예외 발생 포함 @Around -> AOP 이전/이후 모두 포함 예외 발생 포함 @AfterReturning -> AOP 메소드의 호출이 정상일 때 실행 @AfterThrowing -> AOP시 해당 메소드가 예외 발생시 지정
[jquery/제이쿼리] ajax() async, complete, beforeSend 설정
제이쿼리 ajax는 많이 사용하는데 항상 헷갈리는 조건이 있다. 바로 async... 동기/비동기에 관한 설정인데.. 머리가 나빠서인지 자꾸 잊어버린다.. async (default: true) Type: Boolean -> 기본이 비동기(true)처리이고 동기(false)처리를 하려면 변경이 필요하다. - 비동기: 로직의 실행이 끝날때까지 기다려주지 않고 나머지 코드를 먼저 실행하는것을 말한다. 즉, 순서에 상관없이 실행된다. - 동기: 처리가 된 이후에 다음 로직이 실행된다. 즉, 실행 순서가 있다. $.ajax({ type: "POST", url: '/rest/name/select', dataType: "json", data: {userId:10}, async: false, //동기처리 (기본이 t..
[Spring Boot + WebSocket+ 네이버 Chatbot] 챗봇 만들기 - 2
이전글: [Spring Boot + WebSocket+ 네이버 Chatbot] 챗봇 만들기 - 1 [Spring Boot + WebSocket+ 네이버 Chatbot] 챗봇 만들기 - 1 문득 챗봇은 어떻게 만들까하는 생각으로 구글링을 해봤다. 구성을 어떻게 하는지는 모르겠지만, 나의 작업환경은 Spring boot에 네이버 Chatbot을 사용했다. Chatbot을 직접 만든것은 아니라 Api를 통 milenote.tistory.com 네이버 챗봇 및 게이트웨이 API설정이 완료 후 소스를 참고하여 커스텀 작업을 했다. 1. 네이버 Custom API 및 웹소켓 작업 (백엔드 작업) API문서: https://api.ncloud-docs.com/docs/ai-application-service-chat..
[jquery] extends() 사용법
API문서를 확인해본 결과 크게 2가지 형식으로 쓸 수 있는 것 같다. 1. jQuery.extend (target, object1 [, objectN]) -> var object = $.extend({}, object1, object2); -> target객체에 뒤에 받는 object1, object2... 를 확장한다. -> 같은 이름을 가진 오브젝트는 뒤에 있는 오브젝트에 값으로 덮어쓰기가 된다 {"apple":0,"banana":{"price":200},"cherry":97,"durian":100} 2. jQuery.extend( [deep ], target, object1 [, objectN ] ) -> var object = $.extend( true, object1, object2 ); ->..
[Tibero/티베로] 프로시저 작성하는 법
프로시저 작성할때 참조하기 위한 틀.. 오라클과 티베로는 비슷한 구조를 가지고 있는 것 같다. 오라클을 참조해서 만든 것 때문일까..? CREATE OR REPLACE PROCEDURE [프로시저명] ( [파라미터명1] IN VARCHAR2 , [파라미터명2] IN INTEGER , [파라미터명3] IN NUMBER , [파라미터명4] IN VARCHAR2 ..... ) IS [변수명1] NUMBER; [변수명2] CLOB; [변수명3] NUMBER; [변수명4] VARCHAR2(2000); BEGIN --프로시저 시작점[필수] (자바에서 {와 같은 역할) --변수 대입 [변수명4] := '테스트'; --변수에 데이터 대입하는 방식1 SELECT no, name INTO [변수명1], [변수명3] -- ..
[Spring Boot + WebSocket+ 네이버 Chatbot] 챗봇 만들기 - 1
문득 챗봇은 어떻게 만들까하는 생각으로 구글링을 해봤다. 구성을 어떻게 하는지는 모르겠지만, 나의 작업환경은 Spring boot에 네이버 Chatbot을 사용했다. Chatbot을 직접 만든것은 아니라 Api를 통해 받아오는 형식으로 구성했다. ChatbotApi는 카카오, 네이버, Aws, 등 다양하게 존재하는 것 같다. 출처에 이미 구현하신게 있어서 그것을 토대로 실습과 커스터마이징을 해봤다. 네이버 클라우드 가입 https://www.ncloud.com/product/aiService/chatbot 로 접속한다. 2. 챗봇 등록하기 2.1. 화면 상단에 콘솔버튼을 클릭하여 이동한다. 2.2. Products & Services에 CLOVA Chatbot 클릭 ※ 결제 카드 정보를 입력하지 않으면 ..
[토비의 스프링 - Vol.1]7.5.2 내장형 데이터베이스 - 2
스프링에서는 내장형 데이버베이스를 지원한다. 자바에서는 Derby, HSQL, H2가 대표적인 내장 데이터베이스이다. 내장형데이터베이스란? 인메모리 데이터베이스(In-memory Database)는 데이터 스토리지의 메인 메모리에 설치되어 운영되는 방식의 데이터베이스 관리 시스템 인메모리 데이터베이스는 디스크에 최적화된 데이터베이스보다 더 빠른데 그 까닭은 디스크 접근이 메모리 접근보다 느리기 때문이며, 이 데이터베이스는 내부 최적화 알고리즘이 더 단순하며 더 적은 CPU 명령을 실행한다. 메모리의 데이터에 접근하면 데이터를 조회할 때 검색 시간이 줄어들며 디스크보다 더 빠르고 더 예측 가능성 성능을 제공한다. 출처: https://ko.wikipedia.org/wiki/%EC%9D%B8%EB%A9%94..
[토비의 스프링 - Vol.1]7.5.2 내장형 데이터베이스
public class EmbeddedDbTest { EmbeddedDatabase db; JdbcTemplate template; @BeforeEach public void setUp(){ db = new EmbeddedDatabaseBuilder() .setType(HSQL) .addScript("classpath:/embeddeddb/schema.sql") .addScript("classpath:/embeddeddb/data.sql") .build(); template = new JdbcTemplate(db); } @AfterEach public void tearDown(){ db.shutdown(); } @Test public void initData(){ assertEquals(template...