programming

    [Spring] 스프링 시큐리티

    18. 스프링 시큐리티 18.1 스프링 시큐리티의 개요 18.1.1 웹 보안의 3요소 18.1.1.1 인증(Authentication) : 애플리케이션의 작업을 수행할 수 있는 주체(사용자). 현재 접속중인 사용자가 누구인지 확인하는 과정18.1.1.2 권한 인가(Authorization) : 인증된 주체가 애플리케이션의 동작을 수행할 수 있도록 허락되어 있는지 증명하는 과정. 현재 사용자가 특정 url에 접속할 권한이 있는지 검사하는 과정18.1.1.3 UI 처리 : 권한이 없는 사용자가 접근할 경우의 에러 화면 등을 보여주는 과정 18.1.2 스프링 시큐리티 개발자가 직접 처리하던 보안 처리 과정을 스프링 프레임웍에서 제공하는 스프링 시큐리티를 사용하여 사용권한 관리, 비밀번호 암호화, 회원가입 처리..

    이 친구 닉값하네? WebStorm 설치 완벽 가이드!

    Developer Survey Results 2018 (https://insights.stackoverflow.com/survey/2018) 최근 코딩 열풍이 거세짐에 따라 어떤 프로그래밍 언어가 핫할까요? 아마 그 중 하나가 자바스크립트임에는 그 누구도 부인할 수 없을 것 같습니다. 브라우저 부가 기능으로만 지원하던 예전과는 달리 웹 뿐만 아니라 다양한 플랫폼을 지원하는 기술으로 자바스크립트는 눈부신 발전을 이루었습니다. 실제로 그런 자바스크립트를 스마트하게 다룰 수 있는 통합개발환경(IDE) 중 하나, 바로 JetBrains 사에서 개발한 WebStorm입니다. 한번 설치부터 시작해봅시다! 1. JetBrains 공식 사이트로 이동WebStorm 얼마나 대단한 녀석인지 한번 설치하러 가봅시다. 위 링..

    [JSP] 스트럿츠의 개요

    스트럿츠의 개요 1. JSP의 개발방식 1.1 model1 방식JSP page 안에 자바 코드 작성 1.2 model2(MVC pattern) 방식 : jsp page와 java code 분리Model : 데이터 처리 클래스(DAO, DTO), back end Data Access Object(DAO) : 실제적인 비즈니스 로직을 처리 Data Transfer Object(DTO) : 데이터를 저장, 전달 bean(빈), VO(Vector Object), TO(Table Object)View : 화면 처리(jsp), front endController : 프로그램의 흐름을 제어(servlet class) 2. Model 1 모델1의 아키텍쳐 3. Model 2 모델2의 아키텍쳐 4. 모델2의 필요성 모델..

    Windows 기반 MySQL 5.1.44 설치 완벽 가이드

    1. MySQL 설치 사이트로 이동링크를 클릭하게 되면 다음과 같은 화면이 나타납니다. - Product Version: 5.1.44- Operating System: Microsoft Windows- OS Version: All

    [JSP] MS-SQL 연동

    22. JSP와 MS-SQL 연동 22.1 SQL Server 설치 22.1.1 SQL Server 2014 express edition 다운로드 및 설치 2019년 1월 현재 SQL Server의 최신 버전은 2019 버전이지만 Windows 7에는 설치가 되지 않으므로 2014 버전을 실습에 사용함 SQL Server 2017 버전은 리눅스에도 설치가 가능함 닷넷 프레임워크 3.5 서비스팩1이 미리 설치되어 있어야 함 ExpressAndTools 64BIT\SQLEXPRWT_x64_KOR.exe 설치(883.3MB) 새 SQL Server 독립 실행형 설치 또는 기존 설치에 추가 기본 설치 옵션으로 진행 22.2 TCP/IP 원격 접속 설정 SQL Server 네트워크 구성에서 TCP/IP 클릭 프로..

    [Python] 데이터베이스(MySQL)

    mysql 테이블 생성 create database my_suppliers; use my_suppliers; create table if not exists suppliers (supplier_name varhcar(20),invoice_number varchar(20),part_number varchar(20),cost float,purchase_date date); # csv 파일을 읽어서 mysql 테이블에 insert# mysqlclient 패키지를 미리 설치해야 함# pip install mysqlclientimport csvimport MySQLdbfrom datetime import datetime, date # csv 파일의 경로input_file = 'd:/data/db/input.csv..

    [JSP] hibernate

    21. hibernate 21.1 객체 관계 매핑(Object-Relational Mapping, ORM) 데이터베이스와 객체 지향 프로그래밍 언어 간의 호환되지 않는 데이터를 변환하는 프로그래밍 기법 21.2 ORM의 종류 21.2.1 hibernate 21.2.2 mybatis 21.3 하이버네이트(Hibernate ORM) 21.3.1 자바 언어를 위한 객체 관계 매핑 프레임워크 21.3.2 객체 지향 도메인 모델을 관계형 데이터베이스로 매핑하기 위한 프레임워크를 제공 21.3.3 국내에서는 많이 사용하지 않지만 해외에서는 hibernate가 많이 사용되고 있음 21.3.4 SQL을 세부적으로 작성하지 않아도 되는 장점이 있으나 사용방법이 복잡함 21.4 하이버네이트 설치 http://hiberna..

    [Python] 데이터베이스(SQLite)

    13. SQLite 공식사이트 : https://sqlite.org 13.1 개발자 13.1.1 리처드 힙(Richard Hipp)이 2000년 8월 발표, C언어로 개발 13.1.2 2019년 1월 현재 최신 버전 3.26.0 13.2 특징 13.2.1 파일 기반의 DBMS, 저메모리, 빠른 처리 속도 13.2.2 오픈소스 13.2.3 별도의 DB 서버가 없어도 쉽고 편리하게 사용할 수 있는 Embedded SQL DB 엔진 13.2.4 안드로이드, 아이폰 등의 스마트폰에 내장된 DB 13.2.5 표준 SQL 지원 13.3 SQLite에서 지원하지 않는 기능 13.3.1 RIGHT and FULL OUTER JOIN 13.3.2 Complete ALTER TABLE support 13.3.3 Compl..

    [Python] 정규표현식

    12. 정규표현식 12.1 실습예제 # re 모듈 - Regular Expression을 지원하는 모듈 import restr = 'My id number is kim0902' # findall('정규식패턴', 문자열)a=re.findall('a', str) print(a)b=re.findall('kim', str)print(b)c=re.findall('m', str)print(c)[] 실습 파일은 Github 소스 코드를 참고해주시면 감사하겠습니다.

    [JSP] 도로명 주소

    19. 도로명 주소 19.1 도로명 주소 사이트 행정자치부 개발자센터에서 API 신청 가능 19.2 우편번호, 주소 서비스 방법 19.2.1 직접 구축 2018년 12월 기준 건물 DB 다운로드 141MB, 압축풀면 1.72GB 예를 들어 세종시 자료를 엑셀에서 읽어들임( 구분자: | ) 텍스트 파일을 엑셀로 읽어서 ( 구분자 | ) csv로 변환한 후 필요한 컬럼만 선택한 후 저장 데이터를 import할 테이블을 미리 생성한 후 SQL Developer에서 import하여 테이블로 저장 19.2.2 API 사용 * 다음 API 19.3 실습 예제

    [JSP] 이메일 보내기

    18. 이메일 보내기 18.1 이메일 서비스 구축 방법 이메일 발송을 위해서는 메일 서버가 필요함 자체 구축 포털사이트에서 제공하는 smtp(Simple Mail Transfer Protocol) server 활용 Gmail의 경우 [내 계정] - [로그인 및 보안] - [기기 활동 및 보완관련 활동] - [보안 수준이 낮은 앱 허용] 옵션을 사용으로 설정해야 함 18.2 실습 예제 18.2.1 WebContent/WEB-INF/lib 디렉토리에 라이브러리 추가 비슷한 이름의 라이브러리가 있으므로 artifactId를 정확히 확인하고 추가해야 함 mail-1.4.7.jar https://www.mvnrepository.com/artifact/javax.mail/javax.mail-api/1.6.2 act..

    [Python] 예외처리

    11. 예외처리 11.1 에러와 예외 11.1.1 에러 (Syntax Error) 문법적 에러 파이썬은 상대적으로 언어적 문법이 간단하기 때문에 구문 자체의 에러 발생 비율이 낮음 11.1.2 예외 (Exception) 구문 에러는 없으나 프로그램 실행 중 더 이상 진행할 수 없는 상황 예외가 발생하면 프로그램은 바로 종료됨 11.2 예외 처리 방법 try: # (예외 발생 가능한) 문장들 except Exception: # 예외가 발생했을 때 실행되는 문장들 else: # 예외가 발생하지 않았을 때 실행되는 문장들 finally: # 예외 발생 유무와 관계없이 항상 실행되는 문장들 11.3 파이썬 내장 예외의 종류 https://docs.python.org/3/library/exceptions.html..