티스토리 뷰
1. 톰캣/conf/server.xml 에서
<Context> 태그를 편집
<Context path="익스플로러 주소창에서의 경로" docBase="오프라인상의 경로" debug="0" reloadable="true" crossContext="true">
<Context path="" docBase="c:/test" debug="0" reloadable="true" crossContext="true">
위와 같다면 http://localhost:8080/ 에서 c:/test 밑에 있는 index.html 적용된다.
2. 톰캣/cont/web.xml 에서
<servlet-mapping>
<servlet-name>invoker</servlet-name>
<url-pattern>/servlet/*</url-pattern>
</servlet-mapping>
이 부분의 주석을 해제하면 http://localhost:8080/servlet/"서블릿이름" 과 같은 형식으로 서블릿을 호출할 수 있게 된다.
웹응용프로그램/WEB-INF/web.xml 에서
<servlet>
<servlet-name>"name"</servlet-name>
<servlet-class>"서블릿 경로와 이름"</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>"name"</servlet-name>
<url-pattern>"uri 패턴"</url-pattern>
</servlet-mapping>
위의 라인을 추가해주게되면 /servlet/"서블릿이름" 과 같이 호출하지 않고
server.xml 에서의 Context path="" 여기서 설정한 주소 바로 다음에서 서블릿 이름을
호출할 수 있게 된다.
예>
<servlet>
<servlet-name>hello</servlet-name>
<servlet-class>asdf.HelloWorld</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>hello</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
일 경우에는 http://localhost:8080/hello 일시에 asdf.HelloWorld 서블릿이 호출된다.,
3. 데이터 소스 설정
밑의 내용을 server.xml 의 <Context> 태그의 사이에 삽입한다. !!! 주의 Resource name 에서
같은 이름이 2개 있으면 안됨
<!-- datasource config start -->
<Resource name="jdbc/mysqlDS" auth="Container"
type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/mysqlDS">
<parameter>
<name>factory</name> <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<!--
Maximum number of dB connections in pool. Make sure you
configure your mysqld max_connections large enough to handle
all of your db connections. Set to 0 for no limit.
-->
<parameter>
<name>maxActive</name>
<value>100</value>
</parameter>
<!--
Maximum number of idle dB connections to retain in pool.
Set to 0 for no limit.
-->
<parameter>
<name>maxIdle</name>
<value>30</value>
</parameter>
<!--
Maximum time to wait for a dB connection to become available
in ms, in this example 10 seconds. An Exception is thrown if
this timeout is exceeded. Set to -1 to wait indefinitely.
-->
<parameter>
<name>maxWait</name>
<value>10000</value>
</parameter>
<parameter>
<!--username 에는 db 사용자의 이름이 들어간다. -->
<name>username</name>
<value>root</value>
</parameter>
<parameter>
<!--password에는 db 패스워드의 이름이 들어간다.-->
<name>password</name>
<value>1234</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>org.gjt.mm.mysql.Driver</value>
</parameter>
<!--데이터베이스의 경로를 표시한다.
주소와 포트번호 그리고 데이터베이스 이름인 mysql 이 표시되어있다.
-->
<parameter>
<name>url</name>
<value>jdbc:mysql://127.0.0.1:3306/mysql?useUnicode=true&characterEncoding=euc-kr</value>
</parameter>
</ResourceParams>
--web.xml 을 수정
</web-app> 바로 위에다가 다음 라인을 추가
<!-- data source config start -->
<resource-ref>
<description>
Resource reference to a factory for java.sql.Connection
instances that may be used for talking to a particular
database that is configured in the server.xml file.
</description>
<res-ref-name>
jdbc/mysqlDS
</res-ref-name>
<res-type>
javax.sql.DataSource
</res-type>
<res-auth>
Container
</res-auth>
</resource-ref>
<!-- data source config end -->
간단한 테스트용 소스
<%@ page
import="java.sql.*, javax.naming.*, javax.sql.*"%><%
Context initCtx = new InitialContext();
DataSource ds = (DataSource)initCtx.lookup("java:comp/env/jdbc/mysqlDS");
Connection conn = ds.getConnection();
Statement stmt = conn.createStatement();
String query = "select now()"; // 현재 시간을 구하는 query
ResultSet rs = stmt.executeQuery(query);
if(rs.next()) {
out.println(rs.getString(1));
}
rs.close();
stmt.close();
conn.close();
%>
- Total
- Today
- Yesterday
- 대청호
- 나는 아직 살아있는건가
- 코드 예시
- Java PermGen eclipse 이클립스 메모리 부족
- 대둔산
- 윈도우 제거된 디바이스 드라이버
- kde 전환
- Mista Swing
- 놈놈놈
- Don't let me be misunderstood
- 2MB 개새끼
- 랜 연결상태
- 정규식 Regex
- 남자는 키
- 18-70mm
- 멀티바이트 와이드 문자열 변경
- Signed applet
- 엑스포다리
- 공돌/공순 애인님 관리법
- Java Applet
- Java
- 수락계곡
- ckeditor5 #custom image file insert #uploads
- gettimeofday
- spring-boot #java
- 날자계산
- 섹스와 남자들의 착각
- 자바스크립트
- 시동 안걸릴때 여자들은?
- D200
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |