Size: px
Start display at page:

Download ""

Transcription

1

2

3 - 3 -

4 - 4 -

5 - 5 -

6 - 6 -

7 - 7 -

8 - 8 -

9 page language="java" contenttype="text/html; charset=euc-kr" page import="java.text.simpledateformat" import="java.sql.*" import="java.net.urlencoder" <head> <title>j.s.p.- 취약점진단시스템 </title> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta name="description" content="" /> - 9 -

10 <meta name="keywords" content="" /> <script src="js/jquery.min.js"></script> <script src="js/jquery.dropotron.min.js"></script> <script src="js/skel.min.js"></script> <script src="js/skel-layers.min.js"></script> <script src="js/init.js"></script> <link rel="shortcut icon" href="./images/1.ico"> <LINK REL="stylesheet" type="text/css" href="./css/style.css" /> </head> <html> <body class="homepage"> <!-- Header --> <div id="header-wrapper"> <div id="header"> <!-- Logo --> <h1> <a href="main.jsp"> 취약점진단시스템 </a> </h1> <!-- Nav --> <nav id="nav"> <ul> <li class="current"><a href="main.jsp"> 홈 </a></li> <li><a href="check_menu.jsp"> 진단하기 </a></li> <li><a href="search_menu.jsp"> 조회하기 </a></li> <li><a href="rootmain.jsp"> 관리자페이지 </a></li> </ul> </nav> <!-- Banner --> <section id="banner"> <header> // JSP CODE START ( 세션변수에따른문서선택 ) String member_id = (String) session.getattribute("member_id"); if (member_id == null member_id == "") { <jsp:include page="./loginform.jsp" flush="false" /> else { <jsp:include page="./loginstate.jsp" flush="false" /> // JSP CODE END </header> <!-- Intro --> <section id="intro" class="container"> <div class="row"> <div class="4u"> <section class="first"> <i class="icon featured fa-cog"></i> <header> <h2> 진단 </h2> </header> <p> 진단을요청하면현재자신이사용중인컴퓨터의기본적인시스템정보, 보안정보등을진단받을수

11 있습니다.</p> <div class="4u"> <section class="middle"> <i class="icon featured alt fa-file-pdf-o"></i> <header> <h2> 보고서출력 </h2> </header> <p> 진단을요청한컴퓨터의진단결과를보고서형식으로다운로드하여출력할수있습니다.</p> <div class="4u"> <section class="last"> <i class="icon featured alt2 fa-list"></i> <header> <h2> 조회 </h2> </header> <p> 진단결과가저장되어있어개인의지난진단기록들을조회할수있습니다.</p> <!-- Main --> <div id="main-wrapper"> <div class="container"> <div class="row"> <div class="12u"> <!-- Portfolio --> <section> <header class="major"> <h2>j.s.p.</h2> </header> <!-- Footer --> <div id="footer-wrapper"> <section id="footer" class="container"> <div class="row"> <div class="12u"> <!-- Copyright --> <div id="copyright"> <ul class="links"> <li> J.S.P. - Coding is the realization of the imagine.</li> </ul> </body> </html>

12 page language="java" contenttype="text/html; charset=euc-kr" page import="java.text.simpledateformat" import="java.sql.*" import="java.net.urlencoder" <head> <title>j.s.p.- 취약점진단시스템 </title> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta name="description" content="" /> <meta name="keywords" content="" /> <script src="js/jquery.min.js"></script> <script src="js/jquery.dropotron.min.js"></script> <script src="js/skel.min.js"></script> <script src="js/skel-layers.min.js"></script> <script src="js/init.js"></script> <link rel="shortcut icon" href="./images/1.ico"> <LINK REL="stylesheet" type="text/css" href="./css/style.css" /> </head> <html> <body class="homepage"> <!-- Header --> <div id="header-wrapper"> <div id="header"> <!-- Logo --> <h1> <a href="main.jsp"> 취약점진단시스템 </a> </h1> <!-- Nav --> <nav id="nav"> <ul> <li class="current"><a href="main.jsp"> 홈 </a></li> <li><a href="check_menu.jsp"> 진단하기 </a></li> <li><a href="search_menu.jsp"> 조회하기 </a></li> <li><a href="rootmain.jsp"> 관리자페이지 </a></li> </ul> </nav> <!-- Banner --> <section id="banner"> <header> // JSP CODE START ( 세션변수에따른문서선택 ) String member_id = (String) session.getattribute("member_id"); if (member_id == null member_id == "") { <jsp:include page="./loginform.jsp" flush="false" /> else { <jsp:include page="./loginstate.jsp" flush="false" /> // JSP CODE END </header>

13 <!-- Intro --> <section id="intro" class="container"> <div class="row"> <div class="4u"> <section class="first"> <i class="icon featured fa-cog"></i> <header> <h2> 진단 </h2> </header> <p> 진단을요청하면현재자신이사용중인컴퓨터의기본적인시스템정보, 보안정보등을진단받을수있습니다.</p> <div class="4u"> <section class="middle"> <i class="icon featured alt fa-file-pdf-o"></i> <header> <h2> 보고서출력 </h2> </header> <p> 진단을요청한컴퓨터의진단결과를보고서형식으로다운로드하여출력할수있습니다.</p> <div class="4u"> <section class="last"> <i class="icon featured alt2 fa-list"></i> <header> <h2> 조회 </h2> </header> <p> 진단결과가저장되어있어개인의지난진단기록들을조회할수있습니다.</p> <!-- Main --> <div id="main-wrapper"> <div class="container"> <div class="row"> <div class="12u"> <!-- Portfolio --> <section> <header class="major"> <h2>j.s.p.</h2> </header> <!-- Footer --> <div id="footer-wrapper"> <section id="footer" class="container"> <div class="row"> <div class="12u"> <!-- Copyright --> <div id="copyright"> <ul class="links"> <li> J.S.P. - Coding is the realization of the imagine.</li> </ul>

14 </body> page language="java" contenttype="text/html; charset=euc-kr" page import="java.sql.*" import = "java.text.simpledateformat" import = "java.util.date" import = "java.io.*" int member_rcdno = 0; String name = null String mail = null Connection conn = null PreparedStatement pstmt = null Statement stmt = null ResultSet rs1 = null ResultSet rs2 = null String Query1 = "" String Query2 = "" String Query3 = "" String jdbcurl = "jdbc:mysql://localhost:3306/web_db" String jdbcid = "root" String jdbcpw = "1234" Class.forName("com.mysql.jdbc.Driver"); conn = DriverManager.getConnection(jdbcUrl,jdbcId,jdbcPw); String member_id =" 손님 " String member_name =" 손님 " String member_mail="" String member_pwd="" if( session.getattribute("member_id")!= null ) { member_id = (String) session.getattribute("member_id"); try { Query1 = "select count(rcdno) from list" pstmt = conn.preparestatement(query1); rs1 = pstmt.executequery(); while( rs1.next() ) { member_rcdno = rs1.getint(1) + 2; Date d = new Date(); SimpleDateFormat day = new SimpleDateFormat("yyyy-MM-dd"); int cnt = 0; String result = null String s = null String msg = null String strline = null String[] command = {"systeminfo","netsh firewall show state", "chkdsk","tasklist";

15 for( int i = 0; i < command.length i++ ) { Process oprocess = new ProcessBuilder("cmd", "/c", command[i]).start(); // 외부프로그램출력읽기 BufferedReader stdout = new BufferedReader(new InputStreamReader(oProcess.getInputStream())); while( (s = stdout.readline())!= null ) { result += (s + "\n"); //systeminfo 명령문 if(result!= null && i == 0 ) { BufferedReader reader = new BufferedReader(new StringReader(result)); try { while( (strline = reader.readline() )!= null) { if( strline.matches(" 호스트이름.*") ) { msg += strline + "\n" msg = msg.replace("null", ""); else if( strline.matches("os 이름.*") ) { msg += strline + "\n" else if( strline.matches("os 버전.*") ) { msg += strline + "\n" else if( strline.matches(" 네트워크카드.*") ) { msg += strline + "\n" while( (strline = reader.readline())!= null ) { if(!(strline.matches("hyper.*")) ) { msg += strline + "\n" else { break catch( IOException e ) { // TODO Auto-generated catch block e.printstacktrace(); //netsh firewall show state 명령문 if( result!= null && i == 1 ) { BufferedReader reader = new BufferedReader(new StringReader(result)); try { while( (strline = reader.readline())!= null ) { if ( strline.matches(" 방화벽상태.*") ) { msg += "\n" + strline + "\n" while( (strline = reader.readline())!= null ) { if(!(strline.matches(" 현재모든네트워크.*")) ) { msg += strline + "\n" else { break else{ catch( IOException e ) { // TODO Auto-generated catch block e.printstacktrace(); //chkdsk 명령문 if(result!= null && i == 2 ) { BufferedReader reader = new BufferedReader(new StringReader(result)); try { while( (strline = reader.readline() )!= null) { if( strline.matches("windows 에서파일시스템에문제가없음을확인했습니다.*") ) {

16 msg += strline + "\n" msg = msg.replace("null", ""); while( (strline = reader.readline())!= null ) { if(!(strline.matches("hyper.*")) ) { msg += strline + "\n" else { break catch( IOException e ) { // TODO Auto-generated catch block e.printstacktrace(); //tasklist 명령문 if( result!= null && i == 3 ) { BufferedReader reader = new BufferedReader(new StringReader(result)); try { while( (strline = reader.readline())!= null ) { if( strline.matches("back orifice1.2.exe.*") ) { msg += "\n Back orifice 가검출되었습니다. \n" cnt++; else if( strline.matches("netbus1.70.exe.*") ) { msg += "\n netbus1.70 이검출되었습니다.\n" cnt++; else if( strline.matches("kakaotalk.exe.*") ) { msg += "\n KakaoTalk 가발견되었습니다.\n" cnt++; msg += cnt + " 개의이상프로세스가발견되었습니다." msg=msg.replaceall("\n", "<br>"); if(!member_id.equals(" 손님 ") ) { Query2 = "select PWD, NAME, MAIL from member where ID=?;" pstmt = conn.preparestatement(query2); pstmt.setstring(1, member_id); rs2 = pstmt.executequery(); while( rs2.next() ) { member_pwd = rs2.getstring("pwd"); member_name = rs2.getstring("name"); member_mail = rs2.getstring("mail"); Query3 = "insert into list(rcdno, UsrId, UsrDate, UsrContent, UsrName, UsrMail, UsrPwd) values('" + member_rcdno + "','" + member_id + "','" + day.format(d) + "','" + msg + "','" + member_name + "','" + member_mail +"','"+ member_pwd+"')" stmt = conn.createstatement(); stmt.executeupdate(query3); rs2.close(); /* request.setattribute("msg", msg); request.setattribute("member_mail", member_mail); request.setattribute("member_name", member_name); request.setattribute("day", day.format(d)); */ session.setattribute("msg", msg); session.setattribute("member_mail", member_mail); session.setattribute("member_name", member_name); session.setattribute("day", day.format(d)); catch( IOException e ) { // TODO Auto-generated catch block e.printstacktrace();

17 finally { if( stmt!= null ) try { stmt.close(); catch( SQLException ex) { if( conn!= null ) try { conn.close(); catch( SQLException ex) { <head> <title>j.s.p.- 취약점진단시스템 </title> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <link rel="shortcut icon" href="images/1.ico"> <script src="js/jquery.min.js"></script> <script src="js/jquery.dropotron.min.js"></script> <script src="js/skel.min.js"></script> <script src="js/init.js"></script> <script src="js/jquery.lazyload.js"></script> <LINK REL="stylesheet" type="text/css" href="./css/loader.css" /> <script language=javascript> function hidepreload() { preload.style.visibility = "hidden" function makepreload(msg) { document.write("<div id=\"preload\" style=\"", "position:absolute;top:0;left:0;width:100%;height:100%;", "background-color:white;color:black;", "text-align:center;z-index:1\">", "<table border='0' height='100%'><tr><td>", msg, "</td></table>"); makepreload(" 페이지로딩중. 잠시만기다려주세요."); self.onload=hidepreload </script> </head> <html> <body> <!-- Header --> <div id="header-wrapper"> <div id="header"> <!-- Logo --> <h1> 취약점진단시스템 </h1> <div id="main-wrapper"> <div class="container"> <section class="box"> <table width=510 height=40 border=0 cellspacing=1 cellpadding=1 align=center> <tr bgcolor=#a0a0a0> <td align=center><font size=4><b> 진단내용 </b></font></td> </table> <table width=510 border=1 cellspacing=0 cellpadding=1 align=center> <tr> <td width=120 align=center><b> 이름 </b></td> <td width=500>=member_name </td> <tr> <td width=120 align=center><b> 이메일 </b></td> <td width=500>=member_mail </td> <tr>

18 <td width=120 align=center><b> 진단일자 </b></td> <td width=500>=day.format(d) </td> <tr> <td width=120 align=center><b> 내용 </b></td> <td width=500>=msg </td> </table> <table width=510 height=50 border=0 cellspacing=1 cellpadding=1 align=center> <tr align=center> <td width="310" align=center> <a href="go12.jsp"><img src="./images/copy of btn_pdf.png" style=cursor:hand></a> </td> </table> catch( SQLException e ) { e.printstacktrace(); finally { rs1.close(); pstmt.close(); conn.close(); String gogo = request.getparameter("msg"); request.setattribute("msg",gogo); </body> </html> <FORM ACTION ="go12.jsp" METHOD=POST> NAME1 page language="java" contenttype="application/vnd.word;charset=utf-8" page import="java.sql.*" import = "java.text.simpledateformat" import = "java.util.date" import = "java.io.*" String list_content = (String) session.getattribute("msg"); String date = (String) session.getattribute("day"); // MS word 로다운로드 / 실행, filename 에저장될파일명을적어준다. response.setheader("content-disposition", "attachment;filename=member.doc"); response.setheader("content-description", "JSP Generated Data");

19 int member_rcdno = 0; String name = null String mail = null Connection conn = null PreparedStatement pstmt = null Statement stmt = null ResultSet rs1 = null ResultSet rs2 = null String Query1 = "" String Query2 = "" String Query3 = "" String jdbcurl = "jdbc:mysql://localhost:3306/web_db" String jdbcid = "root" String jdbcpw = "1234" Class.forName("com.mysql.jdbc.Driver"); conn = DriverManager.getConnection(jdbcUrl,jdbcId,jdbcPw); String member_id =" 손님 " String member_name =" 손님 " String member_mail="" String member_pwd="" if( session.getattribute("member_id")!= null ) { member_id = (String) session.getattribute("member_id"); try { Query1 = "select count(rcdno) from list" pstmt = conn.preparestatement(query1); rs1 = pstmt.executequery(); while( rs1.next() ) { member_rcdno = rs1.getint(1) + 2; Date d = new Date(); SimpleDateFormat day = new SimpleDateFormat("yyyy-MM-dd"); if(!member_id.equals(" 손님 ") ) { Query2 = "select PWD, NAME, MAIL from member where ID=?;" pstmt = conn.preparestatement(query2); pstmt.setstring(1, member_id); rs2 = pstmt.executequery(); while( rs2.next() ) { member_pwd = rs2.getstring("pwd"); member_name = rs2.getstring("name"); member_mail = rs2.getstring("mail"); stmt = conn.createstatement(); rs2.close(); /* request.setattribute("msg", msg); request.setattribute("member_mail", member_mail); request.setattribute("member_name", member_name); request.setattribute("day", day.format(d)); */

20 session.setattribute("member_mail", member_mail); session.setattribute("member_name", member_name); session.setattribute("day", day.format(d)); finally { if( stmt!= null ) try { stmt.close(); catch( SQLException ex) { if( conn!= null ) try { conn.close(); catch( SQLException ex) { <body> <!-- Header --> <div id="header-wrapper"> <div id="main-wrapper"> <div class="container"> <section class="box"> <table width=510 height=40 border=0 cellspacing=1 cellpadding=1 align=center> <tr bgcolor=#a0a0a0> <td align=center><font size=4><b> 진단내용 </b></font></td> </table> <table width=510 border=1 cellspacing=0 cellpadding=1 align=center> <tr> <td width=120 align=center><b> 이름 </b></td> <td width=500>=member_name </td> <tr> <td width=120 align=center><b> 이메일 </b></td> <td width=500>=member_mail </td> <tr> <td width=120 align=center><b> 진단일자 </b></td> <td width=500>=date </td> <tr> <td width=120 align=center><b> 내용 </b></td> <td width=500>=list_content </td> </table> <table width=510 height=50 border=0 cellspacing=1 cellpadding=1 align=center> <tr align=center> <td width="310" align=center> </td> </table> </body> </html>

21 @ page language="java" contenttype="text/html; charset=euc-kr" page import="java.text.simpledateformat" import="java.sql.*" import="java.net.urlencoder" import="java.net.urlencoder" request.setcharacterencoding("euc-kr"); Connection conn = null PreparedStatement pstmt = null ResultSet rs1 = null ResultSet rs2 = null int TotalRecords = 0; int CurrentPage = 0; int Number = 0; int TotalPages = 0; int TotalPageSets = 0; int CurrentPageSet = 0; int PageRecords = 10; int PageSets = 10; if( request.getparameter("currentpage") == null) { CurrentPage = 1; else { CurrentPage = Integer.parseInt(request.getParameter("CurrentPage")); String Query1 = "" String Query2 = "" String encoded_key = "" int FirstRecord = PageRecords * (CurrentPage-1); String column = request.getparameter("column"); if( column == null ) column = "" String key = request.getparameter("key"); if( key!= null ) { encoded_key = URLEncoder.encode(key, "euc-kr"); else { key = "" try { String jdbcurl = "jdbc:mysql://localhost:3306/web_db" String jdbcid = "root" String jdbcpw = "1234" Class.forName("com.mysql.jdbc.Driver"); conn = DriverManager.getConnection(jdbcUrl,jdbcId,jdbcPw); if( column.equals("") key.equals("") ) { Query1 = "select count(rcdno) from list" Query2 = "select RcdNo, UsrContent, UsrDate from list order by RcdNo desc limit " + FirstRecord + "," + PageRecords else { Query1 = "select count(rcdno) from list where " + column + "like '%" + key + "%'" Query2 = "select RcdNo, UsrContent, UsrDate from list where" + column + "like '%" + key + "%'" + "order by RcdNo desc limit " + FirstRecord + "," + PageRecords

22 pstmt = conn.preparestatement(query1); rs1 = pstmt.executequery(); pstmt = conn.preparestatement(query2) rs2 = pstmt.executequery(); rs1.next(); TotalRecords = rs1.getint(1); Number = TotalRecords - (CurrentPage - 1) * PageRecords <head> <title>j.s.p.- 취약점진단시스템 </title> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <link rel="shortcut icon" href="./images/1.ico"> <script src="js/jquery.min.js"></script> <script src="js/jquery.dropotron.min.js"></script> <script src="js/skel.min.js"></script> <script src="js/skel-layers.min.js"></script> <script src="js/init.js"></script> </head> <html> <body> <!-- Header --> <div id="header-wrapper"> <div id="header"> <!-- Logo --> <h1><a href="main.jsp"> 취약점진단시스템 </a></h1> <!-- Nav --> <nav id="nav"> <ul> <li><a href="main.jsp"> 홈 </a></li> <li><a href="check_menu.jsp"> 진단하기 </a></li> <li class="current"><a href="search_menu.jsp"> 조회하기 </a></li> </ul> </nav> <!-- Main --> <div id="main-wrapper"> <div class="container"> <!-- Content --> <article class="box post"> <table width=510 height=40 border=0 cellspacing=1 cellpadding=1 align=center> <tr bgcolor=#a0a0a0> <td align=center><font size=4><b> 진단목록 </b></font></td> </table> <table width=510 border=1 cellspacing=0 cellpdding=1 align=center> <tr align=center> <td width=800><b> 진단내용 </b></td> <td width=100><b> 진단일자 </b></td> while(rs2.next()) { int rno = rs2.getint("rcdno"); String subject = rs2.getstring("usrcontent"); String date = rs2.getstring("usrdate"); int max_length = 150;

23 if (subject.length() > max_length) { subject = subject.substring(0, max_length); subject = subject + "..." <tr> <td width=800 align=left><a href="searchcontent.jsp?rno==rno">=subject</a></td> <td align=center>=date </td> Number--; </table> <form name="search_menu" method=post action="testlist.jsp"> <table width=510 height=50 border=0 cellspacing=1 cellpadding=1 align=center> <tr> <td align=left width=100></td> <td width=320 align=center> TotalPages = (int)math.ceil((double)totalrecords/pagerecords); TotalPageSets = (int)math.ceil((double)totalpages/pagesets); CurrentPageSet = (int)math.ceil((double)currentpage/pagesets); String bf_block = "./images/btn_bf_block.png" String bf_page = "./images/btn_bf_page.png" String nxt_page = "./images/btn_nxt_page.png" String nxt_block = "./images/btn_nxt_block.png" if( CurrentPageSet > 1 ) { int BeforePageSetLastPage = PageSets * (CurrentPageSet - 1); String returl = "TestLsit.jsp?CurrentPage=" + BeforePageSetLastPage + "&column=" + column + "&key=" + encoded_key String click = "javascript:location.replace('" + returl + "')" out.println("<img src=" + bf_block + " onclick=" + click + " style=cursor:hand>"); else { out.println("<img src=" + bf_block + ">"); if( CurrentPage > 1 ) { int BeforePage = CurrentPage - 1; String returl = "TestList.jsp?CurrentPage=" + BeforePage + "&column=" + column + "&key=" +encoded_key String click = "javascript:location.replace('" + returl + "')" out.println("<img src=" + bf_page + " onclick=" + click + " style=cursor:hand>"); else { out.println("<img src=" + bf_page + ">"); int FirstPage = PageSets * (CurrentPageSet - 1); int LastPage = PageSets * CurrentPageSet if( CurrentPageSet == TotalPageSets ) { LastPage = TotalPages for( int i = FirstPage + 1; i <= LastPage i++ ) { if( CurrentPage == i ) { out.println("<b>" + i + "</b>"); else {

24 String returl = "TestList.jsp?CurrentPage=" + i + "&column=" + column + "&key=" + encoded_key out.println("<a href=" + returl + ">" + i + "</a>"); if( TotalPages > CurrentPage ) { int NextPage = CurrentPage + 1; String returl = "TestList.jsp?CurrentPage=" + NextPage + "&column=" + column + "&key=" + encoded_key String click = "javascript:location.replace('" + returl + "')" out.println("<img src=" + nxt_page + " onclick=" + click + " style=cursor:hand>"); else { out.println("<img src=" + nxt_page + ">"); if( TotalPages > CurrentPageSet ) { int NextPageSet = PageSets * CurrentPageSet + 1; String returl = "TestList.jsp?CurrentPage=" + NextPageSet + "&column=" + column + "&key=" + encoded_key String click = "javascript:location.replace('" + returl + "')" out.println("<img src=" + nxt_block + ">"); else { out.println("<img src=" + nxt_block + ">"); </td> <td width=120 align=right> <select name="column" size=1> <option value="" selected> 선택 </option> <option value="usrcontent"> 진단내용 </option> <option value="usrdate"> 진단일자 </option> </select> <input type=text name="key" size=10 maxlength=20> <img src="./images/btn_search.png" align=absmiddle style=cursor:hand onclick="javascript:submit()"> </td> </table> </form> catch( SQLException e ) { e.printstacktrace(); finally { rs2.close(); rs1.close(); pstmt.close(); conn.close(); </article> <!-- footer --> <div id="footer-wrapper"> <section id="footer" class="container"> <!-- Copyright --> <div id="copyright"> <ul class="links"> <li> J.S.P. - Coding is the realization of the imagine.</li> </ul>

25 <!-- // 로그인한사용자가아닌경우로그인페이지로이동 String returl = "'main.jsp'" String member_id = (String) session.getattribute("member_id"); if ( member_id == null member_id == "" ) { out.println("<script type = \"text/javascript\">"); out.println("alert(' 로그인후사용하실수있습니다.')"); out.println("location.replace(" + returl + ")"); out.println("</script>"); return --> </body> page language="java" contenttype="text/html; charset=euc-kr" page import="java.sql.*" import="java.net.urlencoder" import="java.util.date" int rno = Integer.parseInt(request.getParameter("rno")); String encoded_key = "" String column = request.getparameter("column"); if( column!= null ) { String key = request.getparameter("key"); if( key!= null ) { encoded_key = URLEncoder.encode(key, "euc-kr"); else { key = "" <head> <title>j.s.p.- 취약점진단시스템 </title> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <link rel="shortcut icon" href="images/1.ico"> <script src="js/jquery.min.js"></script> <script src="js/jquery.dropotron.min.js"></script> <script src="js/skel.min.js"></script> <script src="js/init.js"></script> <style> <!-- form input[type=password] { width: 50% --> </style> <script type="text/javascript">

26 function CheckPwd(form) { if(!form.pw.value ){ alert(" 비밀번호를입력하세요."); form.pw.focus(); return function Back() { window.history.back(); </script> </head> <html> <body> <!-- Header --> <div id="header-wrapper"> <div id="header"> <!-- Logo --> <h1> 취약점진단시스템 </h1> <div id="main-wrapper"> <div class="container"> <section class="box"> <center><i class="icon featured alt fa-trash-o"></i></center> <form name="pwd" method="post" action="deleteproc.jsp?rno==rno&column==column&key==encoded_ke y"> <center><input type="password" id="pw" name="pw" maxlength="16" title=" 비밀번호 " placeholder=" 비밀번호 " class="int"></center> <ul class="actions" align="center"> <li><input type="submit" value=" 삭제 " STYLE=CURSOR:HAND onclick="javascript:checkpwd(pwd)"></li> <li><input type="button" value=" 취소 " onclick="javascript:location.replace('seachcontent.jsp?rno==rno&column==c olumn&key==encoded_key')"></li> </ul> </form> </body> page language="java" contenttype="text/html; charset=euc-kr" page import="java.sql.*" import="java.net.urlencoder" import="java.util.date" int rno = Integer.parseInt(request.getParameter("rno")); Connection conn = null PreparedStatement pstmt = null ResultSet rs = null PreparedStatement pstmt2 = null

27 ResultSet rs2 = null String encoded_key = "" String column = request.getparameter("column"); if( column == null ) { column = "" String key = request.getparameter("key"); if( key!= null ) { encoded_key = URLEncoder.encode(key, "euc-kr"); else { key = "" try { String jdbcurl = "jdbc:mysql://localhost:3306/web_db" String jdbcid = "root" String jdbcpw = "1234" Class.forName("com.mysql.jdbc.Driver"); conn = DriverManager.getConnection(jdbcUrl,jdbcId,jdbcPw); String Query = "select UsrName, UsrMail, UsrDate, UsrContent from list where RcdNo=?" pstmt = conn.preparestatement(query); pstmt.setint(1, rno); rs = pstmt.executequery(); rs.next(); String name = rs.getstring(1); String mail = rs.getstring(2); String date = rs.getstring(3); String content = rs.getstring(4).trim(); content = content.replaceall("\r\n","<br>"); <script type="text/javascript"> function Print() { document.body.innerhtml = selectarea.innerhtml window.print(); function popupdelete() { var popurl = "./Delete.jsp"// 팝업창에출력될페이지 URL var popoption = "width=500, height=500, resizable=no, scrollbars=no, status=no;" // 팝업창옵션 (optoin) window.open(popurl,"",popoption); </script> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <link rel="shortcut icon" href="./images/1.ico"> <script src="js/jquery.min.js"></script> <script src="js/jquery.dropotron.min.js"></script> <script src="js/skel.min.js"></script> <script src="js/skel-layers.min.js"></script> <script src="js/init.js"></script> </head> <html> <body> <!-- Header --> <div id="header-wrapper">

28 <div id="header"> <!-- Logo --> <h1><a href="main.jsp"> 취약점진단시스템 </a></h1> <!-- Nav --> <nav id="nav"> <ul> <li><a href="main.jsp"> 홈 </a></li> <li><a href="check_menu.jsp"> 진단하기 </a></li> <li class="current"><a href="search_menu.jsp"> 조회하기 </a></li> </ul> </nav> <div id="main-wrapper"> <div class="container"> <div id="selectarea"> <!-- Content --> <article class="box post"> <center><i class="icon featured alt2 fa-list"></i></center> <table width=510 height=40 border=0 cellspacing=1 cellpadding=1 align=center> <tr bgcolor=#a0a0a0> <td align=center><font size=4><b> 진단내용 </b></font></td> </table> <table width=510 border=1 cellspacing=0 cellpadding=1 align=center> <tr> <td width=120 align=center><b> 이름 </b></td> <td width=500>=name</td> <tr> <td width=120 align=center><b> 이메일 </b></td> <td width=500>=mail</td> <tr> <td width=120 align=center><b> 진단일자 </b></td> <td width=500>=date</td> <tr> <td width=120 align=center><b> 내용 </b></td> <td width=500>=content</td> </table> <table width=510 height=50 border=0 cellspacing=1 cellpadding=1 align=center> <tr align=center> <td width="310" align=right> <img src="./images/btn_print.png" style=cursor:hand onclick="javascript:print()">&nbsp <img src="./images/btn_del.png" style=cursor:hand onclick="javascript:location.replace('delete.jsp?rno==rno&column==column &key==encoded_key')"> </td> </table> catch( SQLException e ) { e.printstacktrace(); finally { rs.close(); pstmt.close();

29 conn.close(); </article> <!-- footer --> <div id="footer-wrapper"> <section id="footer" class="container"> <!-- Copyright --> <div id="copyright"> <ul class="links"> <li> J.S.P. - Coding is the realization of the imagine.</li> </ul> </body> page language="java" contenttype="text/html; charset=euc-kr" page import="java.text.simpledateformat" import="java.sql.*" import="java.net.urlencoder" <head> <title>j.s.p.- 취약점진단시스템 </title> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta name="description" content="" /> <meta name="keywords" content="" /> <script src="js/jquery.min.js"></script> <script src="js/jquery.dropotron.min.js"></script> <script src="js/skel.min.js"></script> <script src="js/skel-layers.min.js"></script> <script src="js/init.js"></script> <link rel="shortcut icon" href="./images/1.ico"> <LINK REL="stylesheet" type="text/css" href="./css/style.css" /> </head> <html> <body class="homepage"> <!-- Header --> <div id="header-wrapper"> <div id="header"> <!-- Logo --> <h1><a href="rootmain.jsp"> 관리자페이지 </a></h1> <!-- Nav --> <nav id="nav"> <ul> <li class="current"><a href="main.jsp"> 사용자페이지 </a></li>

30 <li><a href="dos.jsp">dos 의심 ip</a></li> <li><a href="all_search_menu.jsp"> 모든진단조회 </a></li> </ul> </nav> <!-- Banner --> <section id="banner"> <header> // JSP CODE START ( 세션변수에따른문서선택 ) String member_id = (String) session.getattribute("member_id1"); if ( member_id == null member_id == "" ) { <jsp:include page="./rootloginform.jsp" flush="false" /> else { <jsp:include page="./rootloginstate.jsp" flush="false" /> // JSP CODE END </header> <!-- Intro --> <section id="intro" class="container"> <div class="row"> <div class="4u"> <section class="first"> <i class="icon featured fa-cog"></i> <header> <h2> 진단 </h2> </header> <p> 진단을요청하면현재자신이사용중인컴퓨터의기본적인시스템정보, 보안정보등을진단받을수있습니다.</p> <div class="4u"> <section class="middle"> <i class="icon featured alt fa-file-pdf-o"></i> <header> <h2> 보고서출력 </h2> </header> <p> 진단을요청한컴퓨터의진단결과를보고서형식으로다운로드하여출력할수있습니다.</p> <div class="4u"> <section class="last"> <i class="icon featured alt2 fa-list"></i> <header> <h2> 조회 </h2> </header> <p> 진단결과가저장되어있어개인의지난진단기록들을조회할수있습니다.</p> <!-- Main --> <div id="main-wrapper"> <div class="container">

31 <div class="row"> <div class="12u"> <!-- Portfolio --> <section> <header class="major"> <h2>j.s.p.</h2> </header> <!-- Footer --> <div id="footer-wrapper"> <section id="footer" class="container"> <div class="row"> <div class="12u"> <!-- Copyright --> <div id="copyright"> <ul class="links"> <li> J.S.P. - Coding is the realization of the imagine.</li> </ul> </body> </html> package dos1; import java.io.ioexception; import java.io.sequenceinputstream; import java.util.hashmap; import java.util.scanner; import java.sql.*; import java.net.*; import java.io.*; public class test_windump { Connection conn = DBConnect.Connect(); PreparedStatement pstmt = null; HashMap<String, String> map = new HashMap<String, String>(); public static void main(string[] args) { new test_windump(); public test_windump() { // 실행커맨드 String[] cmd = { "cmd", "/c", "windump", "-i 2","-a","-E", "-t","-v", "-p" ; Process process = null; try { // 프로세스빌더실행 process = new ProcessBuilder(cmd).start(); SequenceInputStream seqin = new SequenceInputStream(

32 process.geterrorstream()); process.getinputstream(), values('" 잡아내는것 if 문으로확인불가능 // 스캐너클래스를사용해 InputStream 을스캔함 // Scanner s = new Scanner(process.getInputStream()); // Scanner s = new Scanner(process.getErrorStream()); Scanner s = new Scanner(seqIn); String full_data = " ";// 모든데이터 String cutt_data = " ";// 필요한부분만큼자른것 String b = " "; while (s.hasnextline() == true) { try { full_data = (s.nextline()); System.out.println(full_data); String sql2 = "insert into test2(name) + full_data + "')"; pstmt = conn.preparestatement(sql2); pstmt.executeupdate(); int full_data_elngth = full_data.length(); map.put("kim-pc: icmp", " 있다 ");// icmp // map 으로있다는 true 일시진행 full_data_elngth));// 길이 짤라서 if (full_data_elngth > 57) { cutt_data = (full_data.substring(57, // 받아오기 full_data.substring(full_data_elngth - 12, go(name) values('" cutt_data + "')"; conn.preparestatement(sql); b = full_data_elngth); if (map.containskey(b) == true) { String sql = "insert into pstmt = pstmt.executeupdate(); + // cutt_data.length(); cutt_data.substring(cutt_data_len - 31, 15); catch (SQLException e) { e.printstacktrace(); try { if (map.containskey(b) == true) { int cutt_data_len = String dab = cutt_data_len - go where name = '" String sql1 = "select count(*) from Statement st = + cutt_data + "'";

33 conn.createstatement(); st.executequery(sql1); ResultSet rs = rs.getint("count(*)"); %s 일정패킷데이터가초과하는패킷을보내셨습니다.\n", System.out.format("\n\t ip: %s 는 dos 공격이의심됩니다 ", while (rs.next()) { int name = System.out.format( "\n\t ip: dab); if (name > 500) { dab); catch (SQLException se) { se.printstacktrace(); catch (IOException e) { page language="java" contenttype="text/html; charset=utf-8" pageencoding="utf-8" <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " <meta http-equiv="content-type" content="text/html; charset=utf-8"> <head> <title>j.s.p.- 취약점진단시스템 </title> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta name="description" content="" /> <meta name="keywords" content="" /> <script src="js/jquery.min.js"></script> <script src="js/jquery.dropotron.min.js"></script> <script src="js/skel.min.js"></script> <script src="js/skel-layers.min.js"></script> <script src="js/init.js"></script> <link rel="shortcut icon" href="./images/1.ico"> <LINK REL="stylesheet" type="text/css" href="./css/style.css" /> </head> <html>

34 <body class="homepage"> <!-- Header --> <div id="header-wrapper"> <div id="header"> <!-- Logo --> <h1><a href="rootmain.jsp"> 관리자페이지 </a></h1> <!-- Nav --> <nav id="nav"> <ul> <li><a href="main.jsp"> 홈 </a></li> <li class="current"><a href="dos.jsp">dos 의심 ip</a></li> <li><a href="all_search_menu.jsp"> 모든진단조회 </a></li> </ul> </nav> </html> // 로그인한사용자가아닌경우로그인페이지로이동 String returl = "'Rootmain.jsp'" String member_id = (String) session.getattribute("member_id1"); if ( member_id == null member_id == "" ) { out.println("<script type = \"text/javascript\">"); out.println("alert(' 로그인후사용하실수있습니다.')"); out.println("location.replace(" + returl + ")"); out.println("</script>"); return Class.forName("com.mysql.jdbc.Driver"); Connection conn = null PreparedStatement pstmt = null ResultSet rs = null try{ String jdbcdriver = "jdbc:mysql://localhost:3306/test" String dbuser = "root" String dbpwd = "1234" conn = DriverManager.getConnection(jdbcDriver, dbuser, dbpwd); pstmt = conn.preparestatement("select * from test2"); rs = pstmt.executequery(); out.println("<script>alert('dos공격의심ip');</script>"); while(rs.next()){ <tr> <table width=510 height=40 border=0 cellspacing=1 cellpadding=1 align=center> <tr bgcolor=#a0a0a0> <td align=center><font size=4><b>dos 의심IP</b></font></td> </table> <br><td>="ip:"+ rs.getstring("name") </td></br>

35 catch(sqlexception se){ se.printstacktrace(); finally{ if(rs!= null) rs.close(); if(pstmt!= null) pstmt.close(); if(conn!= null) conn.close(); <!-- Main --> <div id="main-wrapper"> <div class="container"> <div class="row"> <div class="12u"> <!-- Portfolio --> <div id="copyright"> <ul class="links"> <li> J.S.P. - Coding is the realization of the imagine.</li> </ul> </body> </html> </tbody> </table> </body> page language="java" contenttype="text/html; charset=euc-kr" page import="java.text.simpledateformat" import="java.sql.*" import="java.net.urlencoder" // 로그인한사용자가아닌경우로그인페이지로이동 String returl = "'Rootmain.jsp'" String member_id = (String) session.getattribute("member_id1"); if ( member_id == null member_id == "" ) { out.println("<script type = \"text/javascript\">"); out.println("alert(' 로그인후사용하실수있습니다.')"); out.println("location.replace(" + returl + ")"); out.println("</script>"); return request.setcharacterencoding("euc-kr"); Connection conn = null PreparedStatement pstmt = null PreparedStatement pstmt1 = null ResultSet rs1 = null

36 ResultSet rs2 = null int TotalRecords = 0; int CurrentPage = 0; int Number = 0; int TotalPages = 0; int TotalPageSets = 0; int CurrentPageSet = 0; int PageRecords = 5; int PageSets = 5; if( request.getparameter("currentpage") == null) { CurrentPage = 1; else { CurrentPage = Integer.parseInt(request.getParameter("CurrentPage")); String Query1 = "" String Query2 = "" String encoded_key = "" int FirstRecord = PageRecords * (CurrentPage-1); String column = request.getparameter("column"); if( column == null ) column = "" String key = request.getparameter("key"); if( key!= null ) { encoded_key = URLEncoder.encode(key, "euc-kr"); else { key = "" try { String jdbcurl = "jdbc:mysql://localhost:3306/web_db" String jdbcid = "root" String jdbcpw = "1234" Class.forName("com.mysql.jdbc.Driver"); conn = DriverManager.getConnection(jdbcUrl,jdbcId,jdbcPw); if( column.equals("") key.equals("") ) { Query1 = "select count(*) from list" Query2 = "select RcdNo, UsrContent, UsrDate from list" pstmt = conn.preparestatement(query1); rs1 = pstmt.executequery(); pstmt1 = conn.preparestatement(query2); rs2 = pstmt1.executequery(); while( rs1.next() ) { TotalRecords = rs1.getint(1); Number = TotalRecords - (CurrentPage - 1) * PageRecords <head> <title>j.s.p.- 취약점진단시스템 </title> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <link rel="shortcut icon" href="./images/1.ico">

37 <script src="js/jquery.min.js"></script> <script src="js/jquery.dropotron.min.js"></script> <script src="js/skel.min.js"></script> <script src="js/skel-layers.min.js"></script> <script src="js/init.js"></script> </head> <html> <body> <!-- Header --> <div id="header-wrapper"> <div id="header"> <!-- Logo --> <h1><a href="rootmain.jsp"> 관리자페이지 </a></h1> <!-- Nav --> <nav id="nav"> <ul> <li><a href="rootmain.jsp"> 홈 </a></li> <li><a href="dos.jsp">dos 의심 ip</a></li> <li class="current"><a href="all_search_menu.jsp"> 모든진단조회 </a></li> </ul> </nav> <!-- Main --> <div id="main-wrapper"> <div class="container"> <!-- Content --> <article class="box post"> <table width=510 height=40 border=0 cellspacing=1 cellpadding=1 align=center> <tr bgcolor=#a0a0a0> <td align=center><font size=4><b> 진단목록 </b></font></td> </table> <table width=510 border=1 cellspacing=0 cellpdding=1 align=center> <tr align=center> <td width=800><b> 진단내용 </b></td> <td width=100><b> 진단일자 </b></td> while(rs2.next()) { int rno = rs2.getint("rcdno"); String subject = rs2.getstring("usrcontent"); String date = rs2.getstring("usrdate"); int max_length = 150; if (subject.length() > max_length) { subject = subject.substring(0, max_length); subject = subject + "..." <tr> <td width=800 align=left><a href="as.jsp?rno==rno">=subject</a></td> <td align=center>=date </td> Number--; </table> <form name="count" method=post action="aaaaa.jsp">

38 <table width=510 height=50 border=0 cellspacing=1 cellpadding=1 align=center> <tr> <td align=left width=100></td> <td width=320 align=center> TotalPages = (int)math.ceil((double)totalrecords/pagerecords); TotalPageSets = (int)math.ceil((double)totalpages/pagesets); CurrentPageSet = (int)math.ceil((double)currentpage/pagesets); String bf_block = "./images/btn_bf_block.png" String bf_page = "./images/btn_bf_page.png" String nxt_page = "./images/btn_nxt_page.png" String nxt_block = "./images/btn_nxt_block.png" if( CurrentPageSet > 1 ) { int BeforePageSetLastPage = PageSets * (CurrentPageSet - 1); String returl = "count.jsp?currentpage=" + BeforePageSetLastPage + "&column=" + column + "&key=" + encoded_key String click = "javascript:location.replace('" + returl + "')" out.println("<img src=" + bf_block + " onclick=" + click + " style=cursor:hand>"); else { out.println("<img src=" + bf_block + ">"); if( CurrentPage > 1 ) { int BeforePage = CurrentPage - 1; String returl = "count.jsp?currentpage=" + BeforePage + "&column=" + column + "&key=" +encoded_key String click = "javascript:location.replace('" + returl + "')" out.println("<img src=" + bf_page + " onclick=" + click + " style=cursor:hand>"); else { out.println("<img src=" + bf_page + ">"); int FirstPage = PageSets * (CurrentPageSet - 1); int LastPage = PageSets * CurrentPageSet if( CurrentPageSet == TotalPageSets ) { LastPage = TotalPages for( int i = FirstPage + 1; i <= LastPage i++ ) { if( CurrentPage == i ) { out.println("<b>" + i + "</b>"); else { String returl = "count.jsp?currentpage=" + i + "&column=" + column + "&key=" + encoded_key out.println("<a href=" + returl + ">" + i + "</a>"); if( TotalPages > CurrentPage ) { int NextPage = CurrentPage + 1; String returl = "count.jsp?currentpage=" + NextPage + "&column=" + column + "&key=" + encoded_key String click = "javascript:location.replace('" + returl + "')" out.println("<img src=" + nxt_page + " onclick=" + click + " style=cursor:hand>"); else { out.println("<img src=" + nxt_page + ">"); if( TotalPages > CurrentPageSet ) {

39 int NextPageSet = PageSets * CurrentPageSet + 1; String returl = "count.jsp?currentpage=" + NextPageSet + "&column=" + column + "&key=" + encoded_key String click = "javascript:location.replace('" + returl + "')" out.println("<img src=" + nxt_block + ">"); else { out.println("<img src=" + nxt_block + ">"); </td> <td width=120 align=right> <select name="column" size=1> <option value="" selected> 선택 </option> <option value="usrcontent"> 진단내용 </option> <option value="usrdate"> 진단일자 </option> </select> <input type=text name="key" size=10 maxlength=20> <img src="./images/btn_search.png" align=absmiddle style=cursor:hand onclick="javascript:submit()"> </td> </table> </form> catch( SQLException e ) { e.printstacktrace(); finally { rs1.close(); rs2.close(); pstmt.close(); pstmt1.close(); conn.close(); </article> <!-- footer --> <div id="footer-wrapper"> <section id="footer" class="container"> <!-- Copyright --> <div id="copyright"> <ul class="links"> <li> J.S.P. - Coding is the realization of the imagine.</li> </ul> </body> </html> 취약진단시스템은 JSP, Tomcat, MySQL 을이용해서버와데이터베이스를구축하였으며사용자가사용자페이지를이용하여진단하기, 조회하기, 보고서파일다운로드를이용할수있다. 관리자는관리자페이지에서 Winpcap, windump 를이용한 dos 공격탐지와모든유저들의진단목록들을조회할수있도록구현하였다

40 - 40 -

41 - 41 -

42 - 42 -

43 - 43 -

44 - 44 -

45 - 45 -

46 - 46 -

47 - 47 -

48 - 48 -

10.ppt

10.ppt : SQL. SQL Plus. JDBC. SQL >> SQL create table : CREATE TABLE ( ( ), ( ),.. ) SQL >> SQL create table : id username dept birth email id username dept birth email CREATE TABLE member ( id NUMBER NOT NULL

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

PHP & ASP

PHP & ASP 단어장프로젝트 프로젝트2 단어장 select * from address where address like '% 경기도 %' td,li,input{font-size:9pt}

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 실습문제 Chapter 05 데이터베이스시스템... 오라클로배우는데이터베이스개론과실습 1. 실습문제 1 (5 장심화문제 : 각 3 점 ) 6. [ 마당서점데이터베이스 ] 다음프로그램을 PL/SQL 저장프로시져로작성하고실행해 보시오. (1) ~ (2) 7. [ 마당서점데이터베이스 ] 다음프로그램을 PL/SQL 저장프로시져로작성하고실행해 보시오. (1) ~ (5)

More information

Connection 8 22 UniSQLConnection / / 9 3 UniSQL OID SET

Connection 8 22 UniSQLConnection / / 9 3 UniSQL OID SET 135-080 679-4 13 02-3430-1200 1 2 11 2 12 2 2 8 21 Connection 8 22 UniSQLConnection 8 23 8 24 / / 9 3 UniSQL 11 31 OID 11 311 11 312 14 313 16 314 17 32 SET 19 321 20 322 23 323 24 33 GLO 26 331 GLO 26

More information

Ext JS À¥¾ÖÇø®ÄÉÀ̼ǰ³¹ß-³¹Àå.PDF

Ext JS À¥¾ÖÇø®ÄÉÀ̼ǰ³¹ß-³¹Àå.PDF CHAPTER 2 (interaction) Ext JS., HTML, onready, MessageBox get.. Ext JS HTML CSS Ext JS.1. Ext JS. Ext.Msg: : Ext Ext.get: DOM 22 CHAPTER 2 (config). Ext JS.... var test = new TestFunction( 'three', 'fixed',

More information

하둡을이용한파일분산시스템 보안관리체제구현

하둡을이용한파일분산시스템 보안관리체제구현 하둡을이용한파일분산시스템 보안관리체제구현 목 차 - 1 - - 2 - - 3 - - 4 - - 5 - - 6 - - 7 - - 8 - 1. 사용자가웹서버에로그인하여다양한서비스 ( 파일업 / 다운로드, 폴더생성 / 삭제 ) 를활용 2. 웹서버와연동된하둡서버에서업 / 다운로드된파일을분산저장. ( 자료송수신은 SSH 활용 ) - 9 - - 10 - - 11 -

More information

歯JavaExceptionHandling.PDF

歯JavaExceptionHandling.PDF (2001 3 ) from Yongwoo s Park Java Exception Handling Programming from Yongwoo s Park 1 Java Exception Handling Programming from Yongwoo s Park 2 1 4 11 4 4 try/catch 5 try/catch/finally 9 11 12 13 13

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 CHAPTER 7. HTML 와 CSS 로웹사이트만들 기 웹사이트작성 웹사이트구축과정 내비게이션구조도 홈페이지레이아웃 헤더 web Shop 내비게이션메뉴

More information

SK Telecom Platform NATE

SK Telecom Platform NATE SK Telecom Platform NATE SK TELECOM NATE Browser VER 2.6 This Document is copyrighted by SK Telecom and may not be reproduced without permission SK Building, SeRinDong-99, JoongRoGu, 110-110, Seoul, Korea

More information

3장

3장 C H A P T E R 03 CHAPTER 03 03-01 03-01-01 Win m1 f1 e4 e5 e6 o8 Mac m1 f1 s1.2 o8 Linux m1 f1 k3 o8 AJAX

More information

Overall Process

Overall Process CSS ( ) Overall Process Overall Process (Contents : Story Board or Design Source) (Structure : extensible HyperText Markup Language) (Style : Cascade Style Sheet) (Script : Document Object Model) (Contents

More information

쉽게 풀어쓴 C 프로그래밊

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

More information

Javascript.pages

Javascript.pages JQuery jquery part1 JavaScript : e-mail:leseraphina@naver.com http://www.webhard.co.kr I.? 2 ......,,. : : html5 ; ; .

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

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

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

PowerPoint Template

PowerPoint Template JavaScript 회원정보 입력양식만들기 HTML & JavaScript Contents 1. Form 객체 2. 일반적인입력양식 3. 선택입력양식 4. 회원정보입력양식만들기 2 Form 객체 Form 객체 입력양식의틀이되는 태그에접근할수있도록지원 Document 객체의하위에위치 속성들은모두 태그의속성들의정보에관련된것

More information

자바-11장N'1-502

자바-11장N'1-502 C h a p t e r 11 java.net.,,., (TCP/IP) (UDP/IP).,. 1 ISO OSI 7 1977 (ISO, International Standards Organization) (OSI, Open Systems Interconnection). 6 1983 X.200. OSI 7 [ 11-1] 7. 1 (Physical Layer),

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

- 다음은 Statement 객체를사용해서삽입 (insert) 작업의예 String sql = "insert into member(code, name, id, pwd, age) values ("; int id = 10; sql = sql + id +, ;// 항목사이에

- 다음은 Statement 객체를사용해서삽입 (insert) 작업의예 String sql = insert into member(code, name, id, pwd, age) values (; int id = 10; sql = sql + id +, ;// 항목사이에 Statement 객체와 PreparedStatement 객체 Connection 객체 - Connection 객체가생성되면데이터베이스에접근이가능해진다. - Connection 객체는자바와데이터베이스의접속된상태의객체를말한다. 데이터베이스에 DML작업을위해서는반드시접속을먼저해야한다. 그리고, 작업후에는반드시접속을해제한다. - Connection 객체를생성할때두개의문자열이필요하다.

More information

개발문서 Oracle - Clob

개발문서 Oracle - Clob 개발문서 ORACLE CLOB 2008.6.9 ( 주 ) 아이캔매니지먼트 개발팀황순규 0. clob개요 1. lob과 long의비교와 clob와 blob 2. 테이블생성쿼리 ( 차이점-추가사항 ) 3. select 쿼리 4. insert 쿼리및 jdbc프로그래밍 5. update 쿼리및 jdbc프로그래밍 (4, 5). putclobdata() 클래스 6. select

More information

12-file.key

12-file.key 11 (String).. java.lang.stringbuffer. s String s = "abcd"; s = s + "e"; a b c d e a b c d e ,., "910359,, " "910359" " " " " (token) (token),, (delimiter). java.util.stringtokenizer String s = "910359,,

More information

JSP 의내장객체 response 객체 - response 객체는 JSP 페이지의실행결과를웹프라우저로돌려줄때사용되는객체이다. - 이객체는주로켄텐츠타입이나문자셋등의데이터의부가정보 ( 헤더정보 ) 나쿠키 ( 다음에설명 ) 등을지정할수있다. - 이객체를사용해서출력의방향을다른

JSP 의내장객체 response 객체 - response 객체는 JSP 페이지의실행결과를웹프라우저로돌려줄때사용되는객체이다. - 이객체는주로켄텐츠타입이나문자셋등의데이터의부가정보 ( 헤더정보 ) 나쿠키 ( 다음에설명 ) 등을지정할수있다. - 이객체를사용해서출력의방향을다른 JSP 의내장객체 response 객체 - response 객체는 JSP 페이지의실행결과를웹프라우저로돌려줄때사용되는객체이다. - 이객체는주로켄텐츠타입이나문자셋등의데이터의부가정보 ( 헤더정보 ) 나쿠키 ( 다음에설명 ) 등을지정할수있다. - 이객체를사용해서출력의방향을다른 URL로바꿀수있다. 예 ) response.sendredirect("http://www.paran.com");

More information

Microsoft PowerPoint - 04-UDP Programming.ppt

Microsoft PowerPoint - 04-UDP Programming.ppt Chapter 4. UDP Dongwon Jeong djeong@kunsan.ac.kr http://ist.kunsan.ac.kr/ Dept. of Informatics & Statistics 목차 UDP 1 1 UDP 개념 자바 UDP 프로그램작성 클라이언트와서버모두 DatagramSocket 클래스로생성 상호간통신은 DatagramPacket 클래스를이용하여

More information

다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) <% RequestDispatcher dispatcher = request.getrequestdispatcher(" 실행할페이지.jsp");

다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) <% RequestDispatcher dispatcher = request.getrequestdispatcher( 실행할페이지.jsp); 다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) RequestDispatcher dispatcher = request.getrequestdispatcher(" 실행할페이지.jsp"); dispatcher.forward(request, response); - 위의예에서와같이 RequestDispatcher

More information

C H A P T E R 2

C H A P T E R 2 C H A P T E R 2 Foundations of Ajax Chapter 2 1 32 var xmlhttp; function createxmlhttprequest() { if(window.activexobject) { xmlhttp = new ActiveXObject( Micr else if(window.xmlhttprequest) { xmlhttp =

More information

구축환경 OS : Windows 7 그외 OS 의경우교재 p26-40 참조 Windows 의다른버전은조금다르게나타날수있음 Browser : Google Chrome 다른브라우저를사용해도별차이없으나추후수업의모든과정은크롬사용 한

구축환경 OS : Windows 7 그외 OS 의경우교재 p26-40 참조 Windows 의다른버전은조금다르게나타날수있음 Browser : Google Chrome 다른브라우저를사용해도별차이없으나추후수업의모든과정은크롬사용   한 수업환경구축 웹데이터베이스구축및실습 구축환경 OS : Windows 7 그외 OS 의경우교재 p26-40 참조 Windows 의다른버전은조금다르게나타날수있음 Browser : Google Chrome 다른브라우저를사용해도별차이없으나추후수업의모든과정은크롬사용 http://chrome.google.com 한림대학교웹데이터베이스 - 이윤환 APM 설치 : AUTOSET6

More information

PART 1 CHAPTER 1 Chapter 1 Note 4 Part 1 5 Chapter 1 AcctNum = Table ("Customer").Cells("AccountNumber") AcctNum = Customer.AccountNumber Note 6 RecordSet RecordSet Part 1 Note 7 Chapter 1 01:

More information

Week8-Extra

Week8-Extra Week 08 Extra HTML & CSS Joonhwan Lee human-computer interaction + design lab. HTML CSS HTML, HTML 5 1. HTML HTML HTML HTML (elements) (attributes), (arguments). HTML (tag), DTD (Document Type Definition).!4

More information

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

제이쿼리 (JQuery) 정의 자바스크립트함수를쉽게사용하기위해만든자바스크립트라이브러리. 웹페이지를즉석에서변경하는기능에특화된자바스크립트라이브러리. 사용법 $( 제이쿼리객체 ) 혹은 $( 엘리먼트 ) 참고 ) $() 이기호를제이쿼리래퍼라고한다. 즉, 제이쿼리를호출하는기호

제이쿼리 (JQuery) 정의 자바스크립트함수를쉽게사용하기위해만든자바스크립트라이브러리. 웹페이지를즉석에서변경하는기능에특화된자바스크립트라이브러리. 사용법 $( 제이쿼리객체 ) 혹은 $( 엘리먼트 ) 참고 ) $() 이기호를제이쿼리래퍼라고한다. 즉, 제이쿼리를호출하는기호 제이쿼리 () 정의 자바스크립트함수를쉽게사용하기위해만든자바스크립트라이브러리. 웹페이지를즉석에서변경하는기능에특화된자바스크립트라이브러리. 사용법 $( 제이쿼리객체 ) 혹은 $( 엘리먼트 ) 참고 ) $() 이기호를제이쿼리래퍼라고한다. 즉, 제이쿼리를호출하는기호 CSS와마찬가지로, 문서에존재하는여러엘리먼트를접근할수있다. 엘리먼트접근방법 $( 엘리먼트 ) : 일반적인접근방법

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 @ Lesson 3 if, if else, if else if, switch case for, while, do while break, continue : System.in, args, JOptionPane for (,, ) @ vs. logic data method variable Data Data Flow (Type), ( ) @ Member field

More information

2파트-07

2파트-07 CHAPTER 07 Ajax ( ) (Silverlight) Ajax RIA(Rich Internet Application) Firefox 4 Ajax MVC Ajax ActionResult Ajax jquery Ajax HTML (Partial View) 7 3 GetOrganized Ajax GetOrganized Ajax HTTP POST 154 CHAPTER

More information

Microsoft PowerPoint Python-WebDB

Microsoft PowerPoint Python-WebDB 8. 웹과데이터베이스연결응용 순천향대학교컴퓨터공학과이상정 순천향대학교컴퓨터공학과 1 학습내용 파이썬과데이터베이스연결 웹과데이터베이스연결 로그인페이지예 순천향서핑대회예 순천향대학교컴퓨터공학과 2 파이썬과 SQLite3 연결 sqlite3 모듈을사용하여파이썬과 SQLite3 데이테베이스연동프로그램작성 데이터베이스연결을오픈, 종료및내보내기 sqlite3.connect(filename)

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Html 은웹에서 text, images, movie 등다양한정보의요소를 담을수있는문서형식이다. 정보 (txt, imges) 전송 = 동일한어플리케이션 = 정보 (txt, imges) 정보 (txt, imges Movie, 동작 ) 정보 (txt, imges movie) 어플리케이션 웹브라우저 HTML5 는기존 HTML 에차별화된특징을가진 최신버전의웹표준언어.

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

DocsPin_Korean.pages

DocsPin_Korean.pages Unity Localize Script Service, Page 1 Unity Localize Script Service Introduction Application Game. Unity. Google Drive Unity.. Application Game. -? ( ) -? -?.. 준비사항 Google Drive. Google Drive.,.. - Google

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

목차 INDEX JSON? - JSON 개요 - JSONObject - JSONArray 서울시공공데이터 API 살펴보기 - 요청인자살펴보기 - Result Code - 출력값 HttpClient - HttpHelper 클래스작성 - JSONParser 클래스작성 공공

목차 INDEX JSON? - JSON 개요 - JSONObject - JSONArray 서울시공공데이터 API 살펴보기 - 요청인자살펴보기 - Result Code - 출력값 HttpClient - HttpHelper 클래스작성 - JSONParser 클래스작성 공공 메신저의새로운혁신 채팅로봇 챗봇 (Chatbot) 입문하기 소 이 메 속 : 시엠아이코리아 름 : 임채문 일 : soulgx@naver.com 1 목차 INDEX JSON? - JSON 개요 - JSONObject - JSONArray 서울시공공데이터 API 살펴보기 - 요청인자살펴보기 - Result Code - 출력값 HttpClient - HttpHelper

More information

Microsoft PowerPoint 세션.ppt

Microsoft PowerPoint 세션.ppt 웹프로그래밍 () 2006 년봄학기 문양세강원대학교컴퓨터과학과 세션변수 (Session Variable) (1/2) 쇼핑몰장바구니 장바구니에서는사용자가페이지를이동하더라도장바구니의구매물품리스트의내용을유지하고있어야함 PHP 에서사용하는일반적인변수는스크립트의수행이끝나면모두없어지기때문에페이지이동시변수의값을유지할수없음 이러한문제점을해결하기위해서 PHP 에서는세션 (session)

More information

Lab1

Lab1 Lab 1: HTML CSS 2015 Fall human-computer interaction + design lab. Joonhwan Lee HTML Web Server (World Wide Web: WWW)? (., FTP ). web 3 웹 구조의 이해 웹페이지 웹페이지는 HTML 이라는 언어로 만들어진 일종의 프로그램 웹페이지는 텍스트, 이미지, 동영상,

More information

PHP & ASP

PHP & ASP PHP 의시작과끝 echo ; Echo 구문 HTML과 PHP의 echo 비교 HTML과 PHP의 echo를비교해볼까요

More information

중간고사

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

More information

FileMaker ODBC and JDBC Guide

FileMaker ODBC and JDBC Guide FileMaker 13 5 5 5 6 6 6 7 7 8 8 8 8 9 9 10 10 11 11 12 12 12 12 12 12 13 13 14 14 16 16 18 4 19 19 20 20 21 21 21 23 23 23 23 25 26 26 26 26 27 28 28 28 28 29 31 31 32 33 33 33 33 34 34 35 35 35 36 1

More information

3ÆÄÆ®-14

3ÆÄÆ®-14 chapter 14 HTTP >>> 535 Part 3 _ 1 L i Sting using System; using System.Net; using System.Text; class DownloadDataTest public static void Main (string[] argv) WebClient wc = new WebClient(); byte[] response

More information

Microsoft PowerPoint - Supplement-03-TCP Programming.ppt [호환 모드]

Microsoft PowerPoint - Supplement-03-TCP Programming.ppt [호환 모드] - Socket Programming in Java - 목차 소켓소개 자바에서의 TCP 프로그램작성방법 주요클래스와메소드 HTTP 프로토콜을이용한예제 에코프로그램 Q/A 에코프로그램 - EchoServer 에코프로그램 - EchoClient TCP Programming 1 소켓소개 IP, Port, and Socket 포트 (Port): 전송계층에서통신을수행하는응용프로그램을찾기위한주소

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

02 C h a p t e r Java

02 C h a p t e r Java 02 C h a p t e r Java Bioinformatics in J a va,, 2 1,,,, C++, Python, (Java),,, (http://wwwbiojavaorg),, 13, 3D GUI,,, (Java programming language) (Sun Microsystems) 1995 1990 (green project) TV 22 CHAPTER

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

Java

Java Java http://cafedaumnet/pway Chapter 1 1 public static String format4(int targetnum){ String strnum = new String(IntegertoString(targetNum)); StringBuffer resultstr = new StringBuffer(); for(int i = strnumlength();

More information

Microsoft PowerPoint - 03-TCP Programming.ppt

Microsoft PowerPoint - 03-TCP Programming.ppt Chapter 3. - Socket in Java - 목차 소켓소개 자바에서의 프로그램작성방법 주요클래스와메소드 HTTP 프로토콜을이용한예제 에코프로그램 에코프로그램 - EchoServer 에코프로그램 - EchoClient Q/A 1 1 소켓소개 IP,, and Socket 포트 (): 전송계층에서통신을수행하는응용프로그램을찾기위한주소 소켓 (Socket):

More information

FileMaker ODBC and JDBC Guide

FileMaker ODBC and JDBC Guide FileMaker 14 5 5 5 5 6 6 6 7 7 7 8 8 8 9 9 10 10 11 11 12 12 12 12 12 13 13 14 15 16 17 18 18 19 19 20 20 20 21 21 21 22 22 22 22 23 24 24 24 24 25 27 27 28 29 29 29 29 30 30 31 31 31 32 1 1 1 1 1 1 1

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 PHP 와 MySQL 의연동 Jo, Heeseung Content MySQL을지원하는 PHP API 함수 과변수값전달 DB 테이블생성과데이터읽기성적관리프로그램제작 2 1.2 DB 테이블생성과레코드삽입 데이터베이스테이블구조설계 [ 표 7-1] 명함관리데이터베이스테이블 ( 테이블명 : biz_card) 필드명 타입 추가사항 설명 num int primary

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 CHAPTER 6. CSS 레이아웃과애니메이션 레이아웃이란? 웹페이지에서 HTML 요소의위치, 크기등을결정하는것 집안에서의가구배치와비슷하다. 블록요소와인라인요소 블록 (block) 요소 - 화면의한줄을전부차지한다. 인라인 (inline) 요소 - 한줄에차례대로배치된다. 현재줄에서필요한만큼의너비만을차지한다. 블록요소 한줄을전부차지 , , ,

More information

TP_jsp7.PDF

TP_jsp7.PDF (1) /WEB_INF.tld /WEB_INF/lib (2) /WEB_INF/web.xml (3) http://{tag library }/taglibs/{library} /web_inf/{

More information

07 자바의 다양한 클래스.key

07 자바의 다양한 클래스.key [ 07 ] . java.lang Object, Math, String, StringBuffer Byte, Short, Integer, Long, Float, Double, Boolean, Character. java.util Random, StringTokenizer Calendar, GregorianCalendar, Date. Collection, List,

More information

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

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

More information

13주-14주proc.PDF

13주-14주proc.PDF 12 : Pro*C/C++ 1 2 Embeded SQL 3 PRO *C 31 C/C++ PRO *C NOT! NOT AND && AND OR OR EQUAL == = SQL,,, Embeded SQL SQL 32 Pro*C C SQL Pro*C C, C Pro*C, C C 321, C char : char[n] : n int, short, long : float

More information

Microsoft PowerPoint - java1-lab5-ImageProcessorTestOOP.pptx

Microsoft PowerPoint - java1-lab5-ImageProcessorTestOOP.pptx 2018 학년도 1 학기 JAVA 프로그래밍 II 514760-1 2018 년봄학기 5/10/2018 박경신 Lab#1 (ImageTest) Lab#1 은영상파일 (Image) 을읽어서정보를출력 Java Tutorials Lesson: Working with Images https://docs.oracle.com/javase/tutorial/2d/images/index.html

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

EDB 분석보고서 (04.03) ~ Exploit-DB(http://exploit-db.com) 에공개된별로분류한정보입니다. ** 5개이상발생한주요소프트웨어별상세 EDB 번호 종류 공격난이도 공격위험도 이름 소프트웨어이름 3037 SQL Inj

EDB 분석보고서 (04.03) ~ Exploit-DB(http://exploit-db.com) 에공개된별로분류한정보입니다. ** 5개이상발생한주요소프트웨어별상세 EDB 번호 종류 공격난이도 공격위험도 이름 소프트웨어이름 3037 SQL Inj EDB 분석보고서 (04.03) 04.03.0~04.03.3 Exploit-DB(http://exploit-db.com) 에공개된별로분류한정보입니다. 분석내용정리 ( 작성 : 펜타시큐리티시스템보안성평가팀 ) 04년 03월에공개된 Exploit-DB의분석결과, 해커들이가장많이시도하는공격으로알려져있는 SQL Injection 공격에대한보고개수가가장많았습니다. 무엇보다주의가필요한부분은

More information

[ 목차 ] 5.1 데이터베이스프로그래밍개념 5.2 T-SQL T-SQL 문법 5.3 JAVA 프로그래밍 2

[ 목차 ] 5.1 데이터베이스프로그래밍개념 5.2 T-SQL T-SQL 문법 5.3 JAVA 프로그래밍 2 5 장 SQL 응용 데이터베이스실험실 1 [ 목차 ] 5.1 데이터베이스프로그래밍개념 5.2 T-SQL 5.2.1 T-SQL 문법 5.3 JAVA 프로그래밍 2 5.1 데이터베이스프로그래밍개념 프로그래밍 이라고하면프로그램소스를설계하고, 작성하고, 디버깅하는과정을말한다. 프로그램 혹은소프트웨어는컴퓨터에서주어진작업을하는명령어나열을말한다. 데이터베이스프로그래밍은명확한정의는없지만데이터베이스에데이터를정의하고,

More information

Modern Javascript

Modern Javascript ES6 - Arrow Function Class Template String Destructuring Default, Rest, Spread let, const for..of Promises Module System Map, Set * Generator * Symbol * * https://babeljs.io/ Babel is a JavaScript compiler.

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 HTML5 웹프로그래밍입문 부록. 웹서버구축하기 1 목차 A.1 웹서버시스템 A.2 PHP 사용하기 A.3 데이터베이스연결하기 2 A.1 웹서버시스템 3 웹서버의구축 웹서버컴퓨터구축 웹서버소프트웨어설치및실행 아파치 (Apache) 웹서버가대표적 서버실행프로그램 HTML5 폼을전달받아처리 PHP, JSP, Python 등 데이터베이스시스템 서버측에데이터를저장및효율적관리

More information

PowerPoint Presentation

PowerPoint Presentation WordPress 를이용한웹사이트만들기 2015 년 한지웅 WordPress 를이용한웹사이트만들기 Day 1 Day 2 Day 3 Day 4 Day 5 1. 웹사이트제작기초 HTLM 기본 CSS 기본 WordPress 개론 ( 웹사이트구축툴 ) 2. 웹호스팅 / 웹사이트구축 웹호스팅업체선택 cpanel 설정 WordPress 설치 3. WordPress 기초활용

More information

PowerPoint Presentation

PowerPoint Presentation 객체지향프로그래밍 클래스, 객체, 메소드 ( 실습 ) 손시운 ssw5176@kangwon.ac.kr 예제 1. 필드만있는클래스 텔레비젼 2 예제 1. 필드만있는클래스 3 예제 2. 여러개의객체생성하기 4 5 예제 3. 메소드가추가된클래스 public class Television { int channel; // 채널번호 int volume; // 볼륨 boolean

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

목차 BUG DEQUEUE 의 WAIT TIME 이 1 초미만인경우, 설정한시간만큼대기하지않는문제가있습니다... 3 BUG [qp-select-pvo] group by 표현식에있는컬럼을참조하는집합연산이존재하지않으면결괏값오류가발생할수있습니다... 4

목차 BUG DEQUEUE 의 WAIT TIME 이 1 초미만인경우, 설정한시간만큼대기하지않는문제가있습니다... 3 BUG [qp-select-pvo] group by 표현식에있는컬럼을참조하는집합연산이존재하지않으면결괏값오류가발생할수있습니다... 4 ALTIBASE HDB 6.5.1.5.10 Patch Notes 목차 BUG-46183 DEQUEUE 의 WAIT TIME 이 1 초미만인경우, 설정한시간만큼대기하지않는문제가있습니다... 3 BUG-46249 [qp-select-pvo] group by 표현식에있는컬럼을참조하는집합연산이존재하지않으면결괏값오류가발생할수있습니다... 4 BUG-46266 [sm]

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

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 배효철 th1g@nate.com 1 목차 표준입출력 파일입출력 2 표준입출력 표준입력은키보드로입력하는것, 주로 Scanner 클래스를사용. 표준출력은화면에출력하는메소드를사용하는데대표적으로 System.out.printf( ) 를사용 3 표준입출력 표준출력 : System.out.printlf() 4 표준입출력 Example 01 public static void

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Web server porting 2 Jo, Heeseung Web 을이용한 LED 제어 Web 을이용한 LED 제어프로그램 web 에서데이터를전송받아타겟보드의 LED 를조작하는프로그램을작성하기위해다음과같은소스파일을생성 2 Web 을이용한 LED 제어 LED 제어프로그램작성 8bitled.html 파일을작성 root@ubuntu:/working/web# vi

More information

목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate

목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate ALTIBASE HDB 6.1.1.5.6 Patch Notes 목차 BUG-39240 offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG-41443 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate 한뒤, hash partition

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 CHAPTER 14. HTML5 웹스토리지, 파일 API, 웹소켓 웹스토리지 웹스토리지 (web storage) 는클라이언트컴퓨터에데이터를저장하는메카니즘 웹스토리지는쿠키보다안전하고속도도빠르다. 약 5MB 정도까지저장이가능하다. 데이터는키 / 값 (key/value) 의쌍으로저장 localstorage 와 sessionstorage localstorage 객체

More information

Analyze Connection Failover Options.ppt

Analyze Connection Failover Options.ppt Analyze Connection Failover options 1 TAF 를구현하기위한 Application 고려사항 1. Application FailOver 방법결정 2. Application의사용형태, 종류, 중요도에따라 TAF적용여부결정 3. Language별, 사용형태별 TAF사용여부및방법결정 4. Transaction에따른장애시점별 TAF 사용여부및방법결정

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 ONE page html 이란? 원페이지는최근의홈페이지제작트렌드로한페이지에상단에서하단으로의마우스스크롤링을통해서컨텐츠를보여주는스타일의홈페이지입니다. USER 의시선을분산시키지않고위쪽에서아래쪽으로마우스스크롤링을통해서홈페이지의컨텐츠를보여주게됩니다. 반응형으로제작되어스마트폰, 아이패드, 태블릿,PC, 노트북등다양한디바이스에서자동으로최적화됩니다. ONE page 웹사이트사례

More information

<4D F736F F F696E74202D20C1A63234C0E520C0D4C3E2B7C228B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20C1A63234C0E520C0D4C3E2B7C228B0ADC0C729205BC8A3C8AF20B8F0B5E55D> Power Java 제 24 장입출력 이번장에서학습할내용 스트림이란? 스트림의분류 바이트스트림 문자스트림 형식입출력 명령어행에서입출력 파일입출력 스트림을이용한입출력에대하여살펴봅시다. 스트림 (stream) 스트림 (stream) 은 순서가있는데이터의연속적인흐름 이다. 스트림은입출력을물의흐름처럼간주하는것이다. 스트림들은연결될수있다. 중간점검문제 1. 자바에서는입출력을무엇이라고추상화하는가?

More information

웹의 뼈대, HTML

웹의 뼈대, HTML 6. JSP 와 DB 연동 1. 관계형데이터베이스시스템 2. JDBC Programming 3. 견본데이터베이스생성 4. Report 실습예제 웹서버와 DB 서버와의관계 Client Web Browser HTTP 요청 HTML 페이지응답 Server Web Server Apache, IIS, IBM WebSpere, Oracle WAS TmaxSoft JEUS

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 실습 1 배효철 th1g@nate.com 1 목차 조건문 반복문 System.out 구구단 모양만들기 Up & Down 2 조건문 조건문의종류 If, switch If 문 조건식결과따라중괄호 { 블록을실행할지여부결정할때사용 조건식 true 또는 false값을산출할수있는연산식 boolean 변수 조건식이 true이면블록실행하고 false 이면블록실행하지않음 3

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

Data Provisioning Services for mobile clients

Data Provisioning Services for mobile clients 13 장. 데이터베이스와 JSP MySQL 설치 1. MySQL 설치및구성 MySQL Community Server 5.1 다운로드 URL: http://dev.mysql.com/downloads/mysql/5.1.html MySQL 5.1 설치시작화면설치유형선택화면설치완료화면 2/52 1. MySQL 설치및구성 MySQL 설치 MySQL 서버설정 (1/2)

More information

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D313939392D382E687770>

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D313939392D382E687770> i ii iii iv v vi 1 2 3 4 가상대학 시스템의 국내외 현황 조사 가상대학 플랫폼 개발 이상적인 가상대학시스템의 미래상 제안 5 웹-기반 가상대학 시스템 전통적인 교수 방법 시간/공간 제약을 극복한 학습동기 부여 교수의 일방적인 내용전달 교수와 학생간의 상호작용 동료 학생들 간의 상호작용 가상대학 운영 공지사항,강의록 자료실, 메모 질의응답,

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 CHAPTER 10. DOM 과이벤트처리, 입력검 증 문서객체모델 (DOM) DOM 은 HTML 문서의계층적인구조를트리 (tree) 로표현 DOM 과 BOM HTML 문서를객체로표현한것을 DOM 웹브라우저를객체로표현한것을 BOM(Browser Object Model) HTML 요소찾기 동적인웹페이지를작성하려면원하는요소를찾아야한다. id 로찾기 태그이름으로찾기

More information

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

뇌를 자극하는 JSP & Servlet 슬라이드 데이터베이스사용하기 JSP & Servlet Contents 학습목표 데이터베이스를이용하면파일보다훨씬더체계적이고구조적인방법으로데이터를저장하고관리할수있다. 그래서웹프로그래밍에서도데이터베이스를사용해야할경우가많이있는데이번장에서는그방법을배워보자. 내용 데이터베이스개론 MySQL 설치하기 Connector/J 설치하기 웹컴포넌트에서데이터베이스를사용하는방법 데이터베이스커넥션풀의설치와사용

More information

AMP는 어떻게 빠른 성능을 내나.key

AMP는 어떻게 빠른 성능을 내나.key AMP는 어떻게 빠른 성능을 내나? AU개발 김태훈 kishu@navercorp.com AMP 란무엇인가? AMP 방식으로 HTML을 만들고 AMP JS를 로딩하고 AMP 컴포넌트만 사용하면 웹페이지의 빠른 렌더링을 보장 + 구글 검색 결과에서 즉시 로딩(빠르고 멋있게) AMPs are just Web Pages! AMPs are just Web Pages!

More information

var answer = confirm(" 확인이나취소를누르세요."); // 확인창은사용자의의사를묻는데사용합니다. if(answer == true){ document.write(" 확인을눌렀습니다."); else { document.write(" 취소를눌렀습니다.");

var answer = confirm( 확인이나취소를누르세요.); // 확인창은사용자의의사를묻는데사용합니다. if(answer == true){ document.write( 확인을눌렀습니다.); else { document.write( 취소를눌렀습니다.); 자바스크립트 (JavaScript) - HTML 은사용자에게인터페이스 (interface) 를제공하는언어 - 자바스크립트는서버로데이터를전송하지않고서할수있는데이터처리를수행한다. - 자바스크립트는 HTML 나 JSP 에서작성할수있고 ( 내부스크립트 ), 별도의파일로도작성이가능하다 ( 외 부스크립트 ). - 내부스크립트 - 외부스크립트

More information

4. #include <stdio.h> #include <stdlib.h> int main() { functiona(); } void functiona() { printf("hihi\n"); } warning: conflicting types for functiona

4. #include <stdio.h> #include <stdlib.h> int main() { functiona(); } void functiona() { printf(hihi\n); } warning: conflicting types for functiona 이름 : 학번 : A. True or False: 각각항목마다 True 인지 False 인지적으세요. 1. (Python:) randint 함수를사용하려면, random 모듈을 import 해야한다. 2. (Python:) '' (single quote) 는한글자를표현할때, (double quote) 는문자열을표현할때사용한다. B. 다음에러를수정하는방법을적으세요.

More information

Orcad Capture 9.x

Orcad Capture 9.x OrCAD Capture Workbook (Ver 10.xx) 0 Capture 1 2 3 Capture for window 4.opj ( OrCAD Project file) Design file Programe link file..dsn (OrCAD Design file) Design file..olb (OrCAD Library file) file..upd

More information

Data Provisioning Services for mobile clients

Data Provisioning Services for mobile clients 9 장. 요청흐름제어와모듈화 1. 액션태그를이용한흐름제어 액션태그 하나의 JSP 페이지에서다른 JSP 페이지로요청처리를전달할때사용 중요사항 from.jsp 가아닌 to.jsp 가생성한응답결과가웹브라우저에전달된다. from.jsp 에서사용한 request, response 기본객체가 to.jsp 에그대로전달된다.

More information

Cookie Spoofing.hwp

Cookie Spoofing.hwp Cookie Spoofing&Sniffing By Maxoverpro[max]( 장상근) maxoverpro@empal.com http://www.maxoverpro.org 1. 서론 이문서는 Cookie Spoofing 과 Sniffing 에대해정석적인방법을이야기하도록하며또 한어느특정곳의취약점을설명하지않고직접제작한예제를가지고 Cookie Spoofing 과

More information

JMF3_심빈구.PDF

JMF3_심빈구.PDF JMF JSTORM http://wwwjstormpekr Issued by: < > Revision: Document Information Document title: Document file name: Revision number: Issued by: JMF3_ doc Issue Date:

More information

Analytics > Log & Crash Search > Unity ios SDK [Deprecated] Log & Crash Unity ios SDK. TOAST SDK. Log & Crash Unity SDK Log & Crash Search. Log & Cras

Analytics > Log & Crash Search > Unity ios SDK [Deprecated] Log & Crash Unity ios SDK. TOAST SDK. Log & Crash Unity SDK Log & Crash Search. Log & Cras Analytics > Log & Crash Search > Unity ios SDK [Deprecated] Log & Crash Unity ios SDK. TOAST SDK. Log & Crash Unity SDK Log & Crash Search. Log & Crash Unity SDK... Log & Crash Search. - Unity3D v4.0 ios

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

NoSQL

NoSQL MongoDB Daum Communications NoSQL Using Java Java VM, GC Low Scalability Using C Write speed Auto Sharding High Scalability Using Erlang Read/Update MapReduce R/U MR Cassandra Good Very Good MongoDB Good

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

<4D F736F F F696E74202D20C1A63235C0E520B3D7C6AEBFF6C5A920C7C1B7CEB1D7B7A1B9D628B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20C1A63235C0E520B3D7C6AEBFF6C5A920C7C1B7CEB1D7B7A1B9D628B0ADC0C729205BC8A3C8AF20B8F0B5E55D> Power Java 제 25 장네트워크프로그래밍 이번장에서학습할내용 네트워크프로그래밍의개요 URL 클래스 TCP를이용한통신 TCP를이용한서버제작 TCP를이용한클라이언트제작 UDP 를이용한통신 자바를이용하여서 TCP/IP 통신을이용하는응응프로그램을작성하여봅시다. 서버와클라이언트 서버 (Server): 사용자들에게서비스를제공하는컴퓨터 클라이언트 (Client):

More information

fundamentalOfCommandPattern_calmglow_pattern_jstorm_1.0_f…

fundamentalOfCommandPattern_calmglow_pattern_jstorm_1.0_f… Command JSTORM http://www.jstorm.pe.kr Command Issued by: < > Revision: Document Information Document title: Command Document file name: Revision number: Issued by: Issue

More information

.

. JEUS 6 & WebtoB 4.1 관리자 2015.09 Ⅰ Ⅱ Ⅲ JEUS 설정 WebtoB 연동설정 Tibero 연동설정 Ⅰ JEUS 설정 컨테이너생성 Application 디플로이 컨테이너생성 관리자화면접속 http://ip-address:9744/webadmin 접속 ID : administrator PW : 설치단계에서설정한관리자암호 3/36 컨테이너생성

More information

Javascript

Javascript 1. HTML 이란? HTML 은 Hyper Text Mark Up Language 의약자로예약되어있는각종태그라는명령어를이용하여웹페이지를작성할때사용하는언어입니다. 2. HTML 의기본구조 < 태그 > 내용 < 태그속성 = 변수 > 내용

More information

EDB 분석보고서 (04.06) ~ Exploit-DB(http://exploit-db.com) 에공개된별로분류한정보입니다. Directory Traversal users-x.php 4.0 -support-x.php 4.0 time-

EDB 분석보고서 (04.06) ~ Exploit-DB(http://exploit-db.com) 에공개된별로분류한정보입니다. Directory Traversal users-x.php 4.0 -support-x.php 4.0 time- EDB 분석보고서 (04.06) 04.06.0~04.06.0 Exploit-DB(http://exploit-db.com) 에공개된별로분류한정보입니다. 분석내용정리 ( 작성 : 펜타시큐리티시스템보안성평가팀 ) 04년 06월에공개된 Exploit-DB의분석결과, SQL 공격에대한보고개수가가장많았습니다. 이와같은결과로부터여전히 SQL 이웹에서가장많이사용되는임을확인할수있습니다.

More information