본문 바로가기
반응형

전체 글59

json 단일 또는 리스트 가능 설정 @RequestBody로 json 전달시 단일 또는 복수개가 필요할 경우가 있다. reqData : {"A":"value", "B": "value"} reqData : [ {"A":"value", "B": "value"}, {"A":"value", "B": "value"} ] 어느 상태로 전달해도 모두 소화한다. request domain java 파일에 어노테이션 추가만으로 가능. @ApiModelProperty(required=false, value="단일 또는 복수개 전달", example="") @JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY) public List reqData; 2022. 7. 22.
중복 선언 메소드 우선순위 주기 @Slf4j @RestControllerAdvice @Order(1) public class ControllerExceptionHandler { @ExceptionHandler({BizRuntimeException.class}) @ResponseBody public ResponseEntity handleException(BizRuntimeException e) { log.error("BizRuntime Error Code : " + e.getErrorCode(), e); return new ResponseEntity(ResponseMessage.builder() .resultCode(e.getErrorCode()) .resultMessage(e.getErrorMessage()) .detailMessage.. 2022. 6. 27.
mac ssh key-gen 생성 후 접속 안되는 경우 cafe24에서 nodejs 앱 생성 후 ssh-keygen -t rsa -C "아이디@gmail.com" sshkey를 만들어 등록. git init git remote add origin cafe24아이디@앱아이디.cafe24app.com:아이디_아이디. git clone cafe24아이디@앱아이디.cafe24app.com:아이디_아이디. 헐... 오류... 권한이 없단다.. 뭐지???? ssh-add -K ~/.ssh/생성한 rsa 이제된다.. 으흐흐흐흐 2022. 6. 24.
express에서 node-cron schedule 만들기 1. app.js 에서 하단에 입력 //스케줄 잡 설정 const Schedule = require('./schedule/scheduleJob'); let schedule = new Schedule(); schedule.start(); 2. 최상단에 schedule 폴더 생성 및 scheduleJob.js 파일 생성 3. scheduleJob.js 파일내용 'use strict'; const cron = require("node-cron"); var dateFormat = require('dateformat'); // schedule tasks to be run on the server class investMail { constructor() { this.id = 'id_1'; } start() { c.. 2018. 11. 5.
ubuntu apache2 nodejs 설정 가상 도메인으로 nodejs 설정 방법 # The ServerName directive sets the request scheme, hostname and port that # the server uses to identify itself. This is used when creating # redirection URLs. In the context of virtual hosts, the ServerName # specifies what hostname must appear in the request's Host: header to # match this virtual host. For the default virtual host (this file) this # value is not decis.. 2018. 10. 30.
aws mail 발송시 사용하는 node mailer 파일로 생성해서 사용중 app.js 위치에 util 폴더 생성 후 sendmail.js파일 생성 var fs = require('fs'); var sendMail = { // gmail을 이용한 메일 발송 gmail: function(from,to,subject,fname,params){ fs.readFile(__dirname + '/../email/' + fname, function(err, html){ //최상위 email 폴더 기준으로 스킨을 선택. if(err){ console.log(err); }else{ var toHtml = new String(html); var nodemailer = require('nodemailer'); var transport = nodemailer.createTra.. 2018. 10. 23.
DB 접속 설정 express mariaDB 및 mysql 접속 정보 var connection = mysql.createPool({ host : '127.0.0.1', user : 'user id', password: 'user password', port : '3306', database: 'db명', connectTimeout : 20000,//접속타임아웃 시간 debug : false, //디버그 모드 multipleStatements: true, //다중 쿼리 실행 supportBigNumbers: true, //decimal 타입등 지원 bigNumberStrings: true //decimal 타입등 지원 }); multipleStatements 사용시 다중 쿼리를 세미콜론으로 분리해서 처리 할 수 있다. .. 2018. 10. 23.
운영서버 백그라운드 실행 pm2 이용 1. pm2 설치(ubuntu, Mac) sudo npm install pm2@latest -g 2. app.js 파일 위치에 myapp.config.js 파일 생성 module.exports = { apps: [ { // pm2로 실행한 프로세스 목록에서 이 애플리케이션의 이름으로 지정될 문자열 name: "http://www.domain.co.kr", // pm2로 실행될 파일 경로 script: "./bin/www", // 운영환경시 적용될 설정 지정 env: { "PORT": 3000, "NODE_ENV": "production" } } ] }; name : 프로세스목록에서 보여질 이름을 지정한다. (도메인으로 하면 좋을듯...) 3. 실행하기 pm2 start myapp.config.js 아래 .. 2018. 10. 23.
jquery.validate 같은이름 배열 처리 방법 배열 처리시 첫번째 값에 대한 검증만 처리 되므로 확장 부분을 추가하면 나머지 기능도 처리 함. $("#form id").validate({ errorElement: "div", wrapper: "div", errorPlacement: function(error, element) { offset = element.offset(); error.insertAfter(element); error.css('color','red'); }, rules: { 'test[]' : {required: true} }, messages:{ 'test[]':{ required:"내용을 입력해 주세요" } } }); //확장판 name[] 처리 $.extend( $.validator.prototype, { checkForm: .. 2018. 10. 10.
Multer 첨부파일 암호화 후 S3 업로드 express를 이용한 첨부파일 암호화 및 S3 업로드 1. router POST 업로드 호출 후 var s3 = require('../util/awsFileUpload') router.post('/fileupload', function(req, res, next){ s3.encUpload(req, res, function(err, result){ if(err){ res.send('error').end(); } else { res.send('success image file').end(); } }) }); awsFileUpload.js 파일 let multer = require('multer') var storage = multer.memoryStorage() const upload = multer({s.. 2018. 8. 23.
static class에서 logger 사용하기 public class common { Logger log = Logger.getLogger(this.getClass()); //일반적인 로그 선언 //이 log.info , debug, error 등은 static 선언문에는 사용을 할 수 없다. public static Logger logger = Logger.getLogger(common.class); //static 선언시 사용 //getLogger(this.getClass()) 사용시 오류 현재 클래스명을 주면 오류 없음. public String test(String str){ log.debug("내용출력"); //오류 안남. } public static String test(String str){ log.debug("내용출력"); //오류 발.. 2016. 11. 24.
avigator.userAgent를 이용한 모바일유무 체크 언어별 navigator.userAgent를 이용한 모바일 유무를 체크해주는 기능을 제공해 주고 있다. 스크립트 버전 스크립트 버전 ​ 2016. 8. 19.
반응형