목록전체 글 (536)
똑같은 삽질은 2번 하지 말자
이런식으로 하나의 mapper.xml 파일안에 여러개의 namespace 를 선언하는게 될꺼라고 착각하기 쉽지만, 안된다. mapper 파일을 하나 만들어서 거기다가 DAO 별로 따로따로 ???_mapper.xml 만들어서 예쁘게 모아보아요~
LIKE 문자 패턴을 이용하여 조건에 만족하는 Data를 조회 %는 0개 이상의 문자로 길이와 상관없는 조건 지정 ex) WHERE NAME LIKE 'K%'; -> KA,Kasds,Kasf,K뭐든지다 _는 임의의 한 문자만을 허용하는 조건 지정 ex) WHERE NAME LIKE 'K_'; -> KA,KB,KC,KD 등 KASD(이건 안됨) _와 %는 조합해서 사용가능 ex) WHERE NAME LIKE '_K%' -> 이름의 두번째 알파벳이 K가 들어가는 것들 단, 주의할 점 Mybatis에서는 DBMS 종류별로 차이가 있다. # MySql SELECT * FROM TABLE_NAME WHERE COLUMN_NAME LIKE CONCAT(‘%’, #{Keyword}, ‘%’) # ORACLE SELE..
Controller 메소드가 실행되고 View 경로를 리턴하면 기본이 포워딩 방식이다. 그래서, 글 등록 후에 목록 화면이 출력되도 브라우저의 URL은 변경되지 않는다. 이렇게 넘기면 최종 URL은 /getBoardList.do 로 변경됨
Controller 객체에서 사용자의 요청(*.do)을 받을때 사용자가 입력하는 정보(이름,나이,성별등등)가 많거나 변경되는 상황 정보가 많으면 그만큼의 자바 코드가 필요해지며, 입력 정보가 변경될 때마다 Controller 클래스는 수정되어야 한다. but, Command 객체를 이용하면 이런 문제를 모두 해결할 수 있다. Command 객체는 Controller 메소드 매개변수로 받은 VO 객체라고 보면 된다. 위 코드와 같이 insertBoard 메소드에 parameter로 BoardVO vo를 선언하면 Spring 컨테이너가 insertBoard() 메소드를 실행할 때(Service 요청) Command 객체를 생성하여 넘겨준다. 결과적으로, 사용자 입력 정보 추출 VO 객체 생성, 값 설정을 모..
의 속성중 빠지면 안되는 속성이 두개 있다. src 와 alt 대부분 src는 다들 당연하게 사용하고 있지만 alt 는 종종 빼먹는다. alt는 이미지 파일을 못 불러올 경우를 대비해서 Alternate(대체하다) 라는 의미로 해당 이미지에 대한 정보를 적어주는 역할 여기서 못불러올 경우는 (엑박) 같은 경우이다. *툴팁의 효과를 나타내려면 title 속성을 써먹자
JDBC 프로그래밍에서 Connection con= DriverManager.getConnection(url, id, pw); Conntection이란 단순히 물리적(네트워크)인 연결을 말하는 것 SqlSession이란 RDB에 인증을 거친 논리적인 연결 상태를 말하는 것이다. Mybatis를 이용하여 DAO를 구현하려면 SqlSession 객체가 필요하다. (MyBatis 와 JDBC의 관계 또는 정의에 대해서는 https://heewon26.tistory.com/83 참고) (but 실제로 구현할 필요는 없다. Spring 컨테이너에서 생성하도록 설정하면 자동구현이 되기때문 이번엔 이해를 위해 한번 쳐보도록 하자.) java 코드로 실제 구현 import java.io.Reader; import or..