
JSP를 사용해서 웹 어플리케이션을 개발하는 방법을 공부할건데 처음 개발환경을 어떻게 구축해야할지 알아보자. JSP 서버개발 특히 백앤드(back end) 개발이라고 하는 것은 실제 통신을 처리하는 부분을 구현하는게 아니라 웹 서버 또는 WAS를 통해 들어오는 요청을 처리하는 동적인 페이지 DB와의 연동을 구현하는 것을 말하는 것이다. JSP는 html에서 java 코드를 사용할 수 있도록 하는 환경을 제공하며 DB와 연동을 처리하기 때문에 백앤드에 속한다. Javascript와의 차이점은 이 동적인 코드가 실행되는 위치가 다르다는 것이다. Javascript는 클라이언트의 브라우저에서 동작하며 그에 css 등과 연동하여 동적인 페이지를 만들어내지만 JSP는 서버에서 실행되며 서버가 동적으로 결과를 전달..

간단한 게시판 서비스를 만들면서 jsp를 사용한 데이터베이스 연동을 연습해보자. 구현을 위해 준비해야 할 스펙은 아래와 같다. 스펙 jsp jsp이기 때문에 java를 기본적으로 사용하며 html과 javascript에 대한 기본적인 문법지식을 요구한다. oracle database 18c 맥에서 작업하고 있기 때문에 오라클 데이터베이스를 로컬에서 사용할 수 없어서 윈도우 데스크탑에 설치하고 원격으로 접속하는 형태로 구현한다. eclipse tomcat 9.0.19 이번 실습에서 기본적인 흐름은 입력-검증-DB입출력 순서로 흘러간다. 예를들어 로그인 기능의 경우 Login.jsp에서 입력 폼을 제공하고 동시에 javascript로 입력값을 검증한 후 LoginOK.jsp로 입력된 값을 넘겨준다. Logi..
개요 C++에 추가된 스마트 포인터들의 종류와 사용법에 대해 알아보자. C++11 부터 추가되기 시작했으며 버전이 올라가면서 점차 자리를 잡아가고있다. 그래서 종종 사용하고는 있었지만 한번쯤 정확히 짚고넘어가야될 필요성을 느꼈다. 특히 언리얼 엔진은 C++을 사용하기는 하지만 자체 라이브러리를 많이 사용하기 때문에 순수하게 C++만 사용하기에는 부적절한 부분이 있다. 예를들어 객체를 생성할 때 new 연산을 사용하지 않고 자체적인 객체생성 문법을 사용하며, C++에서 지원하지않는 어노테이션 등도 있다. 스마트포인터도 그 중 하나인데 엔진 라이브러리에 비슷한 기능을 하는 스마트포인터 템플릿이 있고, 그 템플릿을 잘 이해하려면 기본적으로 C++의 스마트포인터를 먼저 이해해야 한다는 생각이다. C++에서 스마..
개요C++타입의 형변환에 대해 알아보자 static castC 타입 캐스팅과 거의 모든면에서 동일하다. 컴파일 타임에 형변환을 감지하고 불가능하다고 판단되면 컴파일 에러를 발생시킨다. 따라서 클래스의 선언이 아래와 같을 때 주석으로 나눈 두 코드는 같은 동작을 한다. int main() { //~ Begin C Type casting char CTypeChar = 'a'; int CTypeInt = CTypeChar; //~ End C Type casting //~ Begin C++ Type casting char CppTypeChar = 'a'; int CppTypeInt = static_cast(CppTypeChar); //~ End C++ Type casting return 0;} 다만 C 타입 캐..
ViewController구현하고자 하는 cell의 개념은 이렇다.main view에서 card를 하나 선택한다.해당 카드가 화면 전체로 확장되는 듯한 애니메이션이 재생되며, 그 동안 카드를 구성하는 내부 view들의 constraints도 동적으로 적용된다. 즉, snapshot이미지를 사용하는 것이 아니라 실제 그 view가 화면 전체로 확장되는 효과를 주는 것이다.transition이 끝나면 카드를 구성하던 view가 그대로 news view로 전달되어 사용된다.되돌아 오는 것은 반대로 이루어진다.이러한 동작을 위해서 main view와 news view가 사용할 protocol을 정의해야한다. 먼저 메인화면을 구성하는 MainViewController 부터 살펴보자. UICollectionView..
개요Pinterest나 AppStore같은 어플에 사용되는 CardView를 collection view를 사용해서 구현해보자.보통 카드 형태로된 뉴스피드를 보여주는 어플리케이션에서 주로 사용하기 때문에 예제 어플리케이션을 구현할 때도 관련된 이름을 사용한다. Storyboard 구성먼저 어플리케이션을 구성하는 전체적인 Storyboard를 보자. NavigationController를 사용하기 때문에 기본화면으로 MainViewController와 cell을 선택했을 때 진입하게 될 NewsViewController를 추가한다.main view에는 선택할 수 있는 cell들이 보여지도록 만들것이다. 먼저 UICollectionViewController를 상속받는 MainViewController 클래스..
흐름코드를 보기전에 먼저 Navigation Controller가 어떻게 동작하는지 살펴보자.Navigation Controller는 자신의 Root VC가 segue를 통해 다른 view를 보여주려고 하면 미리 정의된 특정 delegate함수를 통해 이 작업을 수행하도록 되어있다. 그리고 view transition(view전환)이 수행될 때 UIViewControllerAnimatedTransitioning이라는 프로토콜에 정의된 동작을 수행하는데 이 프로토콜을 override해서 우리가 원하는 동작을 수행하도록 변경할 수 있다. 2, 3번 동작을 override해서 우리가 원하는 모습으로 바꿀 것이다. 코드(SpreadTransitionDelegate)TransitionDelegateTransiti..
개요튜토리얼에서 배운 것을 바탕으로 간단한 프로그램을 만들어보자.프로그램은 무지개 색깔을 가진 cell들로 구성되며 해당 cell을 터치하면 그 색깔을 배경색으로 가지는 화면으로 전환된다. 이 때 선택한 cell 화면으로 전환되는 것을 자연스럽게 보여주기 위해 해당 cell이 확장되어 화면을 덮는 것처럼 보이는 시각효과를 추가한다. 준비cell을 확장한 view에서 다시 collectionView로 되돌아오는 기능은 이 포스팅의 주된 논점이 아니므로 NavigationController를 사용하여 간단하게 준비한다. 우선 Single View App으로 프로젝트를 생성하고 storyboard를 다음처럼 만든다.NavigationController를 Initial View Controller로 설정한다.C..
- Total
- Today
- Yesterday
- 드라마
- scala
- 데이터베이스
- OS
- C/C++
- rxswift
- database
- DesignPattern
- Git
- JSP
- 알고리즘
- Spring
- 자료구조
- ios
- 운영체제
- SOCKET
- Java
- 국내여행
- 수학
- mongoDB
- C++
- winsock
- machine learing
- C
- ue4
- swift
- SwiftUI
- SHADER
- Cocos2d-x
- game
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |