(jpetstore \277\271\301\246\267\316 \273\354\306\354\272\270\264\302 Spring MVC\277\315 iBatis \277\254\265\277 - Confluence)

Size: px
Start display at page:

Download "(jpetstore \277\271\301\246\267\316 \273\354\306\354\272\270\264\302 Spring MVC\277\315 iBatis \277\254\265\277 - Confluence)"

Transcription

1 8 중 오전 12:08 오픈소스스터디 jpetstore 예제로살펴보는 Spring MVC와 ibatis 연동 Added by Sang Hyup Lee, last edited by Sang Hyup Lee on 1월 16, 2007 (view change) Labels: (None) 지금까지 Spring MVC 를셋팅하는과정에서부터하나의 HTTP Request 를처리하는과정, 그리고 Spring MVC 를처리하는과정중에발생하는중요한 HandlerMapping 과 View 를결정하는것까지살펴보았다. 이제전체적인 Spring MVC 처리과정을정리하는입장에서하나의예제를소스코드와함께살펴보면서알아보도록하자. Table of Contents jpetstore 의실제적인초기화면 (index.do) 모든 URL 에해당하는 petstore-servlet.xml 에서의셋팅 "shop/viewcategory.do" 요청을처리하는과정 ViewCategoryController jpetstore 에서의 ibatis 프레임워크셋팅 참고문헌 applicationcontext.xml 에서 property 파일로드 dataaccesscontext-local.xml 에서 Data Source 셋팅하기 sql-map-config.xml 파일살펴보기 jpetstore의실제적인초기화면 (index.do) "jpetstore 설치하기 " 세션에서 jpetstore 를 Tomcat 에배치하고웹브라우저에서정상적으로실행해보는것까지했었다. 물론정상적으로설치하였다면내부로들어가여러가지기능을해보았으리라생각된다. 가능하면순서대로모든것을살펴보면좋겠지만, 문서의성격상 Spring framework 의많은기능중 jpetstore 에해당하는부분을중심으로살펴보다보니전부다기술하진못한다. 이해해주길바라면서설치과정후, 다음페이지를통해서이번세션에서설명하고자하는것을살펴보자. jpetstore 를정상적으로설치하고첫페이지에서 "Enter the Store"" 클릭하여들어가보면다음그림과같은화면을볼수있다.

2 8 중 오전 12:08 실제주소를살펴보면 "jpetstore/shop/index.do" 인것을볼수있다. URL 이 ".do" 로끝나는것은초기 WEB-INF/web.xml 에서 HTTP Request 를처음으로받아서처리하고중개하는 DispatcherServlet 을 "petstore"""" 서블릿명으로 "*.do"" URL Pattern 으로매핑하는것으로알수있다. <servlet> <servlet-name>petstore</servlet-name> <servlet-class>org.springframework.web.servlet.dispatcherservlet</servlet-class> <load-on-startup>2</load-on-startup> </servlet> <servlet-mapping> <servlet-name>petstore</servlet-name> <!-- <servlet-name>action</servlet-name> --> <url-pattern>*.do</url-pattern> </servlet-mapping> 따라서실제로 index.do 라는 URL 로 HTTP 를요청하게되면 DispatcherServlet 이처리하는것을알수있다. 하지만, index.do 에해당하는페이지는별다른설명을할필요없는경우임으로여기서는생략하도록한다. 모든 URL에해당하는 petstore-servlet.xml 에서의셋팅 이제 jpetstore 에서 Spring MVC 의전체적인과정을살펴보기위해서카테고리를살펴보는페이지 (HTTP Request) 를분석해보자. jpetstore 실제초기화면 (index.do) 에서각카테고리 ( 동물 ) 에해당하는것을아무거나클릭하면 "shop/viewcategory.do" 라는 URL 로요청되는것을볼수있다. 여기에해당하는 URL 을통해서 Spring MVC 의전체적인처리과정을살펴볼것이다. 먼저, 모든 URL 에해당하는 Controller 를셋팅하고있는 petstore-servlet.xml 파일을살펴보자.

3 8 중 오전 12:08 <!-- ========================= DEFINITIONS OF PUBLIC CONTROLLERS ========================= --> <bean id="defaulthandlermapping" class="org.springframework.web.servlet.handler.beannameurlhandlermapping" /> <bean name="/shop/additemtocart.do" class="org.springframework.samples.jpetstore.web.spring.additemtocartcontroller" > <bean name="/shop/checkout.do" class="org.springframework.samples.jpetstore.web.spring.viewcartcontroller" > <property name="successview" value="checkout"/> <bean name="/shop/index.do" class="org.springframework.web.servlet.mvc.parameterizableviewcontroller" > <property name="viewname" value="index"/> <bean name="/shop/newaccount.do" class="org.springframework.samples.jpetstore.web.spring.accountformcontroller" > <property name="validator" ref="accountvalidator"/> <property name="successview" value="index"/> <bean name="/shop/removeitemfromcart.do" class="org.springframework.samples.jpetstore.web.spring.removeitemfromcartcontro <bean name="/shop/signoff.do" class="org.springframework.samples.jpetstore.web.spring.signoffcontroller" /> <bean name="/shop/searchproducts.do" class="org.springframework.samples.jpetstore.web.spring.searchproductscontroller" > <bean name="/shop/signon.do" class="org.springframework.samples.jpetstore.web.spring.signoncontroller" > <bean name="/shop/signonform.do" class="org.springframework.web.servlet.mvc.parameterizableviewcontroller" > <property name="viewname" value="signonform"/> <bean name="/shop/updatecartquantities.do" class="org.springframework.samples.jpetstore.web.spring.updatecartquantitiescontro <bean name="/shop/viewcart.do" class="org.springframework.samples.jpetstore.web.spring.viewcartcontroller" > <property name="successview" value="cart"/> <bean name="/shop/viewcategory.do" class="org.springframework.samples.jpetstore.web.spring.viewcategorycontroller" > <bean name="/shop/viewitem.do" class="org.springframework.samples.jpetstore.web.spring.viewitemcontroller" > <bean name="/shop/viewproduct.do" class="org.springframework.samples.jpetstore.web.spring.viewproductcontroller" > "shop/viewcategory.do" 요청을처리하는과정 우리가살펴볼 URL 은 "shop/viewcategory.do""". 그런데여기서모든 URL 에해당하는 Controller 를바인딩하는부분을추가한것은앞으로설명한처리과정을동일하게따르고있음으로보여주기위함이다. 그러면 "shop/viewcategory.do" 요청에해당하는 Controller 를바인딩하기위한 WebApplicationContext 의설정을살펴보면다음과같다. <bean name="/shop/viewcategory.do" class="org.springframework.samples.jpetstore.web.spring.viewcategorycontroller" > URL 의동일한 name 으로 bean 태그를셋팅하고있다. 그리고사용하는클래스가 org.springframework.samples.jpetstore.web.spring.viewcategorycontroller 가된다. 즉, "shop/viewcategory.do"" 해당하는 HTTP 요청을처리하는컨트롤러가 ViewCategoryController 가된다는것이다. 그러면, 여기서 "shop/viewcategory.do" 요청을처리하는 Spring MVC Controller 의전체적인처리과정을그림으로살펴보고계속설명하기로한다.

4 8 중 오전 12:08 위의그림은 Spring MVC 처리과정중에 Controller 가 ModelAndView 객체를리턴하기까지의과정을그림으로도식화한것이다. 위의그림에서노란색박스로처리된것은 WebApplicationContext 설정을포함하고있는 XML 파일이고, 파란색박스로처리된것은처리과정중에사용되는인터페이스또는클래스이다. 처리과정에서 XML 파일을표시해둔것은실제처리과정에서 XML 파일을직접적으로사용하는것은아니나 ( 컨테이너에이미적재 - 메모리상에 - 되어있다 ), 이해를돕기위해 XML 설정을포함한설명을하기위함이다. Spring MVC 처리과정중에서 "shop/viewcategory.do"" 해당하는요청을처리하기위해서 DispatcherServlet 은 HandlerMapping(petstoreservlet.xml) 을통해서 ViewCategoryController 가해당요청을처리하는 Controller 임을알아온다. 그리고 ViewCategoryController 는 DispatcherServlet 에게 ModelAndView 를반환하기위해서위의그림과같은처리과정을거치게된다. DispatcherServlet 이 HTTP 요청을최초로받아최종 View 객체를얻어응답하기까지중요한역할을담당하지만, 개발자는 Spring MVC 의처리과정을이해하고사용하기만할뿐실제소스코드로작성해야할부분은비즈니스로직에해당하는 Controller 클래스를작성하는데있다. 따라서실제중요한부분은 Controller 가처리하는과정을해당요청에맞는형태로개발할수있는것이중요하다. 그런면에서 jpetstore 의예로 "shop/viewcategory.do"" 해당하는처리과정을자세하게살펴보는것은중요하다라고할수있다. ViewCategoryController 이제실제비지니스레이어를담당하는 Controller 클래스에대해서알아보자. 여기서는 ViewCategoryController 클래스를살펴보게되는데, 모든 Controller 클래스들은 org.springframework.web.servlet.mvc.controller 를 implements 하여구현한클래스임으로구현해야할부분이많치않다. 실제로 org.springframework.web.servlet.mvc.controller 를 implements 하여구현하고자할경우, handlerequest(httpservletrequest request, HttpServletResponse response) 메소드를구현해주기만하면된다. 이제 ViewCategoryController 클래스를살펴보자.

5 8 중 오전 12:08 ViewCategoryController.java package org.springframework.samples.jpetstore.web.spring; import java.util.hashmap; import java.util.map; import javax.servlet.http.httpservletrequest; import javax.servlet.http.httpservletresponse; import org.springframework.beans.support.pagedlistholder; import org.springframework.samples.jpetstore.domain.category; import org.springframework.samples.jpetstore.domain.logic.petstorefacade; import org.springframework.web.servlet.modelandview; import org.springframework.web.servlet.mvc.controller; /** Juergen Hoeller */ public class ViewCategoryController implements Controller { private PetStoreFacade petstore; public void setpetstore(petstorefacade petstore) { this.petstore = petstore; public ModelAndView handlerequest(httpservletrequest request, HttpServletResponse response) throws Exception { Map model = new HashMap(); String categoryid = request.getparameter("categoryid"); if (categoryid!= null) { Category category = this.petstore.getcategory(categoryid); PagedListHolder productlist = new PagedListHolder(this.petStore.getProductListByCategory(categoryId)); productlist.setpagesize(4); request.getsession().setattribute("viewproductaction_category", category); request.getsession().setattribute("viewproductaction_productlist", productlist); model.put("category", category); model.put("productlist", productlist); else { Category category = (Category) request.getsession().getattribute( "ViewProductAction_category"); PagedListHolder productlist = (PagedListHolder) request.getsession().getattribute( "ViewProductAction_productList" if (category == null productlist == null) { throw new IllegalStateException("Cannot find pre-loaded category and product list" ); String page = request.getparameter("page"); if ("next".equals(page)) { productlist.nextpage(); else if ("previous".equals(page)) { productlist.previouspage(); model.put("category", category); model.put("productlist", productlist); return new ModelAndView("Category", model); 사실상, 특별히설명이필요한부분은거의없다. Request 의파라미터로넘어오는 categoryid 를받아와서 categoryid 가 null 이아닌경우, 해당카테고리에해당하는리스트를 ModelAndView 로 "Category" 라는이름으로 Model 을반환해준다. categoryid 가 null 인경우, 해당 session attribute 에 "ViewProductAction_category" 로 Category 클래스를가져와 ModelAndView 로 "Category" 라는이름으로 Model 을반환해준다. 오히려여기서필요한설명은 IoC 를지원하기위해서 setter injection 을지원하는다음의코드부분이다. 위에서보는바와같이 PetStoreFacade 인터페이스를이용하여실제구현하고자하는클래스들은지원하고있다이를 setter injection 으로지원하고있다. 그리고, 각카테고리에해당하는리스트를얻기위해서 this.petstore.getproductlistbycategory(categoryid) 에대한이해가필요하다. 이것은 ibatis framework 를사용하기때문에다음세션에서살펴보도록하겠다. getproductlistbycategory 메소드는 PetStoreFacade 인터페이스에서정의해두고, PetStoreImpl 에서구현해둔메소드가된다. 그리고실제쿼리를실행하는부분에서 ibatis 를사용하기때문에별도로살펴보아야한다. jpetstore 에서의 ibatis 프레임워크셋팅 ibatis 를이용하여어떻게웹애플리케이션을개발하는지에대해서는여기서언급하지않겠다. 현재다양하게나와있는레퍼런스들이있기때문이

6 8 중 오전 12:08 다. 참고문헌을참조하여 ibatis 에대한 study 를개인적으로진행해야한다. 여기서다룰내용은 jpetstore 에서 Spring 프레임워크와 ibatis 프레임워크를어떻게셋팅하고두개의프레임워크가어떻게연동되어져개발되는지에대한내용이다. 먼저, jpetstore 에서 ibatis 프레임워크를셋팅하는방법에대해서알아보자. applicationcontext.xml 에서 property 파일로드 이전에 jpetstore 에서의 Spring 초기설정과 IoC 에서언급한바와같이 web.xml 의 context-param 엘리먼트의 param-value 의값으로정의되어진 dataaccesscont ext-local.xml 과 applicationcontext.xml 파일이 POJO 빈의생명주기를관리하는정보를담고있다고하였다. 여기서근간이되는파일이 applicationcontext.xml 인데해당하는모든내용을살펴보진않았다. 이중에서우리가여기서살펴볼부분은 property 파일을 WAS 에로드해두고사용하게하는부분이다. value 엘리먼트로주어진 WEB-INF/jdbc.properties 파일을 ibatis DataSource 설정파일로사용하게되는데내용은다음과같다. <!-- Configurer that replaces ${... placeholders with values from properties files --> <!-- (in this case, mail and JDBC related properties) --> <bean id="propertyconfigurer" class="org.springframework.beans.factory.config.propertyplaceholderconfigurer" > <property name="locations"> <list> <value>web-inf/mail.properties</value> <value>web-inf/jdbc.properties</value> </list> </property> 위에서잠시언급한바와같이 value 엘리먼트의값으로주어진두개의 properties 파일을 WAS 로드하여웹애플리케이션에서사용할수있게된다. 여기서는특별한설명이필요한것은아니다. WEB-INF 디렉토리에 properties 파일이존재하면되고, 일반적으로작성되는 properties 규칙을따르고있기때문에이에대한설명을할필요도없을듯하다. 다음은 properties 파일을 WAS 에로드하고 Spring 프레임워크의컨텍스트파일에서 Data Source 를어떻게셋팅하는지알아보자. dataaccesscontext-local.xml 에서 Data Source 셋팅하기 web.xml 의 contextconfiglocation 이라는 param-name 의 value 로주어진두개의파일중, dataaccesscontext-local.xml 파일이 Data Source 셋팅을담당하고있으며여기서기본적인데이터베이스와관련된셋팅을하고있다. 먼저, dataaccesscontext-local.xml 파일의내용중위에서로드하였던 properties 파일의내용을셋팅하는부분을살펴보자. <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN" " > <!-- - Application context definition for JPetStore's data access layer. - Accessed by business layer objects defined in "applicationcontext.xml" - (see web.xml's "contextconfiglocation"). - - This version of the data access layer works on a combined database, - using a local DataSource with DataSourceTransactionManager. It does not - need any JTA support in the container: It will run as-is in plain Tomcat. --> <beans> <!-- ========================= RESOURCE DEFINITIONS ========================= --> <!-- Local Apache Commons DBCP DataSource that refers to a combined database --> <!-- (see dataaccesscontext-jta.xml for an alternative) --> <!-- The placeholders are resolved from jdbc.properties through --> <!-- the PropertyPlaceholderConfigurer in applicationcontext.xml --> <bean id="datasource" class="org.apache.commons.dbcp.basicdatasource" destroy-method="close"> <property name="driverclassname" value="${jdbc.driverclassname"/> <property name="url" value="${jdbc.url"/> <property name="username" value="${jdbc.username"/> <property name="password" value="${jdbc.password"/> <!-- 중간생략 --> </beans> "WEB-INF/jdbc.properties" 파일을살펴보면 jdbc.driverclassname 부터해서데이터베이스커넥션과관련된정보를담고있다. 위의 <bean id="datasource"> 에서 property 의 value 로주어지는 ${ 에해당하는값들이 jdbc.properties 에서셋팅되어진값들이들어가게된다. 이부분은 ANT 와같이 XML 을로드하는방법을따름으로별도의설명은필요없을듯하다. 다음은 Spring 프레임워크에서트랜잭션매니져를담당하는클래스를셋팅하는부분이다.

7 8 중 오전 12:08 <!-- Transaction manager for a single JDBC DataSource --> <!-- (see dataaccesscontext-jta.xml for an alternative) --> <bean id="transactionmanager" class="org.springframework.jdbc.datasource.datasourcetransactionmanager" > <property name="datasource" ref="datasource"/> 위에서셋팅한 datasource 는 org.springframework.jdbc.datasource.datasourcetransactionmanager 클래스를이용하여트랜잭션관리는하는것을알수있다. org.springframework.jdbc.datasource.datasourcetransactionmanager 클래스는 Spring 프레임워크에서기본적으로제공하는 TransactionManager 클래스가된다. 소스코드를따라가보면기본적으로제공하는 commit 이나 rollback 등의기본을메소드로제공하고있다. 다음은실제 ibatis 프레임워크를사용하여 Database layer 를담당하겠다는셋팅을해주는부분이다. <!-- SqlMap setup for ibatis Database Layer --> <bean id="sqlmapclient" class="org.springframework.orm.ibatis.sqlmapclientfactorybean" > <property name="configlocation" value="web-inf/sql-map-config.xml"/> <property name="datasource" ref="datasource"/> <bean> 엘리먼트태그아이디로 "sqlmapcliet" 가주어졍있고, org.springframework.orm.ibatis.sqlmapclientfactorybean 클래스를 class 값을하고있다. org.springframework.orm.ibatis.sqlmapclientfactorybean 클래스는 Spring 프레임워크에서 ibatis 를지원하기위한 FactoryBean 클래스이다. 두개의 property 엘리먼트를가지고있는데, 이미정의된 name 과 value 값이중요하다. 여기서는 value 로 "WEB-INF/sql-map-config.xml" 파일을설정하고있다. sql-map-config.xml 파일은 ibatis 에서쿼리를관리하고있는 XML 파일을하나의 config 파일로관리하는파일이다. 실제내용은다음부분에서살펴보도록한다. 다음은 DAO 인터페이스를 implements 하고있는각각의 ibatis 클래스를 sqlmapclient 와연결시켜주는설정이다. 여러개의설정중에하나만살펴보면된다. <bean id="categorydao" class="org.springframework.samples.jpetstore.dao.ibatis.sqlmapcategorydao" > <property name="sqlmapclient" ref="sqlmapclient"/> 위의 <bean> 엘리먼트의 id 로 categorydao 로설정되어져있고, 이를구현한클래스가 org.springframework.samples.jpetstore.dao.ibatis.sqlmapcategorydao 이다. SqlMapCategoryDao 는 CategoryDao 인터페이스를 ibatis 프레임워크와연동하여구현한클래스이다. 이러한개념을잠시확장해보면 ibatis 와마찬가지로 Spring 프레임워크는 persistence layer 를담당하고있는유명한프레임워크 ( 예를들면, Hibernate 같은 ) 를지원하고있다. org.springframework.orm 패키지가이를담당하고있다. 여기까지살펴본후실제각각의 DAO 인터페이스를구현한 (implements) 클래스의소스코드를살펴볼수있다. 각각의구현클래스들은 org.springframework.orm.ibatis.support.sqlmapclientdaosupport 클래스를 extends 하여 Spring 프레임워크에서제공하는 ibatis support 메소드를사용하여최종구현하고있다. 이렇게하면소스코드가아주깔끔하면서도읽기쉽도록구현할수있다. 예제소스코드는 sql-map-config.xml 파일을살펴본후살펴보도록하겠다. sql-map-config.xml 파일살펴보기 sql-map-config.xml 파일의내용은실제로간단하다. 각 DAO(Data Access Object) 클래스에해당하는쿼리를담당하고있는 XML 파일의경로를가지고있기때문이다. 특별한설명은필요없을듯하다. ibatis 에대한보다자세한내용은참고문헌을참조하면된다. <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE sqlmapconfig PUBLIC "-//ibatis.com//dtd SQL Map Config 2.0//EN" " > <sqlmapconfig> <sqlmap resource="org/springframework/samples/jpetstore/dao/ibatis/maps/account.xml" /> <sqlmap resource="org/springframework/samples/jpetstore/dao/ibatis/maps/category.xml" /> <sqlmap resource="org/springframework/samples/jpetstore/dao/ibatis/maps/product.xml" /> <sqlmap resource="org/springframework/samples/jpetstore/dao/ibatis/maps/item.xml" /> <sqlmap resource="org/springframework/samples/jpetstore/dao/ibatis/maps/order.xml" /> <sqlmap resource="org/springframework/samples/jpetstore/dao/ibatis/maps/lineitem.xml" /> <sqlmap resource="org/springframework/samples/jpetstore/dao/ibatis/maps/sequence.xml" /> </sqlmapconfig> 참고문헌

8 8 중 오전 12:08 # SQL Maps2.0 개발자가이드 ( 한글판 ) : openframework.or.kr 에서번역된 ibatis 개발자가이드 # SQL Maps2.0 tutorial( 한글판 ) : openframework.or.kr 에서번역된 ibatis Tutorial 문서에대하여 최초작성자 : OSS: 이상협최초작성일 : 2006 년 11 월 02 일버전 : 0.5 문서이력 : 2006 년 11 월 02 일이상협문서최초생성 : jpetstore 예제로살펴보는 Spring MVC 와 2007 년 1 월 16 일이상협문서수정 : jpetstore 에서의 ibatis 프레임워크셋팅부분추가중 Eclipse Hibernate Tools Java Data-object Hibernate mapping Comprehensive J2EE IDE & Support 비트교육센터 java 강좌무료오픈소스웹솔루션자바프로그래밍전문교육, jsp, 디자이너를위한진정한웹솔루션 ejb, 자바vm, 자바빈즈, j2ee전문완벽한디자인적용과 100% 오픈교육. 소스 WebLogic Management Download WebLogic monitoring Tool. Manage servers, JVM, Web Apps. AppManager.com/WebLogic-Monitor 내가하려는걸먼저해뒀군요. ^^ 제가 2 기스터디때했어야하는부분인데.. 그냥고마울따름이죠..~~~ Posted by 장회수 at 12 월 15, :06 Site running on a free Atlassian Confluence Open Source Project License granted to JavaJiGi Project. Evaluate Confluence today. Powered by Atlassian Confluence, the Enterprise Wiki. (Version: Build:#643 1 월 22, 2007) - Bug/feature request - Contact Administrators

I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r

I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r Jakarta is a Project of the Apache

More information

<property name="configlocation" value="classpath:/egovframework/sqlmap/example/sql-map-config.xml"/> <property name="datasource" ref="datasource2"/> *

<property name=configlocation value=classpath:/egovframework/sqlmap/example/sql-map-config.xml/> <property name=datasource ref=datasource2/> * 표준프레임워크로구성된컨텐츠를솔루션에적용 1. sample( 게시판 ) 프로젝트생성 - egovframe Web Project next generate example finish 2. 프로젝트추가 - 프로젝트 Import 3. 프로젝트에 sample 프로젝트의컨텐츠를추가, 기능동작확인 ⓵ sample 프로젝트에서 프로젝트로복사 sample > egovframework

More information

Intro to Servlet, EJB, JSP, WS

Intro to Servlet, EJB, JSP, WS ! Introduction to J2EE (2) - EJB, Web Services J2EE iseminar.. 1544-3355 ( ) iseminar Chat. 1 Who Are We? Business Solutions Consultant Oracle Application Server 10g Business Solutions Consultant Oracle10g

More information

슬라이드 1

슬라이드 1 7. [ 실습 ] 예제어플리케이션개발 1. 실습개요 2. 프로젝트환경구성 3. 기본환경설정 4. 예제어플리케이션개발 5. 참조 - 539 - 1. 실습개요 (1/4) 7. [ 실습 ] 예제어플리케이션개발 스프링기반의 EGOV 프레임워크를사용하여구현된예제어플리케이션구현을통하여 Presentation Layer와 Business Layer의연계를살펴본다. 예제어플리케이션구현기능

More information

표준프레임워크로 구성된 컨텐츠를 솔루션에 적용하는 것에 문제가 없는지 확인

표준프레임워크로 구성된 컨텐츠를 솔루션에 적용하는 것에 문제가 없는지 확인 표준프레임워크로구성된컨텐츠를솔루션에적용하는것에문제가없는지확인 ( S next -> generate example -> finish). 2. 표준프레임워크개발환경에솔루션프로젝트추가. ( File -> Import -> Existring Projects into

More information

Spring Boot/JDBC JdbcTemplate/CRUD 예제

Spring Boot/JDBC JdbcTemplate/CRUD 예제 Spring Boot/JDBC JdbcTemplate/CRUD 예제 오라클자바커뮤니티 (ojc.asia, ojcedu.com) Spring Boot, Gradle 과오픈소스인 MariaDB 를이용해서 EMP 테이블을만들고 JdbcTemplate, SimpleJdbcTemplate 을이용하여 CRUD 기능을구현해보자. 마리아 DB 설치는다음 URL 에서확인하자.

More information

혼자서일을다하는 JSP. 이젠일을 Servlet 과나눠서한다. JSP와서블릿의표현적인차이 - JSP는 <html> 내에서자바를사용할수있는수단을제공한다. - 서블릿은자바내에서 <html> 을작성할수있는수단을제공한다. - JSP나서블릿으로만웹페이지를작성하면자바와다양한코드가

혼자서일을다하는 JSP. 이젠일을 Servlet 과나눠서한다. JSP와서블릿의표현적인차이 - JSP는 <html> 내에서자바를사용할수있는수단을제공한다. - 서블릿은자바내에서 <html> 을작성할수있는수단을제공한다. - JSP나서블릿으로만웹페이지를작성하면자바와다양한코드가 혼자서일을다하는 JSP. 이젠일을 Servlet 과나눠서한다. JSP와서블릿의표현적인차이 - JSP는 내에서자바를사용할수있는수단을제공한다. - 서블릿은자바내에서 을작성할수있는수단을제공한다. - JSP나서블릿으로만웹페이지를작성하면자바와다양한코드가웹페이지내에뒤섞여있어서웹페이지의화면설계가점점어려워진다. - 서블릿이먼저등장하였으나, 자바내에

More information

Spring Boot

Spring Boot 스프링부트 (Spring Boot) 1. 스프링부트 (Spring Boot)... 2 1-1. Spring Boot 소개... 2 1-2. Spring Boot & Maven... 2 1-3. Spring Boot & Gradle... 3 1-4. Writing the code(spring Boot main)... 4 1-5. Writing the code(commandlinerunner)...

More information

<4D F736F F F696E74202D20C1A632C8B8C7D1B1B9BDBAC7C1B8B5BBE7BFEBC0DAB8F0C0D32D496E E D56432E BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20C1A632C8B8C7D1B1B9BDBAC7C1B8B5BBE7BFEBC0DAB8F0C0D32D496E E D56432E BC8A3C8AF20B8F0B5E55D> Inside Spring Web MVC 안영회 ahnyounghoe@gmail.com 차례 MVC 개요와오해 Spring Web MVC 개요 Demo 로이해하는 Spring Web MVC 대표적인컨트롤러활용 정리 한국 스프링 사용자 모임 MVC 개요와 오해 한국 스프링 사용자 모임 MVC 개요 MVC 에대한오해 컨트롤러는서블릿이다! 컨트롤러는액션이다! 비즈니스로직은컨트롤러다!

More information

Web Service Computing

Web Service Computing Spring MVC 2015 Web Service Computing Request & Response HTTP(Hyper-Text Transfer Protocol) 웹서버가하는일은요청 (Request) 과응답 (Response) 의연속이다. 1) 브라우저에 www.google.co.kr 을입력한다면 2) 구글서버에페이지를요청하는것이고 3) 화면이잘나타난다면구글서버가응답을한것이다.

More information

신림프로그래머_클린코드.key

신림프로그래머_클린코드.key CLEAN CODE 6 11st Front Dev. Team 6 1. 2. 3. checked exception 4. 5. 6. 11 : 2 4 : java (50%), javascript (35%), SQL/PL-SQL (15%) : Spring, ibatis, Oracle, jquery ? , (, ) ( ) 클린코드를 무시한다면 . 6 1. ,,,!

More information

KYO_SCCD.PDF

KYO_SCCD.PDF 1. Servlets. 5 1 Servlet Model. 5 1.1 Http Method : HttpServlet abstract class. 5 1.2 Http Method. 5 1.3 Parameter, Header. 5 1.4 Response 6 1.5 Redirect 6 1.6 Three Web Scopes : Request, Session, Context

More information

본 강의에 들어가기 전

본 강의에 들어가기 전 웹서버프로그래밍 2 JSP 개요 01. JSP 개요 (1) 서블릿 (Servlet) 과 JSP(Java Server Page) 서블릿은자바를이용한서버프로그래밍기술 초기웹프로그래밍기술인 CGI(Common Gateway Interface) 를대체하기위해개발되었으나, 느린처리속도, 많은메모리요구, 불편한화면제어등의한계로 PHP, ASP 등서버스크립트언어등장 JSP

More information

Interstage5 SOAP서비스 설정 가이드

Interstage5 SOAP서비스 설정 가이드 Interstage 5 Application Server ( Solaris ) SOAP Service Internet Sample Test SOAP Server Application SOAP Client Application CORBA/SOAP Server Gateway CORBA/SOAP Gateway Client INTERSTAGE SOAP Service

More information

@OneToOne(cascade = = "addr_id") private Addr addr; public Emp(String ename, Addr addr) { this.ename = ename; this.a

@OneToOne(cascade = = addr_id) private Addr addr; public Emp(String ename, Addr addr) { this.ename = ename; this.a 1 대 1 단방향, 주테이블에외래키실습 http://ojcedu.com, http://ojc.asia STS -> Spring Stater Project name : onetoone-1 SQL : JPA, MySQL 선택 http://ojc.asia/bbs/board.php?bo_table=lecspring&wr_id=524 ( 마리아 DB 설치는위 URL

More information

슬라이드 1

슬라이드 1 NeoDeveloper 설치가이드 차례 1. 환경 3 2. 설치 3 2.1 웹서버설치 3 Tomcat 7 3 JDK 1.6 3 2.2 NeoDeveloper 설치 3 Neo Developer 서버구성 3 Demo용 User Application 구성 4 Neo Developer 서버 Data File 4 Client 개발 Tool 설치 4 3. 설정 5 3.1

More information

Eclipse 와 Firefox 를이용한 Javascript 개발 발표자 : 문경대 11 년 10 월 26 일수요일

Eclipse 와 Firefox 를이용한 Javascript 개발 발표자 : 문경대 11 년 10 월 26 일수요일 Eclipse 와 Firefox 를이용한 Javascript 개발 발표자 : 문경대 Introduce Me!!! Job Jeju National University Student Ubuntu Korean Jeju Community Owner E-Mail: ned3y2k@hanmail.net Blog: http://ned3y2k.wo.tc Facebook: http://www.facebook.com/gyeongdae

More information

ALTIBASE 사용자가이드 Templete

ALTIBASE 사용자가이드 Templete Real Alternative DBMS ALTIBASE, Since 1999 Spring 연동가이드 2010. 08 Copyright c 2000~2013 ALTBASE Corporation. All Rights Reserved. Document Control Change Record Date Author Change Reference 2010-08 snkim

More information

No Slide Title

No Slide Title J2EE J2EE(Java 2 Enterprise Edition) (Web Services) :,, SOAP: Simple Object Access Protocol WSDL: Web Service Description Language UDDI: Universal Discovery, Description & Integration 4. (XML Protocol

More information

Microsoft PowerPoint - Smart CRM v4.0_TM 소개_20160320.pptx

Microsoft PowerPoint - Smart CRM v4.0_TM 소개_20160320.pptx (보험TM) 소개서 2015.12 대표전화 : 070 ) 7405 1700 팩스 : 02 ) 6012 1784 홈 페이지 : http://www.itfact.co.kr 목 차 01. Framework 02. Application 03. 회사 소개 01. Framework 1) Architecture Server Framework Client Framework

More information

JUNIT 실습및발표

JUNIT 실습및발표 JUNIT 실습및발표 JUNIT 접속 www.junit.org DownLoad JUnit JavaDoc API Document 를참조 JUNIT 4.8.1 다운로드 설치파일 (jar 파일 ) 을다운로드 CLASSPATH 를설정 환경변수에서설정 실행할클래스에서 import JUnit 설치하기 테스트실행주석 @Test Test 를실행할 method 앞에붙임 expected

More information

파워포인트 템플릿

파워포인트 템플릿 ibizsoftware 정호열차장 ( 표준프레임워크오픈커뮤니티커미터 ) Agenda 1. ibatis 와 Hibernate 의개념및특징 2. Hibernate 와 JPA 쿼리종류 3. ibatis 와 Hibernate 동시사용을위한 Transaction 처리방안 4. @EntityListeners 활용방법 Agenda 5. Hibernate 사용시 Dynamic

More information

교육2 ? 그림

교육2 ? 그림 Interstage 5 Apworks EJB Application Internet Revision History Edition Date Author Reviewed by Remarks 1 2002/10/11 2 2003/05/19 3 2003/06/18 EJB 4 2003/09/25 Apworks5.1 [ Stateless Session Bean ] ApworksJava,

More information

JavaGeneralProgramming.PDF

JavaGeneralProgramming.PDF , Java General Programming from Yongwoo s Park 1 , Java General Programming from Yongwoo s Park 2 , Java General Programming from Yongwoo s Park 3 < 1> (Java) ( 95/98/NT,, ) API , Java General Programming

More information

- JPA를사용하는경우의스프링설정파일에다음을기술한다. <bean id="entitymanagerfactory" class="org.springframework.orm.jpa.localentitymanagerfactorybean" p:persistenceunitname=

- JPA를사용하는경우의스프링설정파일에다음을기술한다. <bean id=entitymanagerfactory class=org.springframework.orm.jpa.localentitymanagerfactorybean p:persistenceunitname= JPA 와 Hibernate - 스프링의 JDBC 대신에 JPA를이용한 DB 데이터검색작업 - JPA(Java Persistence API) 는자바의 O/R 매핑에대한표준지침이며, 이지침에따라설계된소프트웨어를 O/R 매핑프레임워크 라고한다. - O/R 매핑 : 객체지향개념인자바와관계개념인 DB 테이블간에상호대응을시켜준다. 즉, 객체지향언어의인스턴스와관계데이터베이스의레코드를상호대응시킨다.

More information

ALTIBASE 사용자가이드 Templete

ALTIBASE 사용자가이드 Templete Real Alternative DBMS ALTIBASE, Since 1999 Spring 연동가이드 2014. 10 Copyright c 2000~2014 ALTBASE Corporation. All Rights Reserved. Document Control Change Record Date Author Change Reference 2010-08 snkim

More information

제8장 자바 GUI 프로그래밍 II

제8장 자바 GUI 프로그래밍 II 제8장 MVC Model 8.1 MVC 모델 (1/7) MVC (Model, View, Controller) 모델 스윙은 MVC 모델에기초를두고있다. MVC란 Xerox의연구소에서 Smalltalk 언어를바탕으로사용자인터페이스를개발하기위한방법 MVC는 3개의구성요소로구성 Model : 응용프로그램의자료를표현하기위한모델 View : 자료를시각적으로 (GUI 방식으로

More information

J2EE Concepts

J2EE Concepts ! Introduction to J2EE (1) - J2EE Servlet/JSP/JDBC iseminar.. 1544-3355 ( ) iseminar Chat. 1 Who Are We? Business Solutions Consultant Oracle Application Server 10g Business Solutions Consultant Oracle10g

More information

Spring Data JPA Many To Many 양방향 관계 예제

Spring Data JPA Many To Many 양방향 관계 예제 Spring Data JPA Many To Many 양방향관계예제 오라클자바커뮤니티 (ojc.asia, ojcedu.com) 엔티티매핑 (Entity Mapping) M : N 연관관계 사원 (Sawon), 취미 (Hobby) 는다 : 다관계이다. 사원은여러취미를가질수있고, 하나의취미역시여러사원에할당될수있기때문이다. 보통관계형 DB 에서는다 : 다관계는 1

More information

슬라이드 1

슬라이드 1 전자정부개발프레임워크 1 일차실습 LAB 개발환경 - 1 - 실습목차 LAB 1-1 프로젝트생성실습 LAB 1-2 Code Generation 실습 LAB 1-3 DBIO 실습 ( 별첨 ) LAB 1-4 공통컴포넌트생성및조립도구실습 LAB 1-5 템플릿프로젝트생성실습 - 2 - LAB 1-1 프로젝트생성실습 (1/2) Step 1-1-01. 구현도구에서 egovframe>start>new

More information

쉽게 풀어쓴 C 프로그래밊

쉽게 풀어쓴 C 프로그래밊 Power Java 제 27 장데이터베이스 프로그래밍 이번장에서학습할내용 자바와데이터베이스 데이터베이스의기초 SQL JDBC 를이용한프로그래밍 변경가능한결과집합 자바를통하여데이터베이스를사용하는방법을학습합니다. 자바와데이터베이스 JDBC(Java Database Connectivity) 는자바 API 의하나로서데이터베이스에연결하여서데이터베이스안의데이터에대하여검색하고데이터를변경할수있게한다.

More information

Spring

Spring Spring MVC 프로젝트생성 2015 Web Service Computing 일반적인스프링의정의 스프링의정의 자바엔터프라이즈개발을편하게해주는오픈소스경량급애플리케이션프레임워크 스프링의기원 로드존슨 (Rod Johnson) 이라는유명 J2EE 개발자가출간한 Expert One-on- One J2EE Design and Development 이라는제목의책에소개된예제샘플

More information

중간고사

중간고사 중간고사 담당교수 : 단국대학교응용컴퓨터공학박경신 답은반드시답안지에기술할것. 공간이부족할경우반드시답안지몇쪽의뒤에있다고명기한후기술할것. 그외의경우의답안지뒤쪽이나연습지에기술한내용은답안으로인정안함. 답에는반드시네모를쳐서확실히표시할것. 답안지에학과, 학번, 이름외에본인의암호 (4자리숫자 ) 를기입하면성적공고시학번대신암호를사용할것임. 1. JSP 란무엇인가? 간단히설명하라.

More information

iBATIS-SqlMaps-2-Tutorial

iBATIS-SqlMaps-2-Tutorial ibatis SQL Maps 튜토리얼 For SQL Maps Version 2.0 June 17, 2004 번역 : 이동국 (fromm0@gmail.com) 오타및오역은위메일주소로보내주시기바랍니다. 1 소개 이튜토리얼은 SQL Maps 의전형적인사용법을설명한다. 각각의주제에대해서좀더상세한정보는 http://www.ibatis.com 에 서얻을수있는 SQL Maps

More information

SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자

SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자 SQL Developer Connect to TimesTen 유니원아이앤씨 DB 팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 2010-07-28 작성자 김학준 최종수정일 2010-07-28 문서번호 20100728_01_khj 재개정이력 일자내용수정인버전

More information

제11장 프로세스와 쓰레드

제11장 프로세스와 쓰레드 제9장자바쓰레드 9.1 Thread 기초 (1/5) 프로그램 명령어들의연속 (a sequence of instruction) 프로세스 / Thread 실행중인프로그램 (program in execution) 프로세스생성과실행을위한함수들 자바 Thread 2 9.1 Thread 기초 (2/5) 프로세스단위작업의문제점 프로세스생성시오버헤드 컨텍스트스위치오버헤드

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 2012 년자바카페 OPEN 세미나 주제 : Spring 프레임워크중요구성원리 2012. 6. 16 Today Story 1. 티어와레이어 2. 웹프로그래밍과엔터프라이즈프로그래밍 3. MVC 모델과웹개발의흐름 4. Spring 3대구성원리와디자인패턴 5대원리 5. AJAX와데이터처리 Today Story 1. 티어와레이어 2. 웹프로그래밍과엔터프라이즈프로그래밍

More information

Research & Technique Apache Tomcat RCE 취약점 (CVE ) 취약점개요 지난 4월 15일전세계적으로가장많이사용되는웹애플리케이션서버인 Apache Tomcat에서 RCE 취약점이공개되었다. CVE 취약점은 W

Research & Technique Apache Tomcat RCE 취약점 (CVE ) 취약점개요 지난 4월 15일전세계적으로가장많이사용되는웹애플리케이션서버인 Apache Tomcat에서 RCE 취약점이공개되었다. CVE 취약점은 W Research & Technique Apache Tomcat RCE 취약점 (CVE-2019-0232) 취약점개요 지난 4월 15일전세계적으로가장많이사용되는웹애플리케이션서버인 Apache Tomcat에서 RCE 취약점이공개되었다. CVE-2019-0232 취약점은 Windows 시스템의 Apache Tomcat 서버에서 enablecmdlinearguments

More information

4 주차 - SPRING 환경설정및구현 Spring 기반의웹프로젝트를구성하고싶어요 T^T Spring 기반의웹환경구축 1. web.xml 수정으로 Spring 을설정하는방법 2. eclipse Spring Plug-In 을활용한템플릿프로젝트자동구성필수는아니지만해놓으면편

4 주차 - SPRING 환경설정및구현 Spring 기반의웹프로젝트를구성하고싶어요 T^T Spring 기반의웹환경구축 1. web.xml 수정으로 Spring 을설정하는방법 2. eclipse Spring Plug-In 을활용한템플릿프로젝트자동구성필수는아니지만해놓으면편 4 주차 - SPRING 환경설정및구현 Spring 기반의웹프로젝트를구성하고싶어요 T^T Spring 기반의웹환경구축 1. web.xml 수정으로 Spring 을설정하는방법 2. eclipse Spring Plug-In 을활용한템플릿프로젝트자동구성필수는아니지만해놓으면편리한것들 1. slf4j 를활용한 Logger 생성을편리하게해보자 2. AOP 설정 JDBC

More information

어댑터뷰

어댑터뷰 04 커스텀어댑터뷰 (Custom Adapter View) 커스텀어댑터뷰 (Custom Adapter View) 커스텀어댑터뷰 (Custom Adatper View) 란? u 어댑터뷰의항목하나는단순한문자열이나이미지뿐만아니라, 임의의뷰가될수 있음 이미지뷰 u 커스텀어댑터뷰설정절차 1 2 항목을위한 XML 레이아웃정의 어댑터정의 3 어댑터를생성하고어댑터뷰객체에연결

More information

뇌를 자극하는 JSP & Servlet 슬라이드

뇌를 자극하는 JSP & Servlet 슬라이드 속성 & 리스너 JSP & Servlet 2/39 Contents 학습목표 클라이언트요청에의해서블릿이실행될때에컨테이너에의해제공되는내장객체의종류와역할, 그리고접근범위특성등을알아본다. 웹컴포넌트사이의데이터전달을위한내장객체에서의속성설정과이에따른이벤트처리방법에대해알아본다. 내용 서블릿의초기화환경을표현하는 ServletConfig 객체 웹애플리케이션의실행환경을표현하는

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 1 2 3 4 5 6-2- - - - - - -3- -4- ( Knowledge Cube, Inc. ) // www.kcube.co.kr -5- -6- (KM)? - Knowledge Cube, Inc. - - Peter Drucker - -7- KM Context KM Context KM Context KM Context KM Context KM KM KM

More information

JAVA Bean & Session - Cookie

JAVA Bean & Session - Cookie JAVA Bean & Session - Cookie [ 우주최강미남 ] 발표내용소개 자바빈 (Java Bean) 자바빈의개요 자바빈의설계규약 JSP 에서자바빈사용하기 자바빈의영역 세션과쿠키 (Session & Cookie) 쿠키의개요 쿠키설정 (HTTP 서블릿 API) 세션의개요 JSP 에서의세션관리 Java Bean Q. 웹사이트를개발한다는것과자바빈?? 웹사이트라는것은크게디자이너와프로그래머가함께개발합니다.

More information

歯Writing_Enterprise_Applications_2_JunoYoon.PDF

歯Writing_Enterprise_Applications_2_JunoYoon.PDF Writing Enterprise Applications with Java 2 Platform, Enterprise Edition - part2 JSTORM http//wwwjstormpekr Revision Document Information Document title Writing Enterprise Applications

More information

< 목차 > 1. Data Access Service 개요 (ibatis 활용 ) 3. DBIO 소개

< 목차 > 1. Data Access Service 개요 (ibatis 활용 ) 3. DBIO 소개 전자정부표준프레임워크 Data Access Service 소개 2011-02-23 오픈커뮤니티김영우커미터 < 목차 > 1. Data Access Service 개요 (ibatis 활용 ) 3. DBIO 소개 Contents 1. Data Access Service 개요 1-1. 데이터처리레이어란? 1-2. 데이터처리레이어구성요소 1-3. Data Access

More information

14-Servlet

14-Servlet JAVA Programming Language Servlet (GenericServlet) HTTP (HttpServlet) 2 (1)? CGI 3 (2) http://jakarta.apache.org JSDK(Java Servlet Development Kit) 4 (3) CGI CGI(Common Gateway Interface) /,,, Client Server

More information

Microsoft PowerPoint Android-SDK설치.HelloAndroid(1.0h).pptx

Microsoft PowerPoint Android-SDK설치.HelloAndroid(1.0h).pptx To be an Android Expert 문양세강원대학교 IT 대학컴퓨터학부 Eclipse (IDE) JDK Android SDK with ADT IDE: Integrated Development Environment JDK: Java Development Kit (Java SDK) ADT: Android Development Tools 2 JDK 설치 Eclipse

More information

(Microsoft PowerPoint - spring_ibatis.ppt [\310\243\310\257 \270\360\265\345])

(Microsoft PowerPoint - spring_ibatis.ppt [\310\243\310\257 \270\360\265\345]) 중소기업직업훈련컨소시엄 Spring & Ibatis 프레임워크과정 11.8.27 ~ 11.10.15 한국소프웨어기술진흥협회 (KOSTA) 1 Web Application 설계방식 모델 1 설계방식 모델 2 설계방식 2 모델 1 설계방식 (1/2) 모델 1 개요 JSP 만이용하여개발하는경우 JSP + Java Bean을이용하여개발하는경우 Model2의 Controller

More information

2장 변수와 프로시저 작성하기

2장  변수와 프로시저 작성하기 Chapter. RequestDispatcher 활용 요청재지정이란? RequestDispatcher 활용 요청재지정구현예제 Chapter.9 : RequestDispatcher 활용 1. 요청재지정이란? 클라이언트로부터요청받은 Servlet 프로그램이응답을하지않고다른자원에수행흐름을넘겨다른자원의처리결과를대신응답하는것또는다른자원의수행결과를포함하여응답하는것을요청재지정이라고한다.

More information

J2EE & Web Services iSeminar

J2EE & Web Services iSeminar 9iAS :, 2002 8 21 OC4J Oracle J2EE (ECperf) JDeveloper : OLTP : Oracle : SMS (Short Message Service) Collaboration Suite Platform Email Developer Suite Portal Java BI XML Forms Reports Collaboration Suite

More information

Spring Batch 2.0 시작하기

Spring Batch 2.0 시작하기 작성자 : 최한수 (cuteimp@gmail.com) 최종수정일 : 2009 년 6 월 22 일 본문서는 Spring Batch을학습하고자하는사람들을위하여 Sample Project를통해 Spring Batch 의기본적인이해와사용을돕는것을목적으로한다. Spring Batch 소개 Spring Batch 란? 우리가일반적으로알고있는 Batch라는것은일괄적으로어떠한작업을반복적으로처리하는것이다.

More information

* Factory class for query and DML clause creation * tiwe * */ public class JPAQueryFactory implements JPQLQueryFactory private f

* Factory class for query and DML clause creation * tiwe * */ public class JPAQueryFactory implements JPQLQueryFactory private f JPA 에서 QueryDSL 사용하기위해 JPAQuery 인스턴스생성방법 http://ojc.asia, http://ojcedu.com 1. JPAQuery 를직접생성하기 JPAQuery 인스턴스생성하기 QueryDSL의 JPAQuery API를사용하려면 JPAQuery 인스턴스를생성하면된다. // entitymanager는 JPA의 EntityManage

More information

MVVM 패턴의 이해

MVVM 패턴의 이해 Seo Hero 요약 joshua227.tistory. 2014 년 5 월 13 일 이문서는 WPF 어플리케이션개발에필요한 MVVM 패턴에대한내용을담고있다. 1. Model-View-ViewModel 1.1 기본개념 MVVM 모델은 MVC(Model-View-Contorl) 패턴에서출발했다. MVC 패턴은전체 project 를 model, view 로나누어

More information

PowerPoint Presentation

PowerPoint Presentation Oracle9i Application Server Enterprise Portal Senior Consultant Application Server Technology Enterprise Portal? ERP Mail Communi ty Starting Point CRM EP BSC HR KMS E- Procurem ent ? Page Assembly Portal

More information

슬라이드 1

슬라이드 1 [ 실습 ] 예제어플리케이션개발 1. 실습개요 2. 프로젝트환경구성 3. 기본환경설정 4. 예제어플리케이션개발 5. 참조 - 1 - 1. 실습개요 (1/4) 스프링기반의 EGOV 프레임워크를사용하여구현된예제어플리케이션구현을통하여모바일 UX Layer와 Business Layer의연계를살펴본다. 예제어플리케이션구현기능 정보알림이등록, 수정, 삭제, 조회 Presentation

More information

슬라이드 1

슬라이드 1 EJB and JBoss SEAM 양수열소장 Java Champion, JCO Advisor, Inpion Consulting Agenda Web Framework & EJB What is Seam? Why Seam? Q/A Framework history Main Milestone in Standard & OpenSource 95 96 97 98 99 00

More information

[Brochure] KOR_TunA

[Brochure] KOR_TunA LG CNS LG CNS APM (TunA) LG CNS APM (TunA) 어플리케이션의 성능 개선을 위한 직관적이고 심플한 APM 솔루션 APM 이란? Application Performance Management 란? 사용자 관점 그리고 비즈니스 관점에서 실제 서비스되고 있는 어플리케이션의 성능 관리 체계입니다. 이를 위해서는 신속한 장애 지점 파악 /

More information

Mobile Service > IAP > Android SDK [ ] IAP SDK TOAST SDK. IAP SDK. Android Studio IDE Android SDK Version (API Level 10). Name Reference V

Mobile Service > IAP > Android SDK [ ] IAP SDK TOAST SDK. IAP SDK. Android Studio IDE Android SDK Version (API Level 10). Name Reference V Mobile Service > IAP > Android SDK IAP SDK TOAST SDK. IAP SDK. Android Studio IDE 2.3.3 Android SDK Version 2.3.3 (API Level 10). Name Reference Version License okhttp http://square.github.io/okhttp/ 1.5.4

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 한국성서대학교컴퓨터소프트웨어학과 BoostCourse (Full-Stack Developer) 김석래 예약서비스 기본제공페이지 Spring Framework 시스템설정 (pom.xml) Pom.xml Spring DB Servlet JSON 아직확실히필요한지알수없음 dbcp MySQL DTO DTO DAO Controller Service View Config

More information

Portal_9iAS.ppt [읽기 전용]

Portal_9iAS.ppt [읽기 전용] Application Server iplatform Oracle9 A P P L I C A T I O N S E R V E R i Oracle9i Application Server e-business Portal Client Database Server e-business Portals B2C, B2B, B2E, WebsiteX B2Me GUI ID B2C

More information

mytalk

mytalk 한국정보보호학회소프트웨어보안연구회 총괄책임자 취약점분석팀 안준선 ( 항공대 ) 도경구 ( 한양대 ) 도구개발팀도경구 ( 한양대 ) 시큐어코딩팀 오세만 ( 동국대 ) 전체적인 그림 IL Rules Flowgraph Generator Flowgraph Analyzer 흐름그래프 생성기 흐름그래프 분석기 O parser 중간언어 O 파서 RDL

More information

q 이장에서다룰내용 1 객체지향프로그래밍의이해 2 객체지향언어 : 자바 2

q 이장에서다룰내용 1 객체지향프로그래밍의이해 2 객체지향언어 : 자바 2 객체지향프로그래밍 IT CookBook, 자바로배우는쉬운자료구조 q 이장에서다룰내용 1 객체지향프로그래밍의이해 2 객체지향언어 : 자바 2 q 객체지향프로그래밍의이해 v 프로그래밍기법의발달 A 군의사업발전 1 단계 구조적프로그래밍방식 3 q 객체지향프로그래밍의이해 A 군의사업발전 2 단계 객체지향프로그래밍방식 4 q 객체지향프로그래밍의이해 v 객체란무엇인가

More information

ibmdw_rest_v1.0.ppt

ibmdw_rest_v1.0.ppt REST in Enterprise 박찬욱 1-1- MISSING PIECE OF ENTERPRISE Table of Contents 1. 2. REST 3. REST 4. REST 5. 2-2 - Wise chanwook.tistory.com / cwpark@itwise.co.kr / chanwook.god@gmail.com ARM WOA S&C AP ENI

More information

ALTIBASE 사용자가이드 Templete

ALTIBASE 사용자가이드 Templete Real Alternative DBMS ALTIBASE, Since 1999 MyBatis 연동가이드 2014. 10 Copyright c 2000~2014 ALTBASE Corporation. All Rights Reserved. Document Control Change Record Date Author Change Reference 2013-12 sypark

More information

MasoJava4_Dongbin.PDF

MasoJava4_Dongbin.PDF JSTORM http://wwwjstormpekr Issued by: < > Revision: Document Information Document title: Document file name: MasoJava4_Dongbindoc Revision number: Issued by: < > SI, dbin@handysoftcokr

More information

Microsoft PowerPoint - aj-lecture7.ppt [호환 모드]

Microsoft PowerPoint - aj-lecture7.ppt [호환 모드] Servlet 이해하기 웹 MVC 524730-1 2019 년봄학기 4/29/2019 박경신 Servlet 자바플랫폼에서컴포넌트기반의웹애플리케이션개발기술 JSP는서블릿기술에기반함 Servlet의프리젠테이션문제를해결하기위해 JSP가등장 이로인해웹애플리케이션의유지보수어려움심각. JSP 모델2가주목받으며다시서블릿에대한중요성부각 Servlet 변천 1 서블릿문제점대두

More information

JAVA PROGRAMMING 실습 08.다형성

JAVA PROGRAMMING 실습 08.다형성 2015 학년도 2 학기 1. 추상메소드 선언은되어있으나코드구현되어있지않은메소드 abstract 키워드사용 메소드타입, 이름, 매개변수리스트만선언 public abstract String getname(); public abstract void setname(string s); 2. 추상클래스 abstract 키워드로선언한클래스 종류 추상메소드를포함하는클래스

More information

09-interface.key

09-interface.key 9 Database insert(record r): boolean find(key k): Record 1 Record getkey(): Key * Record Key Database.? Key equals(key y): boolean Database insert(record r): boolean find(key k): Record * Database OK 1

More information

서블릿의라이프사이클 뇌를자극하는 JSP & Servlet

서블릿의라이프사이클 뇌를자극하는 JSP & Servlet 서블릿의라이프사이클 뇌를자극하는 JSP & Servlet Contents v 학습목표 서블릿클래스로부터서블릿객체가만들어지고, 서블릿객체가초기화되어서서블릿이되고, 서블릿이사용되고, 최종적으로소멸되기까지의전과정을서블릿의라이프사이클이라고한다. 이장에서는서브릿의라이프사이클에관련된프로그래밍기술을배워보자. v 내용 서블릿의라이프사이클 서블릿클래스의 init 메서드의 destroy

More information

04장

04장 20..29 1: PM ` 199 ntech4 C9600 2400DPI 175LPI T CHAPTER 4 20..29 1: PM ` 200 ntech4 C9600 2400DPI 175LPI T CHAPTER 4.1 JSP (Comment) HTML JSP 3 home index jsp HTML JSP 15 16 17 18 19 20

More information

ALTIBASE 사용자가이드 Templete

ALTIBASE 사용자가이드 Templete Real Alternative DBMS ALTIBASE, Since 1999 ibatis 연동가이드 2010. 09 Copyright c 2000~2014 ALTBASE Corporation. All Rights Reserved. Document Control Change Record Date Author Change Reference 2010-09 snkim

More information

Network Programming

Network Programming Part 5 확장된 Network Programming 기술 1. Remote Procedure Call 2. Remote Method Invocation 3. Object Request Broker 2. Java RMI

More information

Data Provisioning Services for mobile clients

Data Provisioning Services for mobile clients 3 장. 웹어플리케이션과 JSP 및 Servlet 의이해 제 3 장 1. 웹어플리케이션개념및폴더구조 웹어플리케이션의개념 독립어플리케이션 (Stand-alone Application) 웹어플리케이션 (Web Application) 웹브라우저상에서수행되는어플리케이션 웹어플리케이션이 Tomcat 에서구현될때의규칙 임의의웹어플리케이션은 webapps 폴더하위에하나의폴더로구성

More information

gnu-lee-oop-kor-lec06-3-chap7

gnu-lee-oop-kor-lec06-3-chap7 어서와 Java 는처음이지! 제 7 장상속 Super 키워드 상속과생성자 상속과다형성 서브클래스의객체가생성될때, 서브클래스의생성자만호출될까? 아니면수퍼클래스의생성자도호출되는가? class Base{ public Base(String msg) { System.out.println("Base() 생성자 "); ; class Derived extends Base

More information

PowerPoint Presentation

PowerPoint Presentation Class - Property Jo, Heeseung 목차 section 1 클래스의일반구조 section 2 클래스선언 section 3 객체의생성 section 4 멤버변수 4-1 객체변수 4-2 클래스변수 4-3 종단 (final) 변수 4-4 멤버변수접근방법 section 5 멤버변수접근한정자 5-1 public 5-2 private 5-3 한정자없음

More information

슬라이드 1

슬라이드 1 [ CRM Fair 2004 ] CRM 1. CRM Trend 2. Customer Single View 3. Marketing Automation 4. ROI Management 5. Conclusion 1. CRM Trend 1. CRM Trend Operational CRM Analytical CRM Sales Mgt. &Prcs. Legacy System

More information

<param-value> 파라미터의값 </param-value> </init-param> </servlet> <servlet-mapping> <url-pattern>/ 매핑문자열 </url-pattern> </servlet-mapping> - 위의예에서 ServletC

<param-value> 파라미터의값 </param-value> </init-param> </servlet> <servlet-mapping> <url-pattern>/ 매핑문자열 </url-pattern> </servlet-mapping> - 위의예에서 ServletC 내장객체의정리 헷갈리는내장객체들정리하기 - 컨테이너안에서는수많은객체들이스스로의존재목적에따라서일을한다. - ServletContext, ServletConfig 객체는컨텍스트초기화와서블릿초기화정보를가지고있다. - 이외에도다음의객체들이서블릿과 JSP와 EL에서각각의역할을수행한다. 서블릿의객체 JspWriter HttpServletRequest HttpServletResponse

More information

슬라이드 1

슬라이드 1 - 1 - 전자정부모바일표준프레임워크실습 LAB 개발환경 실습목차 LAB 1-1 모바일프로젝트생성실습 LAB 1-2 모바일사이트템플릿프로젝트생성실습 LAB 1-3 모바일공통컴포넌트생성및조립도구실습 - 2 - LAB 1-1 모바일프로젝트생성실습 (1/2) Step 1-1-01. 구현도구에서 egovframe>start>new Mobile Project 메뉴를선택한다.

More information

단계

단계 TIBERO-WAS 연동 Guide 본문서에서는 Tibero RDBMS 에서제공하는 JDBC 통한 JEUS, WEBLOGIC 등다양한 WAS (Web Application Server) 제품과의연동방법을알아본다. Contents 1. Connection Pool 방식... 2 2. JEUS 연동... 3 2.1. JEUSMain.xml 설정 (Thin 방식

More information

Dialog Box 실행파일을 Web에 포함시키는 방법

Dialog Box 실행파일을 Web에 포함시키는 방법 DialogBox Web 1 Dialog Box Web 1 MFC ActiveX ControlWizard workspace 2 insert, ID 3 class 4 CDialogCtrl Class 5 classwizard OnCreate Create 6 ActiveX OCX 7 html 1 MFC ActiveX ControlWizard workspace New

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Synergy EDMS www.comtrue.com opyright 2001 ComTrue Technologies. All right reserved. - 1 opyright 2001 ComTrue Technologies. All right reserved. - 2 opyright 2001 ComTrue Technologies. All right reserved.

More information

Microsoft PowerPoint SDK설치.HelloAndroid(1.5h).pptx

Microsoft PowerPoint SDK설치.HelloAndroid(1.5h).pptx To be an Android Expert 문양세강원대학교 IT 대학컴퓨터학부 개발환경구조및설치순서 JDK 설치 Eclipse 설치 안드로이드 SDK 설치 ADT(Androd Development Tools) 설치 AVD(Android Virtual Device) 생성 Hello Android! 2 Eclipse (IDE) JDK Android SDK with

More information

Microsoft PowerPoint - aj-lecture1.ppt [호환 모드]

Microsoft PowerPoint - aj-lecture1.ppt [호환 모드] 인터넷과웹서비스 개발환경구성, JSP 기본구조 인터넷과 WWW(World Wide Web) 인터넷은 TCP/IP 기반의네트워크가전세계적으로확대되어하나로연결된 네트워크의네트워크 WWW(World Wide Web) 는인터넷기반의서비스중하나 이름프로토콜포트기능 WWW http 80 웹서비스 524730-1 2019 년봄학기 3/11/2019 박경신 Email SMTP/POP3/IMAP

More information

안드로이드기본 11 차시어댑터뷰 1 학습목표 어댑터뷰가무엇인지알수있다. 리스트뷰와스피너를사용하여데이터를출력할수있다. 2 확인해볼까? 3 어댑터뷰 1) 학습하기 어댑터뷰 - 1 -

안드로이드기본 11 차시어댑터뷰 1 학습목표 어댑터뷰가무엇인지알수있다. 리스트뷰와스피너를사용하여데이터를출력할수있다. 2 확인해볼까? 3 어댑터뷰 1) 학습하기 어댑터뷰 - 1 - 11 차시어댑터뷰 1 학습목표 어댑터뷰가무엇인지알수있다. 리스트뷰와스피너를사용하여데이터를출력할수있다. 2 확인해볼까? 3 어댑터뷰 1) 학습하기 어댑터뷰 - 1 - ArrayAdapter ArrayAdapter adapter = new ArrayAdapter(this, android.r.layout.simple_list_item_1,

More information

API STORE 키발급및 API 사용가이드 Document Information 문서명 : API STORE 언어별 Client 사용가이드작성자 : 작성일 : 업무영역 : 버전 : 1 st Draft. 서브시스템 : 문서번호 : 단계 : Docum

API STORE 키발급및 API 사용가이드 Document Information 문서명 : API STORE 언어별 Client 사용가이드작성자 : 작성일 : 업무영역 : 버전 : 1 st Draft. 서브시스템 : 문서번호 : 단계 : Docum API STORE 키발급및 API 사용가이드 Document Information 문서명 : API STORE 언어별 Client 사용가이드작성자 : 작성일 : 2012.11.23 업무영역 : 버전 : 1 st Draft. 서브시스템 : 문서번호 : 단계 : Document Distribution Copy Number Name(Role, Title) Date

More information

Microsoft PowerPoint - Java7.pptx

Microsoft PowerPoint - Java7.pptx HPC & OT Lab. 1 HPC & OT Lab. 2 실습 7 주차 Jin-Ho, Jang M.S. Hanyang Univ. HPC&OT Lab. jinhoyo@nate.com HPC & OT Lab. 3 Component Structure 객체 (object) 생성개념을이해한다. 외부클래스에대한접근방법을이해한다. 접근제어자 (public & private)

More information

Microsoft PowerPoint - GUI _DB연동.ppt [호환 모드]

Microsoft PowerPoint - GUI _DB연동.ppt [호환 모드] GUI 설계 6 주차 DB 연동김문정 tops@yd.ac.kr 강의순서강의전환경 JDK 설치및환경설정톰캣설치및환경설정이클립스 (JEE) 설치및환경설정 MySQL( 드라이버 ) 설치및커넥터드라이브연결 DB 생성 - 계정생성이클립스에서 DB에연결서버생성 - 프로젝트생성 DB연결테이블생성및등록 2 MySQL 설치확인 mysql - u root -p MySQL 에데이터베이스추가

More information

교육자료

교육자료 THE SYS4U DODUMENT Java Reflection & Introspection 2012.08.21 김진아사원 2012 SYS4U I&C All rights reserved. 목차 I. 개념 1. Reflection 이란? 2. Introspection 이란? 3. Reflection 과 Introspection 의차이점 II. 실제사용예 1. Instance의생성

More information

PowerPoint Presentation

PowerPoint Presentation Package Class 1 Heeseung Jo 목차 section 1 패키지개요와패키지의사용 section 2 java.lang 패키지의개요 section 3 Object 클래스 section 4 포장 (Wrapper) 클래스 section 5 문자열의개요 section 6 String 클래스 section 7 StringBuffer 클래스 section

More information

The Self-Managing Database : Automatic Health Monitoring and Alerting

The Self-Managing Database : Automatic Health Monitoring and Alerting The Self-Managing Database : Automatic Health Monitoring and Alerting Agenda Oracle 10g Enterpirse Manager Oracle 10g 3 rd Party PL/SQL API Summary (Self-Managing Database) ? 6% 6% 12% 55% 6% Source: IOUG

More information

슬라이드 1

슬라이드 1 1. 개요 - 실행환경연계통합레이어 (1/3) 연계통합레이어는타시스템과의연동기능을제공하는 Layer 임 전자정부개발프레임워크실행환경 서비스그룹 Presentation Layer 설명 업무프로그램과사용자간의 Interface 를담당하는 Layer 로서, 사용자화면구성, 사용자입력정보검증등의기능을제공함 Layer Presentation Layer Logic Business

More information

4S 1차년도 평가 발표자료

4S 1차년도 평가 발표자료 모바일 S/W 프로그래밍 안드로이드개발환경설치 2012.09.05. 오병우 모바일공학과 JDK (Java Development Kit) SE (Standard Edition) 설치순서 Eclipse ADT (Android Development Tool) Plug-in Android SDK (Software Development Kit) SDK Components

More information

rmi_박준용_final.PDF

rmi_박준용_final.PDF (RMI) - JSTORM http://wwwjstormpekr (RMI)- Document title: Document file name: Revision number: Issued by: Document Information (RMI)- rmi finaldoc Issue Date: Status:

More information

Corporate PPT Template

Corporate PPT Template Tech Sales Consultant Oracle Corporation What s New in Oracle9iAS Forms? Why upgrade Oracle Forms to the WEB? Agenda Oracle9i Forms Web Oracle9i Forms Oracle9i Forms Oracle9i Forms What s NEW in Oracle

More information

chapter1,2.doc

chapter1,2.doc JavaServer Pages Version 08-alpha copyright2001 B l u e N o t e all rights reserved http://jspboolpaecom vesion08-alpha, UML (?) part1part2 Part1 part2 part1 JSP Chapter2 ( ) Part 1 chapter 1 JavaServer

More information

JDBC 소개및설치 Database Laboratory

JDBC 소개및설치 Database Laboratory JDBC 소개및설치 JDBC } What is the JDBC? } JAVA Database Connectivity 의약어 } 자바프로그램안에서 SQL 을실행하기위해데이터베이스를연결해주는응용프로그램인터페이스 } 연결된데이터베이스의종류와상관없이동일한방법으로자바가데이터베이스내에서발생하는트랜잭션을제어할수있도록하는환경을제공 2 JDBC Driver Manager }

More information

Microsoft PowerPoint - 웹프로그래밍_ ppt [호환 모드]

Microsoft PowerPoint - 웹프로그래밍_ ppt [호환 모드] 목차 웹프로그래밍 내장객체의개요 내장객체의종류 11 주차 7 장 JSP 페이지의내장객체와영역 2 내장객체 (Implicit Object) JSP 페이지에서제공하는특수한레퍼런스타입의변수사용하고자하는변수와메소드에접근선언과객체생성없이사용할수있음 내장객체 내장객체 request response out session application pagecontext page

More information

PowerPoint Presentation

PowerPoint Presentation public class SumTest { public static void main(string a1[]) { int a, b, sum; a = Integer.parseInt(a1[0]); b = Integer.parseInt(a1[1]); sum = a + b ; // 두수를더하는부분입니다 System.out.println(" 두수의합은 " + sum +

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 @ Lesson 2... ( ). ( ). @ vs. logic data method variable behavior attribute method field Flow (Type), ( ) member @ () : C program Method A ( ) Method B ( ) Method C () program : Java, C++, C# data @ Program

More information

작성자 : 김성박\(삼성 SDS 멀티캠퍼스 전임강사\)

작성자 : 김성박\(삼성 SDS 멀티캠퍼스 전임강사\) Session 을이용한현재로그인한사용자의 숫자구하기 작성자 : 김성박 ( 삼성 SDS 멀티캠퍼스전임강사 ) email : urstory@nownuri.net homepage : http://sunny.sarang.net - 본문서는http://sunny.sarang.net JAVA강좌란 혹은 http://www.javastudy.co.kr 의 칼럼 란에서만배포합니다.

More information