'WEB/JSP'에 해당되는 글 3건

  1. 2019.01.02 [JSP] request 용 패스 범위
  2. 2014.02.10 [JSP] Comet 사용법
  3. 2014.02.07 [JSP] JDBC 커넥션풀 설정/사용 방법
WEB/JSP2019. 1. 2. 13:42

ex) http://localhost/test/test.jsp


request.getContextPath()   return /test

request.getRequestURI()  return /test/test.jsp

request.getRequestURL() return http://localhost/test/test.jsp

request.ServletPath()  return /test.jsp

request.getRealPath("")  return null or c:/www/webapps/test


host = url.replace(uri,"").replace(contextPath,"");    return http://localhost

remoteAddr = request.getRemoteAddr();            remoteAddr(ex. 0.0.0.0)

'WEB > JSP' 카테고리의 다른 글

[JSP] Comet 사용법  (0) 2014.02.10
[JSP] JDBC 커넥션풀 설정/사용 방법  (0) 2014.02.07
Posted by idwook
WEB/JSP2014. 2. 10. 11:23

수정일자:2014/02/10


정의 및 사용범위 


서버 PUSH용으로 사용가능하나 성능이 저하될수 있음을 유의해야함

Polling , Long Polling ,Streaming 의 서버 폴링 방법이 있으며

보통 Long Polling, Strreaming 을 Comet이라한다

Reverse Ajax, Ajax Push, Two-Way-Web, HTTP server PUSH

로 불리기도 한다.

Tomcat,Jetty,Resin 에서의 사용방법은 조금씩 다르며 

여기에서는 Tomcat 사용방법에 대해서만 알아봄


설치 및 테스트 환경


Eclipse 에서 Dynamic Web Project

Tomcat 7 서버 구동


설정사항


Tomcat Server의 server.xml 설정


<Connector URIEncoding="UTF-8" connectionTimeout="20000" port="8080" protocol="org.apache.coyote.http11.HttpNioProtocol" redirectPort="8443" useComet="true" />



사용방법 ※개념적인 형태만 구현 테스트 되지 않은 코드 


 CometProcessor 구현


public class CometServlet extends HttpServlet implements CometProcessor {

public void init(){}

public void destory(){}

public void event(CometEvent event){

HttpServletRequest request = event.getHttpServletRequest();

HttpServletResponse response = event.getHttpServletResponse();


if(event.getType() == CometEvent.EventType.BEGIN){

System.out.println("Begin Comet!");

}else if(event.getType() == CometEvent.EventType.ERROR){

event.close();

}else if(event.getType() == CometEvent.EventType.END){

event.close();

}else if(event.getType() == CometEvent.EventType.READ){

event.close();

}

}

}



Javascript Ajax 구현 jquery-1.10.2.js


<script type="text/javascript" src="/js/jquery-1.10.2.js"></script>

<script type="text/javascript">

function callComet(){

$.ajax({ type:"POST",

url:CometServlet,

data:param,

dataType:"xml",

success:callBack

error:function(xhr,status,error){
    alert("error");

},

complete:function(xhr,status,error){

}

});

}

function callBack(xml){

var data = $(xml).find("data").text();

alert(data);

setTimeout(function(){callComet();},10000};    //loop

}


$(document).ready(function(){

callComet();

});

</javascript>




참고 링크

comet 예제1 http://corund.net/blog/entry/Comet%EC%97%90-%EB%8C%80%ED%95%98%EC%97%AC

comet 예제2 http://tomcat.apache.org/tomcat-7.0-doc/aio.html

comet 예제3 https://www.ibm.com/developerworks/library/wa-cometjava/

'WEB > JSP' 카테고리의 다른 글

[JSP] request 용 패스 범위  (0) 2019.01.02
[JSP] JDBC 커넥션풀 설정/사용 방법  (0) 2014.02.07
Posted by idwook
WEB/JSP2014. 2. 7. 11:38

설치 및 테스트 환경


Eclipse 에서 Dynamic Web Project

Tomcat v7.0 서버 구동 


설치 사항 


1.다운로드 파일


commons.collections4-4.0.jar

commons.dbcp-1.4.jar

commons.pool-1.6.jar

mysql-connector-java-3.0.17-ga-bin.jar


다운로드 사이트

http://dev.mysql.com/downloads/connector/j/

http://dev.mysql.com/downloads/connector/j/3.0.html


http://commons.apache.org/proper/commons-dbcp/download_dbcp.cgi

http://commons.apache.org/proper/commons-pool/download_pool.cgi

http://commons.apache.org/proper/commons-collections/download_collections.cgi  ※ tomcat6 이상에서는 제외된듯

http://archive.apache.org/dist/commons/


2.배치

jar 파일들 다음과 같이 위치 시킨다.

WEB-INF\lib\

   commons.collections4-4.0.jar

   commons.dbcp-1.4.jar

   commons.pool-1.6.jar

   mysql-connector-java-3.0.17-ga-bin.jar


web.xml 수정

WEB-INF\web.xml

<resource-ref>

<description>DB Connection</description>

<res-ref-name>jdbc/test</res-ref-name>

<res-auth>Container</res-auth>

    </resource-ref>


개발시 Eclipse Project- Servers 아래 server.xml 수정

운영시 Tomcat\conf\server.xml

context 안에 Resource 를 추가한다.

<Context docBase="test" path="/test" .................

<Resource name="jdbc/test"  web.xml <res-ref-name>jdbc/test</res-ref-name> 같아야 한다

auth="Container"

type="javax.sql.DataSource"

maxActive="100"

maxIdle="30"

maxWait="10000"

username="root"

password="password"

driverClassName="com.mysql.jdbc.Driver" 

url="jdbc:mysql://localhost:3306/test />

.........</Context>


테스트 

public static void main(String[] args){

InitialContext ctx = new InitialContext();

DataSource pool = (DataSource)ctx.lookup("java:comp/env/jdbc/test");

if(pool == null) {

System.out.prinltn("Unknown");

return;

}

Connection con = pool.getConnection();

Statement stmt = con.createStatement();

if(stmt != null) System.out.println("Success");

stmt.close();

con.close();

}

JAVA SQL 문법 링크 http://itposting.tistory.com/category/Java





링크 

예제 http://tomcat.apache.org/tomcat-7.0-doc/jndi-datasource-examples-howto.html

예제 http://tomcat.apache.org/tomcat-8.0-doc/jndi-datasource-examples-howto.html

'WEB > JSP' 카테고리의 다른 글

[JSP] request 용 패스 범위  (0) 2019.01.02
[JSP] Comet 사용법  (0) 2014.02.10
Posted by idwook