본문 바로가기

프로그래밍/Web

(17)
JPA 쿼리 이것저것 엔티티 객체JPA는 엔티티 객체가 곧 테이블이다. DB 테이블과 매핑되는 엔티티(도메인) 객체를 만들어 두고, 저장소나 엔티티 매니저를 통해 실제 데이터를 처리한다. @Entity@Table(name="TABLE_NAME")public class MyEntity {@Id@Column(name="userId", nullable=false)@GeneratedValue(strategy=GenerationType.AUTO)private Long userId; // 다른 엔티티와 join// OneToOne(optional=false)는 Inner Join 으로 처리된고, true 면 Outer join으로 동작한다.@OneToOne(optional=false)@JoinColumn(name="userId")Oth..
[spring] 프로퍼티 값 읽기 메인 프로퍼티 : application.properties기본 프로퍼티로 project/src/main/resources/ 에 위치하게 된다. @Value 어노테이션을 사용해 해당 변수에 값을 할당해 준다. {@Value("${my.item}")private String value;..} 프로퍼티 파일 추가 리소스에 sub.properties 파일을 추가 하는 경우 해당 설정파일을 등록한 뒤 사용해야 한다.@PropertySource 어노테이션으로 설정 파일을 등록. @Configuration@EnableAutoCofiguration@PropertySource("sub.properties")public class MyConfig {@Value("${sub.item})private String subVal..
[spring] 핸들러 인터셉터 컨트롤러 실행 전/후에 처리할 작업이 필요한 경우 핸들러 인터셉터를 이용하게된다.로그인이나 세션 처리등 컨트롤러가 호출될때 지속적으로 처리되어야 하는 내용들은 이를 통해 해결할 수 있다. HandleInterceptorAdapter import org.springframework.web.servlet.handler.HandlerInterceptorAdapter; public class CustomInterceptor extends HandlerInterceptorAdapter { @Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler ) throws Exception {..
[spring] Spring boot 기본 설정 ide는 인텔리제이 커뮤니티 버전을 사용하므로, 그와 관련된 설정으로 진행한다. 기본적인 스프링부트 개발환경에 mysql 붙이는 정도의 내용으로 정리. ide 에서 gradle 프로젝트로 생성하면, 위 wrapper 포함해 생성되므로, 별도로 gradle 을 설치할 필요는 없다~ 알아서 다운로드한다. 만약 별도록 해당 파일을 구성하려면, 인스톨러 패키지 관리자 등으로 gradle 설치~ gradlew 생성 $ gradle wrapper --gradle-version 3.3 폴더 구성 gradle 프로젝트는 src/main 아래에 소스들이 구성된다. 정확히 말하면 gradle 의 java plugin 의 소스 폴더 위치가 src/main/java, src/test/java 로 구분된다. 소스 폴더의 위치를..
[spring] batch 작업관련 요소들 >>> 작업 클래스 : QuartzJobBean 을 상속public class TestJob extends QuartzJobBean { protected void executeInternal( JobExecutionContext context) { }} >>> 작업 클래스에 대한 bean 설정JobDetailBean멤버 변수 등은 map을 통해 설정한다. >>>트리거 : 스케줄링의 시간관련 설정이 이루어지는 녀석SimpleTriggerBean, CronTriggerBean 미리세컨드 단위의 주기 설정 년단위의 큰 주기의 설정cronExpression : 주기설정 value="초 분 시 일 월 요일 년/ : 시작과 증가값 ( 0/10 0에 시작해 10씩 증가)* : 모든값? : 특정 값 없음L : 마지막값..
[spring] JAVA코드 테스트를 위한 Spring설정 웹 개발 관련 지식이 전무한지라 java 모듈을 테스트하기 위한기본적인 내용만 정리. 쩝.. 별걸 다 보게 되는 듯.. JDK, Spring-framework 등 필요.서버로는 JBoss, Tomcat 등이 사용되는 듯... -_-;; Dynamic Web ProjectTarget Runtime 에 서버 정해 주고... >>> 기본 설정WebContent/WEB-INF/lib 폴더에 라이브러리들(스프링등)을 때려(!) 넣는다. web.xml servlet 설정 : dispatcher로 보내야 각 컨트롤러로 전달될 수 있다.모든 설정은 web.xml에 들어가는데, 여러 설정파일이 있는 경우는 contextLoaderListener란 넘을 사용한다. org.springframework.web.context...
[MyBatis] 기본 사용법 웹쪽 개발팀 소스를 잠깐 보게 되었는데.. 접근이 쉽지가 않다..개발환경도 다르고.. 뭐하나 보려고 해도, 실행도 안된다. -_-;; 오기가 생겨 몇가지 내용을 정리해 본다.. 하지만.... 웹 프로그래밍은 html 이외엔 해보질 못했으니 뭔가 깔끔하게 이해가 안간다.....특히 외부 파라미터를 정의 후 그냥 적어주면 알아서 데이터가 들어간다는게.... -_-;;;getter, setter 를 알아서 부른다는 건지.... c개발자로서 무언가 꺼림칙하다. 사이트 : http://mybatis.org/ 음. 관계형 데이터베이스를 쉽게 사용하기 위한 데이터 맵퍼.현재 3.1.1 버전이 최신. 개발환경은 이클립스 Java EE 1. mybatis-3.1.1.jar 프로젝트에 추가 2. Java Resources..
톰캣 * 톰캣> 환경변수 및 PATH등록 CATALINA_HOME : 루트 디렉토리 PATH : /bin 음.. 6.0 zip버전 풀어서 startup해보니 별다른 path등록 없어도 걍 된다... * Web Application Archive(WAR) 설정> server.xml 설정server.xml의 host 에 context 등록 > server.xml이 아닌 context 설정server.xml을 수정하지 않고, 필요한 context만 별도 등록해 사용. test.xmlCATALINA_HOME/conf/엔진명/호스트명/test.xml 주요속성 : docBase : context의 루트className : java 클래스path : context 경로reloadable : /WEB-INF/classes,..