연구실 과제/Dalle3 17

mysql에서 INSERT와 UPDATE의 차이

int userId = (Int) session.getAttribute("user_id");String insertQuery = "INSERT INTO surveyTable (section_number) VALUES (?) WHERE user_id = ?";[잘못 사용한 코드]// session에 저장된 user_id를 Integer로 형변환 (user_id가 int로 저장되었다고 가정)int userId = ((Integer) session.getAttribute("user_id")).intValue();// UPDATE 구문 사용: user_id가 일치하는 행의 section_number 컬럼을 업데이트String updateQuery = "UPDATE surveyTable SET section_nu..

google api tts 2가지 텍스트 생성시 안되던 문제 해결(1주일 걸림)

기존 server코드import osimport refrom flask import Flask, request, jsonifyfrom google.cloud import texttospeechapp = Flask(__name__)# Google TTS API 인증 설정os.environ["GOOGLE_APPLICATION_CREDENTIALS"] = "/opt/dilabtts-da637c7e3b0e.json"# Tomcat에서 사용할 MP3 저장 경로TOMCAT_AUDIO_FOLDER = "/usr/local/apache-tomcat-10.1.28/webapps/Dalle3Site/resources/generateAudios"# Tomcat 폴더가 존재하지 않으면 생성os.makedirs(TOMCAT_A..

Flask와 RESTFul API

★ Flask더보기Micro Web Framework 즉, 간단한 웹사이트, 혹은 간단한 API 서버를 만드는 데에 특화 되어있는 Python Web Framework이다.요즘에는 클라우드 컴퓨팅의 발달로 Docker, Kubernetes와 접목해서 소규모 컨테이너 단위로 기능 별 개발후, 한꺼번에 베포하는 방식, 혹은 베포 후 기능 추가하는 식으로 자주 사용하고 있다. Micro : 가벼운 기능 만 제공, 가볍게 배우고, 가볍게 사용 할 수 있으며, 확장성 또한 넓다!Framework : 라이브러리 그 이상의 의미로, 어플리케이션의 핵심이 되는 기술이라고 보면 된다!장점가볍게 배울 수 있다! (Python, HTML + CSS + Javascript만 할 줄 알면 금방 배운다!)가볍게 사용 할 수 있다..

톰켓에서 flask와 통신방식

1. 단순한 HTTP요청 방식 (현재 내가 서버에서 사용중인 방식임)✅ 현재 방식은 RESTful API가 아닌 이유1️⃣ RESTful API의 특징RESTful API는 자원의 표현과 상태를 HTTP 메서드를 통해 관리하는 방식입니다.이를 충족하려면 다음과 같은 원칙을 따라야 합니다.RESTful 원칙현재 코드에서 해당하는지?1. 리소스 기반 (Resource-Based)❌ API의 엔드포인트(/api/tts)가 명확한 리소스를 나타내지 않음2. HTTP 메서드 사용 (GET, POST, PUT, DELETE)🔵 POST를 사용하고 있지만, 단순 요청 처리에만 활용3. 상태 비저장 (Stateless)🔵 Flask 서버는 상태를 저장하지 않으므로 해당됨4. 클라이언트-서버 분리 (Client-Se..

톰켓에서 google tts api사용하기

✅ 1. 개요Tomcat은 기본적으로 Java 기반의 서블릿 컨테이너이므로, Python 기반의 Flask를 직접 실행할 수 없습니다.그러므로 Flask 서버를 독립적으로 실행하고, Tomcat에서 이를 API로 호출하는 방식을 사용해야 합니다.구성:Flask (server.py): Google TTS API를 처리하고 오디오 파일을 생성하는 역할Tomcat (index.jsp 또는 Spring Boot): Flask의 REST API를 호출하고 웹사이트에서 사용할 수 있도록 처리HTML/JavaScript: 사용자가 텍스트 입력 후, Flask의 TTS API를 호출하고 응답 받은 음성을 재생[server.py] ▶ flask서버 실행시킴 + google TTS API로 오디오 생성import osf..

Java기반 톰켓이서 파이썬파일 실행하는 방법

※원래는 톰켓에서 파이썬을 직접 실행하는 것은 불가능하다.- 톰켓은 자바기반 서버이므로 파이썬 스크립트 직접 실행 불가- 파이썬은 동적언어이므로 자바처럼 컴파일된 .class파일이 아니라 해석(interpret)해야함. [해결방법]- REST API로 연동(가장 간단하고 권장됨) [원리]- 톰켓 서블릿에서 Python TTS서버로 HTTP요청을 보냄- 파이썬(Falsk서버)가 텍스트를 음성으로 변환하고 wav파일을 반환- 톰켓이 파일을 받아서 클라이언트에게 전달 [구현방법]- /opt/server.py(Flask기반 REST API서버 실행)- TTSServlet.java작성(톰켓에서 Python 서버로 HTTP 요청) - 톰켓 실행 후 테스트 📌 장점: ✅ 가장 간단하고 안정적 ✅ 톰캣과 Python..

centos7에서 flask서버를 통해 google tts api사용

자 일단 처음에 Mary TTS를 사용하려고함. -> java코드로 지원해주기 때문 -> 한글지원안함. coquiTTS로 다시 사용하려고함 -> 파이썬을 사용하지만 오픈소스라 공짜이기때문 -> 씨발 또 한글 지원안함. -->GPT좆병신새끼 결국 유료인 googleTTS사용하려고함.  1. 구글 클라우드 페이지 접속 2. 새 프로젝트 생성 3. 결제수단 입력(씨발 여기서 또 학교 계정으로는 결제가 안 된대. 그럼 말로 알려주던가 좆같은 오류코드만 내보내서 존나 찾느라 시간보냄)->결국 내 개인계정으로 함 4. IAM및 관리자->서비스계정->서비스계정 생성(json형식으로 키 받아야함) 5. 해당키를 /opt/디렉토리로 보냄 6. /opt/디렉토리에서 server.py코드 작성. 7.  server.py를 ..

GET방식과 POST방식 차이

GET- 데이터 전달방식: 요청 URL에 쿼리 스트링(?param1=value&param2=value2) 형태로 데이터를 포함시켜 서버에 전송.- 용도주로 서버에서 데이터를 조회하거나 정보를 요청할 때 사용URL에 요청 정보가 포함되므로 북마크하거나 캐시하는 데 유리- 특징데이터 길이 제한: URL길이에 제약이 있어 전송할 수 있는 데이터 양이 제한됨.보안: URL에 데이터가 노출되므로 민감한 정보를 전송하는 데 적합하지 않음.캐싱: 브라우저와 프록시 서버가 GET요청을 캐싱멱동성(Idempotency): 동일한 GET 요청을 여러 번 보내도 서버 상태가 변경되지 않아야 함.POST- 데이터 전달방식: HTTP 요청의 본문(body)에 데이터를 포함하여 서버에 전송- 용도주로 데이터를 생성, 수정하거나 ..