티스토리 뷰
<%@page language="java contentType="text/json; charset=utf-8%>
<%@page import="java.util.ArrayList%>
<%@page import="javax.naming.InitialContext"%>
<%@page import="java.sql.*" %>
<%
ArrayList<String> colArr = new ArrayList<String>();
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try{
InitialContext ctxt = new InitialContext();
String driver = "org.postgresql.Driver"; // 접속해야하는 DB의 Driver 명칭을 넣으면된다
String url = "jdbc:postgresql://<url>:5432/<dbname>;
Class.forName(driver).newInstance();
conn = DriverManager.getConnection(url, <DB_USERNAME>, <DB_USERPASSWORD>);
StringBuffer demQuery = new StringBuffer();
demQuery.append("select <column> from <table>");
pstmt = conn.prepareStatement(demQuery.toString());
rs = pstmt.executeQuery();
while(rs.next()){
colArr.add(rs.getString(<column>));
}
int loopCnt = colArr.size();
%>
[
<%
for(int i=0; i<loopCnt; i++){
if(i<loopCnt-1) {
%>
{"<column>":"<%=colArr.get(i) %>"},
<%
continue;
}
%>
{"<column>":"<%=colArr.get(i) %>"}
<%
}
%>
]
<%
} catch(Exception e){
e.printStackTrace();
} finally{
rs = null;
pstmt = null;
conn.close();
conn = null;
}
%>
웹개발의 백엔드는 기본적으로 간단한 CRUD 로직에서 마무리되는 경우가 많다.
일반적인 웹페이지에 복잡한 로직을 넣을 이유가 없기 때문이다.
하지만,
어려운 것을 쉽게 만드는 것은 어렵지만, 쉬운 것을 어렵게 만드는 건 엄청 쉬운 것이 문제다
10년전만해도 시중에 발매된 책들은 모두 Model1 방식의 예제를 채택했지만
지금은 국비속성과정에도 제대로 다루지 않는 이유도 신입 개발자들이 정리되지않은 코드를 작성하는 것을 원치 않기 때문 일 것이다.
최근 Model1을 사용하지 않는 이유는 아주 간단한데,
- 보여주는 로직과 비즈니스 로직이 혼재 되어있는 JSP는 정말 끔찍하다.
- 모처럼 인하우스로 들어온 디자이너가 열어보고 운다.
- 만든 사람이 나가면 대체로 처음부터 다시 만들어진다.
Model1 방식의 장점은 개발이 빠르다.
하지만, 리팩토링 연구에 공을 들이고 한 줄을 못 줄 였냐느니, else를 쓰냐 마냐로 싸우는 하는 시대에 빠르기만 한 개발은 답이 아니다.
MVC 패턴을 주로 배우는 건 옳은 일이고, 언어를 불문하고 앞으로 나올 프레임워크들은 뷰와 컨트롤러, 모델을 다루는 로직 부분이 확실히 구분될 것이라고 장담 할 수 있다.
그러나.. 그와 별개로 뒤늦게 과거 솔루션을 유지보수 해야하는 개발자들이 이 글을 읽는다면..
화이팅입니다.. 힘내세요..
'개발' 카테고리의 다른 글
Java Spring vs Node.JS 비교 (0) | 2021.03.09 |
---|---|
2021 카카오 블라인드 채용 1차 코딩테스트 문제 1 풀이 (0) | 2021.01.28 |
NSIS 인스톨러 패키징작업중 발견한 이슈 (0) | 2019.12.18 |
PostgreSQL DB에있는 모든 컬럼 조회 및 테이블별 정렬 (0) | 2019.11.13 |
PostgreSQL의 데이터타입들 (0) | 2019.03.29 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Javascript
- hyperkin
- 형사 고발
- axios
- FBI
- 애플보안
- 위협 발언
- ipc 개선
- 로봇 연구
- db
- 암살 시도
- law enforcement
- duke 컨트롤러
- graykey
- 하드웨어 시장
- SQL
- 데이터베이스
- 전력 관리
- 트럼프
- 법집행기관
- 게이머
- 개발자
- 아이폰암호화
- 트리뷰트게임즈
- 게임 경험
- 크리스토퍼 앨런 하겐스
- 암호화논쟁
- PostgreSQL
- 자바스크립트
- PROMISE
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함