1. Servlet

1-1. Servlet 디렉토리 생성

아파치 서버 만들기 참고하여 프로젝트 디렉토리 생성

c:\webroot

(1) [프로젝트 디렉토리] c:\webroot 하단에 WEB-INF 폴더 생성

(2) WEB-INF 디렉토리 하단에 classes, lib, src 폴더 생성

(3) [TOMCAT_HOME]\webapps\ROOT\web.xml 파일을 [프로젝트 디렉토리]\WEB-INF 폴더 내로 복사

[프로젝트 디렉토리] > WEB-INF

1-2. 클래스 생성 및 등록 (Annotation)

WEB-INF 폴더 내 web.xml 파일을 이용해서 서블릿 클래스를 등록하지 않고 자바 소스에 직접 url를 기술하는 방식

web.xml 파일 안의 web-app 옵션 중 metadata-complete를 반드시 false로 바꿔줘야 함

(1) web.xml 파일 수정

metadata-complete="true" 
<!-- true를 false로 수정 -->
metadata-complete="false"

(2) src 폴더에 서블릿 소스를 생성

WEB-INF 폴더 > src 폴더 > 다음의 코드를 텍스트 파일로 HelloTest.java를 생성

  • 코드
    1. “ 따옴표 주의
    2. 파일명과 public class [클래스 이름]이 같아야 함 (대소문자 구문)
    import java.io.IOException;
    import java.io.PrintWriter;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    import javax.servlet.annotation.WebServlet;
    @WebServlet("/hellojava")
    
    public class HelloTest extends HttpServlet {
    
        public void doGet(HttpServletRequest req, HttpServletResponse resp)         throws IOException {
            resp.setContentType("text/html; charset=UTF-8");
    
            PrintWriter out = resp.getWriter();
            
            out.println("<HTML><HEAD><TITLE>HelloServlet</TITLE></HEAD>");
            out.println("<BODY>");
            out.println("<h>안녕하세요? 서블릿 테스트 예제입니다.</h2>");
            out.println("<H2> Clinet IP: " + req.getRemoteAddr() + "</H2>");
            out.println("<H2> Client Host : " + req.getRemoteHost() + "</H2>");
            out.println("<H2> Request URI : " + req.getRequestURI() + "</H2>");
            out.println("</BODY></HTML>");
        }
    }
    

(3) 서블릿 소스 컴파일

cmd에서 src 폴더로 디렉토리 변경 후, javac –d ../classes [java 파일명] –encoding UTF-8 실행

javac –d ../classes HelloTest.java –encoding UTF-8

컴파일을 하고 나면 classes 폴더에 [java 파일명].class가 생성된 것을 볼 수 있다

1-3. 웹 접속하기

브라우저에서 http://127.0.0.1:8080/hellojava 접속하면 다음 화면을 볼 수 있다

2. MariaDB 조회하기

2-1. MariaDB 커넥터 라이브러리 추가하기

(1) JDBC 커넥터 다운로드

https://mariadb.com/downloads/connectors/

홈페이지에서 자바 버전에 맞는 jdbc connector를 다운로드한다

(2) lib 폴더에 jar 추가하기

다운로드한 파일을 [프로젝트 디렉토리] > WEB-INF > lib 폴더에 추가한다.

2-2. 소스 파일 추가하기

(1) src 폴더에 java 텍스트 파일 추가하기

텍스트 파일을 생성하고 확장자를 포함하여 MachineInfo.java으로 바꾼다. 파일을 열어서 코드를 추가한다.

코드 중 uri, userid, uwerpw, query는 필요에 맞게 수정해야 함

String uri ="jdbc:mariadb:/[서버 IP]:[방화벽 포트]/[DB 이름]";
	String userid = "[유저명]";
	String userpw = "[비밀번호]";
	String query = "select machineName, managerName, temperature,power,runTime from tbl_machine";
  • 코드
    import java.io.IOException;
    import java.io.PrintWriter;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.Statement;
    
    import javax.servlet.annotation.WebServlet;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    @WebServlet("/machineinfo")
    public class MachineInfo extends HttpServlet{
    
    	private static final long serialVersionUID = 1L;
    	
        public void doGet(HttpServletRequest req, HttpServletResponse resp)  throws IOException {
        	
    	resp.setContentType("text/html; charset=UTF-8");
    	PrintWriter out = resp.getWriter();
    	String uri ="jdbc:mariadb://192.168.5.7:14321/MES_factory";
    	String userid = "smartUser";
    	String userpw = "1q2w3e4r";
    	String query = "select machineName, managerName, temperature,power,runTime from tbl_machine";
    	Connection con = null;
    	Statement stmt = null; 
    	ResultSet rs = null;
                	
    	try{
    		Class.forName("org.mariadb.jdbc.Driver");
    		con = DriverManager.getConnection(uri,userid,userpw);
    		stmt = con.createStatement();
    		rs = stmt.executeQuery(query);
    	
    		out.println("<!DOCTYPE HTML><HEAD><TITLE>JDBC Test</TITLE></HEAD>");
           		out.println("<BODY>");
    		out.print("<h1>서블릿 DB 연동 테스트</h1>");
    		out.println("<TABLE border=1><TR><TD>기계명</TD><TD>관리자</TD><TD>온도</TD><TD>전력사용량</TD><TD>운전시간</TD></TR>");
    	
    		while(rs.next()) {
    			out.println("<TR><TD>" + rs.getString("machineName") + "</TD>"
    			+ "<TD>" + rs.getString("managerName") +"</TD>"
    			+ "<TD>" + rs.getInt("temperature") + "</TD>"
    			+ "<TD>" + rs.getInt("power") + "</TD>"
    			+ "<TD>" + rs.getInt("runTime") + "</TD>");
    		}
    		out.println("</TABLE></BODY>");
    
    		if(rs != null) { rs.close(); }
    		if(stmt != null) { stmt.close(); }
    		if(con != null) { con.close(); }
    	}catch(Exception e) { e.printStackTrace(); }
    
    } //End of doGet
    
    	
    	
    
    }
    
  • public clasee [클래스 이름]과 파일 이름은 동일해야 한다(대소문자 구분)

(2) 접속하기

http://127.0.0.1:8080/machineinfo 으로 접속하면 다음 화면을 볼 수 있다

1. Servlet

1-1. Servlet 디렉토리 생성

아파치 서버 만들기 참고하여 프로젝트 디렉토리 생성

c:\webroot

(1) [프로젝트 디렉토리] c:\webroot 하단에 WEB-INF 폴더 생성

(2) WEB-INF 디렉토리 하단에 classes, lib, src 폴더 생성

(3) [TOMCAT_HOME]\webapps\ROOT\web.xml 파일을 [프로젝트 디렉토리]\WEB-INF 폴더 내로 복사

[프로젝트 디렉토리] > WEB-INF

1-2. 클래스 생성 및 등록 (Annotation)

WEB-INF 폴더 내 web.xml 파일을 이용해서 서블릿 클래스를 등록하지 않고 자바 소스에 직접 url를 기술하는 방식

web.xml 파일 안의 web-app 옵션 중 metadata-complete를 반드시 false로 바꿔줘야 함

(1) web.xml 파일 수정

metadata-complete="true" 
<!-- true를 false로 수정 -->
metadata-complete="false"

(2) src 폴더에 서블릿 소스를 생성

WEB-INF 폴더 > src 폴더 > 다음의 코드를 텍스트 파일로 HelloTest.java를 생성

  • 코드
    1. “ 따옴표 주의
    2. 파일명과 public class [클래스 이름]이 같아야 함 (대소문자 구문)
    import java.io.IOException;
    import java.io.PrintWriter;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    import javax.servlet.annotation.WebServlet;
    @WebServlet("/hellojava")
    
    public class HelloTest extends HttpServlet {
    
        public void doGet(HttpServletRequest req, HttpServletResponse resp)         throws IOException {
            resp.setContentType("text/html; charset=UTF-8");
    
            PrintWriter out = resp.getWriter();
            
            out.println("<HTML><HEAD><TITLE>HelloServlet</TITLE></HEAD>");
            out.println("<BODY>");
            out.println("<h>안녕하세요? 서블릿 테스트 예제입니다.</h2>");
            out.println("<H2> Clinet IP: " + req.getRemoteAddr() + "</H2>");
            out.println("<H2> Client Host : " + req.getRemoteHost() + "</H2>");
            out.println("<H2> Request URI : " + req.getRequestURI() + "</H2>");
            out.println("</BODY></HTML>");
        }
    }
    

(3) 서블릿 소스 컴파일

cmd에서 src 폴더로 디렉토리 변경 후, javac –d ../classes [java 파일명] –encoding UTF-8 실행

javac –d ../classes HelloTest.java –encoding UTF-8

컴파일을 하고 나면 classes 폴더에 [java 파일명].class가 생성된 것을 볼 수 있다

1-3. 웹 접속하기

브라우저에서 http://127.0.0.1:8080/hellojava 접속하면 다음 화면을 볼 수 있다

2. MariaDB 조회하기

2-1. MariaDB 커넥터 라이브러리 추가하기

(1) JDBC 커넥터 다운로드

https://mariadb.com/downloads/connectors/

홈페이지에서 자바

버전에 맞는 jdbc connector를 다운로드한다

 

 

(2) lib 폴더에 jar 추가하기

다운로드한 파일을 [프로젝트 디렉토리] > WEB-INF > lib 폴더에 추가한다.

 

 

 

2-2. 소스 파일 추가하기

(1) src 폴더에 java 텍스트 파일 추가하기

텍스트 파일을 생성하고 확장자를 포함하여 MachineInfo.java으로 바꾼다. 파일을 열어서 코드를 추가한다.

코드 중 uri, userid, userpw, query는 필요에 맞게 수정해야 함

MachineInfo.java.txt
0.00MB

길어서 txt 파일로 대체

  • public clasee [클래스 이름]과 파일 이름은 동일해야 한다(대소문자 구분)

(2) 접속하기

http://127.0.0.1:8080/machineinfo 으로 접속하면 다음 화면을 볼 수 있다

 

'JAVA > 웹서버' 카테고리의 다른 글

아파치-톰캣 연동하기  (0) 2022.06.07
아파치 톰캣 만들기  (0) 2022.05.27
아파치 서버 만들기  (0) 2022.05.27

1. Apache Tomcat

1-1. 아파치 Tomcat 다운로드

(1) Tomcat 설치파일 다운로드

홈페이지에서 버전 9의 64 bit(운영체제에 맞는 bit) zip을 다운로드한다.

작성기준으로 최신 버전 10을 받지 않는 이유는 안정성 때문이다

https://tomcat.apache.org/

(2) Tomcat 파일 위치 지정

압축 폴더의 apache-tomcat-9.0.63를 원하는 곳에 위치시킨다. ~~~\\apache-tomcat-9.0.63 경로가 [Tomcat_Home]이다.

여기서는 C: 드라이브 바로 아래에 위치시켰음 [Tomcat_Home] = C:\apache-tomcat-9.0.63

1-2. Tomcat 환경 설정

(1) server.xml 파일 수정

  • Connector protocol 코드에 secretRequired="false" 추가
<Connector protocol="AJP/1.3"
             address="127.0.0.1"
             port="8009"
             redirectPort="8443"
						 secretRequired="false"
    />
            <!-- 보안모드를 비활성화하겠다 secretRequired=false-->
  • Host name 코드도 다음과 같이 수정한다
  • <Host name="localhost" appBase=“[프로젝트 디렉토리]" unpackWARs="true" autoDeploy=“true“ > <Context path=“/" docBase =“[프로젝트 디렉토리]" unpackWARs="true" reloadable=“true" > </Context>
<Host name="localhost"  appBase="c:/webroot"
            unpackWARs="true" autoDeploy="true">
           
           <Context path="/" docBase ="c:/webroot" 
              unpackWARs="true" reloadable="true" > 
       </Context>

(2) 환경 변수 추가 및 CLASSPATH 설정

검색기 > 시스템 환경 변수 편집

<aside> 📢 CATALINA 는 톰캣을 의미함

</aside>

 

  • CATALINA_BASE, CATALINA_HOME 생성 후, [Tomcat_Home] 입력 CATALINA_TMPDIR 생성 후, [Tomcat_Home] \\temp 입력

  • CLASSPATH 을 편집하여 %CATALINA_HOME%\\lib\\servlet-api.jar 추가

  • JRE_HOME 생성 후, [JAVA_HOME] 입력한다. 예를 들어, C:\\Java\\jdk-11.0.15.1 이라면 다음과 같음

1-3. Tomcat 시작 및 중지

(1) Cmd 에서 [Tomcat_Home]/bin 으로 디렉토리 변경

  • 시작 : [Tomcat_Home]/bin/startup.bat 중지 : [Tomcat_Home]/bin/shutdown
C:\\apache-tomcat-9.0.63\\bin>startup
C:\\apache-tomcat-9.0.63\\bin>shutdown

(2) 사이트 접속하기

Tomcat이 실행 중일 때, 웹 브라우저로 http://127.0.0.1:8080/ 에 접속하면 다음과 같은 화면을 볼 수 있다

2. Tomcat 콘솔 한글 깨짐 문제 해결

(1) 윈도우 검색에서 regedit 실행

(2) HKEY_CURRENT_USER\Console 디렉토리에서 오른쪽 마우스 클릭 → 새로 만들기 → 키 → Tomcat 생성 → 새로 만들기 → DWORD(32비트) → 이름: CodePage, 단위 10진수, 데이터 65001 선택

1. Apache Tomcat

1-1. 아파치 Tomcat 다운로드

(1) Tomcat 설치파일 다운로드

홈페이지에서 버전 9의 64 bit(운영체제에 맞는 bit) zip을 다운로드한다.

작성기준으로 최신 버전 10을 받지 않는 이유는 안정성 때문이다

https://tomcat.apache.org/

(2) Tomcat 파일 위치 지정

압축 폴더의 apache-tomcat-9.0.63를 원하는 곳에 위치시킨다. ~~~\\apache-tomcat-9.0.63 경로가 [Tomcat_Home]이다.

여기서는 C: 드라이브 바로 아래에 위치시켰음 [Tomcat_Home] = C:\apache-tomcat-9.0.63

1-2. Tomcat 환경 설정

(1) server.xml 파일 수정

  • Connector protocol 코드에 secretRequired="false" 추가
<Connector protocol="AJP/1.3"
             address="127.0.0.1"
             port="8009"
             redirectPort="8443"
						 secretRequired="false"
    />
            <!-- 보안모드를 비활성화하겠다 secretRequired=false-->
  • Host name 코드도 다음과 같이 수정한다
  • <Host name="localhost" appBase=“[프로젝트 디렉토리]" unpackWARs="true" autoDeploy=“true“ > <Context path=“/" docBase =“[프로젝트 디렉토리]" unpackWARs="true" reloadable=“true" > </Context>
<Host name="localhost"  appBase="c:/webroot"
            unpackWARs="true" autoDeploy="true">
           
           <Context path="/" docBase ="c:/webroot" 
              unpackWARs="true" reloadable="true" > 
       </Context>

(2) 환경 변수 추가 및 CLASSPATH 설정

📢 CATALINA 는 톰캣을 의미함
  • CATALINA_BASE, CATALINA_HOME 생성 후, [Tomcat_Home] 입력 CATALINA_TMPDIR 생성 후, [Tomcat_Home] \\temp 입력

  • CLASSPATH 을 편집하여 %CATALINA_HOME%\\lib\\servlet-api.jar 추가

  • JRE_HOME 생성 후, [JAVA_HOME] 입력
    예를 들어, C:\Java\jdk-11.0.15.1 이라면 다음과 같음

 

1-3. Tomcat 시작 및 중지

(1) Cmd 에서 [Tomcat_Home]/bin 으로 디렉토리 변경

  • 시작 : [Tomcat_Home]/bin/startup.bat 중지 : [Tomcat_Home]/bin/shutdown
C:\\apache-tomcat-9.0.63\\bin>startup
C:\\apache-tomcat-9.0.63\\bin>shutdown

(2) 사이트 접속하기

Tomcat이 실행 중일 때, 웹 브라우저로 http://127.0.0.1:8080/ 에 접속하면 다음과 같은 화면을 볼 수 있다

2. Tomcat 콘솔 한글 깨짐 문제 해결

(1) 윈도우 검색에서 regedit 실행

(2) HKEY_CURRENT_USER\Console 디렉토리에서 오른쪽 마우스 클릭 → 새로 만들기 → 키 → Tomcat 생성 → 새로 만들기 → DWORD(32비트) → 이름: CodePage, 단위 10진수, 데이터 65001 선택

'JAVA > 웹서버' 카테고리의 다른 글

아파치-톰캣 연동하기  (0) 2022.06.07
아파치 Servlet 만들기  (0) 2022.05.30
아파치 서버 만들기  (0) 2022.05.27

1. 아파치 서버

1-1. 아파치 서버 설치하기

참고 사이트

[Apache] Windows 10 64bit 환경 Apache2.4 설치 및 설정

 

[Apache] Windows 10 64bit 환경 Apache2.4 설치 및 설정

[Apache] Windows 10 64bit 환경 Apache 설치 및 설정 1. 아파치(Apache) 2.4 설치파일 다운로드 Apache VS16 binaries and modules download www.apachelounge.com 운영체제 환경이 64 bit인 경우 첫 번..

haenny.tistory.com

(1) 아파치 서버 설치하기

https://www.apachelounge.com/download/

위 사이트에서 zip 파일을 다운로드한다

(2) zip 파일 안에서 Apache24를 C: 드라이브에 위치한다

 

(3) 프로젝트 디렉토리 만들기

C: 드라이브에 webroot 폴더를 만들고 텍스트 파일만든다. index.html로 변경한다. html 파일을 열어서 다음과 같이 수정한다.

<html>
	<meta charset="utf-8">
	<body>
		<h1> hello. this is 아파치 서버 </h1>

	</body>
</html>

(3) httpd.conf 수정

C 드라이브 아래에 Apache24, webroot 폴더가 있을 경우
[Apache_Home] = c:\Apache24
[프로젝트 디렉토리] = c:\webroot
리눅스 프로그램을 윈도우로 이식한 프로그램은 디렉토리를 표시할 때 \\가 아닌 /를 쓴다
c:/Apache24
c:/Apache24

[Apache_Home]/conf/httpd.conf 수정하기

  • 서버 루트 변경 : Define SRVROOT “[Apache_Home]"
  • 서버 네임 변경 : ServerName 127.0.0.1
  • 다큐먼트 루트 변경 DocumentRoot “[프로젝트 디렉토리]“ <Directory “[프로젝트 디렉토리]“> ※ 반드시 \가 아닌 /로 입력
  • 인코딩 코드 입력행 추가 AddDefaultCharset utf-8
# // 서버루트 변경
#Define SRVROOT "c:/Apache24"
ServerRoot "${SRVROOT}"
# // 서버 네임 변경
ServerName 127.0.0.1
# // 다큐먼트 루트 변경
DocumentRoot "c:/webroot"
<Directory "c:/webroot">
# // 한글 인코딩
AddDefaultCharset utf-8

httpd.conf 파일

1-2. 아파치 실행

(1) 아파치를 윈도우 서비스에 등록

관리자 권한으로 cmd 실행

[Apache_Home]의 bin 폴더로 이동 → 윈도우 서비스 등록 명령 실행

*** 윈도우 서비스는 cmd를 관리자 권한으로 실행해야 함 ***

// 윈도우 서비스 등록
httpd -k install
// 서비스 시작 
httpd –k restart 
// 서비스 종료 
httpd –k stop

(2) 윈도우 서비스에서 실행하기

윈도우 검색기로 “서비스” 검색 > Apache2.4 우클릭

시작 유형(윈도우 시작시 자동실행 유무) 및 서비스 실행, 중지 제어

(3) 웹 서버 접속하기

서비스가 실행 중일 때, 웹 브라우저에 localhost 혹은 127.0.0.1 을 입력하면 다음과 같은 화면이 나온다

1. 아파치 서버

1-1. 아파치 서버 설치하기

참고

[Apache] Windows 10 64bit 환경 Apache2.4 설치 및 설정

(1) 아파치 서버 설치하기

https://www.apachelounge.com/download/

(2) zip 파일 안에서 Apache24를 C: 드라이브에 위치한다

(3) 프로젝트 디렉토리 만들기

C: 드라이브에 webroot 폴더를 만들고 텍스트 파일만든다. index.html로 변경한다. html 파일을 열어서 다음과 같이 수정한다.

<html>
	<meta charset="utf-8">
	<body>
		<h1> hello. this is 아파치 서버 </h1>

	</body>
</html>

(3) httpd.conf 수정

<aside> 📢 C 드라이브 아래에 Apache24, webroot 폴더가 있음 [Apache_Home] = c:\Apache24 [프로젝트 디렉토리] = c:\webroot

</aside>

리눅스 프로그램을 윈도우로 이식한 프로그램은 디렉토리를 표시할 때 \\가 아닌 /를 쓴다
c:/Apache24
c:/Apache24

[Apache_Home]/conf/httpd.conf 수정하기

  • 서버 루트 변경 : Define SRVROOT “[Apache_Home]"
  • 서버 네임 변경 : ServerName 127.0.0.1
  • 다큐먼트 루트 변경 DocumentRoot “[프로젝트 디렉토리]“ <Directory “[프로젝트 디렉토리]“> ※ 반드시 \가 아닌 /로 입력
  • 인코딩 코드 입력행 추가 AddDefaultCharset utf-8
# // 서버루트 변경
#Define SRVROOT "c:/Apache24"
ServerRoot "${SRVROOT}"
# // 서버 네임 변경
ServerName 127.0.0.1
# // 다큐먼트 루트 변경
DocumentRoot "c:/webroot"
<Directory "c:/webroot">
# // 한글 인코딩
AddDefaultCharset utf-8

httpd.conf 파일

1-2. 아파치 실행

(1) 아파치를 윈도우 서비스에 등록

관리자 권한으로 cmd 실행

[Apache_Home]의 bin 폴더로 이동 → 윈도우 서비스 등록 명령 실행

*** 윈도우 서비스는 cmd를 관리자 권한으로 실행해야 함 ***

// 윈도우 서비스 등록
httpd -k install
// 서비스 시작 
httpd –k restart 
// 서비스 종료 
httpd –k stop

(2) 윈도우 서비스에서 실행하기

윈도우 검색기로 “서비스” 검색 > Apache2.4 우클릭

시작 유형(윈도우 시작시 자동실행 유무) 및 서비스 실행, 중지 제어

(3) 웹 서버 접속하기

서비스가 실행 중일 때, 웹 브라우저에 localhost 혹은 127.0.0.1 을 입력하면 다음과 같은 화면이 나온다

1. 아파치 서버

1-1. 아파치 서버 설치하기

참고

[Apache] Windows 10 64bit 환경 Apache2.4 설치 및 설정

(1) 아파치 서버 설치하기

https://www.apachelounge.com/download/

(2) zip 파일 안에서 Apache24를 C: 드라이브에 위치한다

(3) 프로젝트 디렉토리 만들기

C: 드라이브에 webroot 폴더를 만들고 텍스트 파일만든다. index.html로 변경한다. html 파일을 열어서 다음과 같이 수정한다.

<html>
	<meta charset="utf-8">
	<body>
		<h1> hello. this is 아파치 서버 </h1>

	</body>
</html>

(3) httpd.conf 수정

<aside> 📢 C 드라이브 아래에 Apache24, webroot 폴더가 있음 [Apache_Home] = c:\Apache24 [프로젝트 디렉토리] = c:\webroot

</aside>

리눅스 프로그램을 윈도우로 이식한 프로그램은 디렉토리를 표시할 때 \\가 아닌 /를 쓴다
c:/Apache24
c:/Apache24

[Apache_Home]/conf/httpd.conf 수정하기

  • 서버 루트 변경 : Define SRVROOT “[Apache_Home]"
  • 서버 네임 변경 : ServerName 127.0.0.1
  • 다큐먼트 루트 변경 DocumentRoot “[프로젝트 디렉토리]“ <Directory “[프로젝트 디렉토리]“> ※ 반드시 \가 아닌 /로 입력
  • 인코딩 코드 입력행 추가 AddDefaultCharset utf-8
# // 서버루트 변경
#Define SRVROOT "c:/Apache24"
ServerRoot "${SRVROOT}"
# // 서버 네임 변경
ServerName 127.0.0.1
# // 다큐먼트 루트 변경
DocumentRoot "c:/webroot"
<Directory "c:/webroot">
# // 한글 인코딩
AddDefaultCharset utf-8

httpd.conf 파일

1-2. 아파치 실행

(1) 아파치를 윈도우 서비스에 등록

관리자 권한으로 cmd 실행

[Apache_Home]의 bin 폴더로 이동 → 윈도우 서비스 등록 명령 실행

*** 윈도우 서비스는 cmd를 관리자 권한으로 실행해야 함 ***

// 윈도우 서비스 등록
httpd -k install
// 서비스 시작 
httpd –k restart 
// 서비스 종료 
httpd –k stop

(2) 윈도우 서비스에서 실행하기

윈도우 검색기로 “서비스” 검색 > Apache2.4 우클릭

시작 유형(윈도우 시작시 자동실행 유무) 및 서비스 실행, 중지 제어

(3) 웹 서버 접속하기

서비스가 실행 중일 때, 웹 브라우저에 localhost 혹은 127.0.0.1 을 입력하면 다음과 같은 화면이 나온다

'JAVA > 웹서버' 카테고리의 다른 글

아파치-톰캣 연동하기  (0) 2022.06.07
아파치 Servlet 만들기  (0) 2022.05.30
아파치 톰캣 만들기  (0) 2022.05.27

1. 환경

MS Viual Studio, C# (.NET FRAMEWORK), Arduino(온습도 센서, RFID), 라즈베리파이(MariaDB)


2. 기능

출입 모니터링 및 사용자 관리 기능

센서 모니터링 (5초 간격)

Arduino의 HC-06 블루투스 모듈로 Arduino와 데이터 송수신

WiFi로 라즈베리파이의 MariaDB와

데이터 송수신 MariaDB 의 서버시간을 Arduino로 송신


3. 시연 동영상

3-1. C#

3-2. Arduino 

RFID, LCD, Buzzer 작동 시연 영상


4. 데이터베이스 화면

4-1. user_tbl

4-2. sensor_data_tbl


5. 요약본

1. Virtual Box 세팅하기

1-1. 새로운 가상머신 세팅하기

(기본값 install)

(1) 설치할 폴더 선택하기 및 운영체제 선택

폴더 및 가상머신의 OS 설정

“영문 폴더에 영문이름으로 띄워쓰기 없이 설정 (적극 권장)”

(2) 가상머신의 램, 하드디스크 세팅하기

Windows 서버의 경우 최소 2 GB를 주는 것이 좋다.

일반적으로 가상머신은 호스트 머신의 절반정도 주는 것이 좋음

더보기

 💡 *동적할당이란?

정해진 크기를 모두 할당하는 것이 아닌, 가상머신을 감시하면서 필요할 때 유동적으로 하드 디스크를 분배한다.

*고정 크기

고정된 크기를 할당한다. 감시할 필요가 없으니 성능향상이 있다. 하지만 별 체감이 없다고 함

Windows Server 2016 (2GB 램, 50GB 하드디스크)가 생성된 모습

CPU는 알아서 분배하기 때문에 설정하지 않는다.

네트워크도 연결되어있어야 한다.

(3) 호스트 키 설정하기 (가상머신 빠져나오는 키)

포커스를 호스트>게스트로 바꾸는 것은 쉬움(단순히 클릭) 하지만 반대로 게스트>호스트를 바꾸는 것은 문제가 있다. (포커스가 Virtual Box에만 있을 수 있음. 따라서 빠져나오는 키 설정 필요)

버추얼 박스는 기본적으로 오른쪽 Alt를 키가 빠져나오는 키로 설정되어있다. 하지만 노트북은 보통 우측 Alt가 없으므로 문제가 된다. 따라서 키 설정이 필요하고 다음과 같이 설정할 수 있다.

*개발 환경

Visual studio 2022

Window Forms( .Net FrameWork 4.7.2)

MySQL 8.0 데이터베이스를 오라클 VM으로 구동하여 접속

사용자 관리 시스템 실습

 

 

1. 화소점 처리 시연 영상

화소점 처리시각화 프로그래밍 시연 영상입니다.
동일 이미지, 반전, 밝기 조절, 그레이 스케일, 흑백, 감마 조절 등의 영상 처리를 할 수 있습니다.
단축키로 열기, 저장 등을 할 수 있습니다.
이미지 안에서 처리할 부분을 따로 설정할 수도 있습니다.

 

 

2. 기하학 처리 시연 영상 

이미지 상하반전, 좌우반전, 확대 및 축소, 회전 등을 할 수 있습니다.

 

3. 히스토그램 시연 영상

RGB 를 기반으로한 히스토그램 처리입니다.
흑백(중간값), 스트레칭, 엔드-인, 평활화 등의 기능이 있습니다.

나중에 RGB->HSV 변환법을 배워서 명암값만 조절한다면 개선된 이미지를 얻을 수 있을 것 같습니다.

 

4. 화소영역 처리

화소영역 기능 시연입니다. 엠보싱, 블러링, 샤프닝 기능이 가능합니다. 엠보싱, 블러링은 처리 영역 선택이 가능합니다. 샤프닝은 마스크 사이즈 3, 5를 지원하고 각각 다른 중앙값으로 이미지 처리가 가능합니다.

 

5. 에지 검출

에지검출 기능 시연입니다.
로버츠, 소벨, 프리윗 행열 검출, 라플라시안 a b c, LoG 기능이 있습니다.

https://youtu.be/5h9hrofavbI

아두이노 디지털 시계 작동 영상입니다.

RTC 모듈 없이 millis() 함수로 디지털 시계를 만들었습니다. 4개의 버튼으로 제어할 수 있습니다.

하지만 꽤 오차가 한시간당 몇 분 생겨서 실사용은 어렵습니다. 시계 코딩 공부하려고 만들었습니다.

+ Recent posts