728x90
반응형

IT 160

파이썬 현재시각 가져오기 : module 'datetime' has no attribute 'now'

현재 날짜를 가져오려고 datetime을 이용했다 import datetime ... create_time=datetime.now() 그런데 안됨 그런 어트리뷰트 없다고 에러뜸 module 'datetime' has no attribute 'now' 임포트 방법을 수정 from datetime import datetime ... create_time=datetime.now() from datetime을 추가해서 임포트했다 from에서 받는 datetime은 datetime 모듈이고 import에서 받는 datetime은 동명의 모듈의 하위클래스이다. 내가 쓰려고 한 now() 메소드는 datetime.datetime.now()인 것이기 때문에 datetime 하나만 쓰려면 저렇게 명시해줘야 한다...

IT/파이썬 2021.12.08

URL Decoder (퍼센트 인코딩 되돌리기)

%EC%9D%B8%EC%BD%94%EB%94%A9 위처럼 %d하나와 숫자 두개씩 나타나는 포맷이 url 인코딩된 형태임 퍼센트 인코딩이라고도 하는 듯 숫자나 영어는 건드리지 않고 한글만 바꿈 인코딩decode333 -> %EC%9D%B8%EC%BD%94%EB%94%A9decode333 간단하게는 아래 사이트에서 돌려볼 수 있음 https://meyerweb.com/eric/tools/dencoder/ 자바에서는 URLDecoder를 써서 바꾸면 됨 String getOriginString = URLDecoder.decode(encodedString, "UTF-8"); 이때 URLDecoder.decode(...) 와 같이 decode에 취소선이 그어지면서 deprecated 됐다고 나오면 뒤에 "UTF-..

영상 인코딩 (코덱 종류, i-prame과 p-frame 등)

코덱 - codec = COmpressor + DECompressor - 멀티미디어 데이터를 압축하거나 푸는 소프트웨어 - 압축된 데이터는 코덱에 따라 고유한 확장자 가짐 H.264, H.265 - MPEG과 ITU가 연합해서 만든 동영상 압축 표준 - 시간이 오래 걸리지만 압축률과 화질이 좋음 VP8, VP9 - 구글이 개발한오픈소스 코덱 (H.264는 라이센스 비용 발생) - 그래픽카드가 지원을 안해주면 개발자가 일일이 만져줘야 해서 어렵다고 (vp9) 프레임 - I-frame : 스트리밍할때 원본 이미지 (키프레임) - P-frame : 아이프레임과 비교해서 변화가 있는 부분만 데이터 전달 (단방향 참조) - B-frame : 아이프레임, 피프레임 양방향으로 참조 이미지 전환이 많은 영상이면 아이프..

IT 2021.11.24

데이터 검증을 스프링에서 하지 않고 db로 넘겨주기

DeviceServiceImp.java // 빈 채널을 찾아서 기기 등록 (빈 채널이 없으면 익셉션) List channelList = channelRepository.findAllByStoreId(store.getId()); Boolean fullDevice = true; for(Channel channel : channelList){ if(channel.getDevice()==null){ channel.setDevice(device); channelRepository.save(channel); fullDevice = false; break; } } if(fullDevice){ throw new FullDeviceException(); } 위처럼 구구절절 포문 돌려서 하던 로직을 db로 넘겨주기 ↓↓↓..

port 8080 was already in use (윈도우에서)

앱이 실행중일 때 인텔리제이를 끄면서 terminate를 해야 했는데 disconnect를 눌러버림 인텔리제이를 다시 켜서 실행하려니 port 8080 was already in use 두둥.... 윈도우 명령어는 안익숙해서 뭐라고 쳐야 하는지 찾아봄 ㅠ 해당 포트 사용중인 프로세스 찾기 > netstat -ano 프로세서가 너무 많아서 8080만 찾을때 (리눅스의 grep) > netstat -ano | findstr 8080 종료시키기 > taskkill /f /pid 0000

IT/서버 2021.10.28

Spring Security에서 컨트롤러 메서드 별 권한 지정 (@Secured, @PreAuthorize)

원래 antMatchers로 지정하던 권한 @Secured와 @PreAuthorize 어노테이션으로 그자리에서 지정하기 기존 @RequiredArgsConstructor @EnableWebSecurity public class SecurityConfig extends WebSecurityConfigurerAdapter { @Override protected void configure(HttpSecurity http) throws Exception{ http //... .and() .authorizeRequests() .antMatchers("/auth/test").hasRole("USER")// 이렇게 config에서 모아서 지정하는 방식 .anyRequest().permitAll() // ... } }..

쿠키 생성, 삭제

쿠키 만들기 @PostMapping("/test") public String test(HttpServletRequest request, HttpServletResponse response){ Cookie testCookie= new Cookie("testCK", "asdf"); testCookie.setPath("/"); testCookie.setMaxAge(60*60*24*15); //시간 0으로 하면 쿠키삭제 //시간 -1로 하면 쿠키 계속보존 // 만든 쿠키는 response에 담아서 보내줌 response.addCookie(testCookie); return "ok"; } 쿠키 지우기 @PostMapping("/test") public String test(HttpServletRequest req..

mysql 외부 접속

뭐 이런거나 GRANT ALL PRIVILEGES ON *.* TO '아이디'@'%' IDENTIFIED BY '패스워드'; 이런거 등 INSERT INTO mysql.user (host,user,password,ssl_cipher, x509_issuer, x509_subject) VALUES ('%','아이디',password('패스워드'),'','',''); GRANT ALL PRIVILEGES ON *.* TO '아이디'@'%'; FLUSH PRIVILEGES; 계정 만들때 패스워드 잘못했으면 사용자 암호 바꾸기 ALTER USER 'user-name'@'localhost' IDENTIFIED BY 'NEW_USER_PASSWORD'; FLUSH PRIVILEGES; 별짓 해도 다 안되면 한번 확인..

IT/db 2021.10.13
300x250
반응형