2008/Spring 2.52008. 9. 20. 17:12
<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">

    <!-- the test application context definition for the jdbc based tests -->

    <bean id="productDao" class="springapp.repository.JdbcProductDao">
        <property name="dataSource" ref="dataSource" />
    </bean>

    <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
      <property name="driverClassName" value="${jdbc.driverClassName}"/>
      <property name="url" value="${jdbc.url}"/>
      <property name="username"  value="${jdbc.username}"/>
      <property name="password" value="${jdbc.password}"/>
    </bean>
    <bean id="propertyConfigurer"
          class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
        <property name="locations">
            <list>
                <value>classpath:jdbc.properties</value>
            </list>
        </property>
    </bean>
   
    <bean id="transactionManager"
          class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
        <property name="dataSource" ref="dataSource" />
    </bean>

</beans>

=================================
Document path
C:\spring\util\apache-tomcat-5.5.27\webapps\tomcat-docs\index.html

8) JNDI Resources



4. Configure Tomcat's Resource Factory

To configure Tomcat's resource factory, add an elements like this to the $CATALINA_HOME/conf/server.xml file, nested inside the Context element for this web application.

<Context ...>
  ...
  <Resource name="bean/MyBeanFactory" auth="Container"
            type="com.mycompany.MyBean"
            factory="com.mycompany.MyBeanFactory"
            bar="23"/>
  ...
</Context>

Note that the resource name (here, bean/MyBeanFactory must match the value specified in the web application deployment descriptor. We are also initializing the value of the bar property, which will cause setBar(23) to be called before the new bean is returned. Because we are not initializing the foo property (although we could have), the bean will contain whatever default value is set up by its constructor.


tomcat Server.xml 설정
<GlobalNamingResources>
 <Resource name="jdbc/SpringDB" auth="Container"
            type="javax.sql.DataSource" username="spring" password="spring123"
            driverClassName="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@localhost:1521:XE"
            maxActive="8" maxIdle="4"/>

</GlobalNamingResources> 



맨밑에
 <Context docBase="spring_1"
      path="/spring_1"
      reloadable="true"
      source="org.eclipse.jst.j2ee.server:spring_1">
      <ResourceLink name="jdbc/SpringDB"
            global="jdbc/SpringDB"
            type="javax.sql.DataSource"/>
      </Context>



설정 하고 나서 Test_jndi.jsp 만들어서 Test를 해봅시다.

<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
   
<%@ page import="java.sql.*" %>
<%@ page import="javax.naming.*" %>
   
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>Insert title here</title>
</head>
<body>
<% InitialContext ctx = new InitialContext();
   Object  obj = ctx.lookup("java:comp/env/jdbc/SpringDB");
  
   if(obj  != null)
   {
    javax.sql.DataSource ds = (javax.sql.DataSource)obj;
    
    Connection conn = ds.getConnection();
    Statement stmt = conn.createStatement();
    String sql = "SELECT * FROM BOARD ";
    ResultSet rs = stmt.executeQuery(sql);
    
    while(rs.next())
    {
     out.println(rs.getString(1) + "<br>");
    }
    stmt.close();
    conn.close();
    
   }
   else {
    out.println("검색 실패 !!");
   }
  
   %>

</body>
</html>

Posted by penguindori
2008/Spring 2.52008. 9. 20. 14:05

http://static.springframework.org/docs/Spring-MVC-step-by-step/part1.html

web.xml 추가

<servlet>
    <servlet-name>springapp</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>

  <servlet-mapping>
    <servlet-name>springapp</servlet-name>
    <url-pattern>*.htm</url-pattern> -> *.do로 수정
  </servlet-mapping>



2.
C:\spring\util\spring-framework-2.5.5\dist
(1.7 step by step)

spring.jar
spring-webmvc.jar  드레그 해서 이클립스 Webcontent/WEB-INF/lib/에 넣는다.

--------------------
springapp-servlet.xml  <-- 이름으로 하나 만든다.

<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">

  <!-- the application context definition for the springapp DispatcherServlet -->

  <bean name="/hello.htm" class="springapp.web.HelloController"/>

</beans>




<bean name="/hello.htm" class="springapp.web.HelloController"/>  요청 Url

<bean id="">  ID 공유할때는 ID ; 특스문자 사용 불가

<!-- http://localhost:8088/spring_1/hello.do -->
  <bean name="/hello.do" class="springapp.web.HelloController"/>




=======================================
1. springapp-servlet.xml
  <?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">

  <!-- the application context definition for the springapp DispatcherServlet -->
 <!-- http://localhost:8088/spring_1/hello.do -->
  <bean name="/hello.do" class="springapp.web.HelloController"/>
 //springapp.web.HelloController를 /hello.do로 매핑 합니다.

</beans>

2. HelloController.java class 만들기

package springapp.web;

import org.springframework.web.servlet.mvc.Controller;
import org.springframework.web.servlet.ModelAndView;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

//import org.apache.commons.logging.Log;
//import org.apache.commons.logging.LogFactory;

import java.io.IOException;


public class HelloController implements Controller {
 @Override
 public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response)
       throws Exception
 {
 
  ModelAndView mv = new ModelAndView();
  mv.setViewName("spring_hello.jsp");
  mv.addObject("greeting","첫번째 스프링 예제!!!");
  return mv;
 }
 
}

3. jsp Page만들기
spring_hello.jsp
<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>Insert title here</title>
</head>
<body>
 ${greeting}
</body>
</html>

4. index.htm
<html>
<head>
<script type="text/javascript">
<!--
 location.href="hello.do";
-->
</script>
</head>
<body>
</body>

</html>
----------- 그러면 나온다 ; 아 힘드네 ㅋㅋ


사용자 삽입 이미지













Posted by penguindori
2008/Spring 2.52008. 9. 20. 12:10
톰켓을 설정해 봅시다.

사용자 삽입 이미지

2.
사용자 삽입 이미지
위에 보이는 New를 클릭 합니다.

3.
사용자 삽입 이미지
톰켓 5.5를 할려고 다운받았으니 5.5를 선택 합니다.

4.그러고 그냥 Next -> Next-> Finish를 누릅니다. (톰켓 선택시 그냥 톰켓이 들어있는 폴터를 냅다
  선택

5. 그후 Run 하면 됩니다. 혹시 Oracle Port와 충돌이 발생하여 작동이 안하면

  
사용자 삽입 이미지


server.xml 에서 8080을 다른걸로 바꺼준다 예를들어서 8088 이렇게 ㅎㅎ

사용자 삽입 이미지
Posted by penguindori
2008/Spring 2.52008. 9. 20. 11:58
- Eclipse 설정

Help -> SorfWare Update -> Find and Install

1.
사용자 삽입 이미지

2.
사용자 삽입 이미지

3.
 
사용자 삽입 이미지
Select Required : 선택 한 사항 알아서 필요 시스템 체크 해줌..
J2SE, JAVA 나와있는거 클릭후 위의 버튼 클릭

4.
사용자 삽입 이미지

아무튼 여기서 그냥 넥스트 누루고 알아서 ^^;

다음은 톰켓 설정 ^^*



Posted by penguindori
카테고리 없음2008. 9. 20. 11:04



기본 키    
BOARD



 


00000000000000000



외래 키    
외래 키 참조된 테이블 참조된 열 작업  
외래 키 추가    




목록



000000000000000000000


제약 조건    
제약 조건 이름 유형 열/검사  
제약 조건 추가    


사용 가능한 열
SEQ NUMBER
TYPE VARCHAR2
CONTENT VARCHAR2
WRITE VARCHAR2
REGDATE VARCHAR2
HITCOUNT NUMBER
PASSWORD VARCHAR2
예제 검사 제약 조건
STATUS IN ('OPEN','CLOSED','PENDING')

SAL IS NOT NULL OR COMM IS NOT NULL

LENGTH(ENAME) >= 6

SAL > 0

SAL + NVL(COMM,0) > 1000

ENAME = UPPER(ENAME)

(SAL * 100) = trunc(SAL * 100)

HIREDATE > SYSDATE - 7

-------
script
CREATE TABLE  "BOARD"
   ( "SEQ" NUMBER NOT NULL ENABLE,
"TYPE" VARCHAR2(200) NOT NULL ENABLE,
"CONTENT" VARCHAR2(3000) NOT NULL ENABLE,
"WRITE" VARCHAR2(100) NOT NULL ENABLE,
"REGDATE" VARCHAR2(14) NOT NULL ENABLE,
"HITCOUNT" NUMBER NOT NULL ENABLE,
"PASSWORD" VARCHAR2(20) NOT NULL ENABLE,
CONSTRAINT "BOARD_PK" PRIMARY KEY ("SEQ") ENABLE
   )

Posted by penguindori
2008/Spring 2.52008. 9. 20. 09:21

1일차
1.apache
  http://apache.org/
  (http://tomcat.apache.org/)
2. Eclipse 다운로드
  http://eclipse.org
3. 스프링 프레임워크
  http://springframework.org/download
(http://sourceforge.net/project/showfiles.php?group_id=73357&package_id=173644&release_id=608794)
4. Oracle
   http://oracle.com
  C:Spring 폴더 생성
    util안에   1)apache-tomcat-5.5.27
                2)eclipse-SDK-3.3.2-win32
                3)spring-framework-2.5.5-with-docs
                4)OracleXEUniv.exe
                                                            필요 합니다.

설치..

오라클 설치후

>SQL>SQL 명령
select * from tabs (Ctrl + Enter)실행

---------------
오라클 설정
--------------
1. 계정 생성
2. Tabel Create
  board
  


테이블 생성    
 
열 이름 유형 전체 자릿수 소수점 이하 자릿수 널이 아님 이동
아래로 열 이동위로 열 이동
아래로 열 이동위로 열 이동
아래로 열 이동위로 열 이동
아래로 열 이동위로 열 이동
아래로 열 이동위로 열 이동
아래로 열 이동위로 열 이동
아래로 열 이동위로 열 이동
아래로 열 이동위로 열 이동
아래로 열 이동위로 열 이동


 
Posted by penguindori

hackersnews.co.kr

수업 정보 제공 SITE 입니다.
(해커 대학 공식 SITE)
-------------------------------
부라우저..

nc -L  -p 9389

=웹 해킹=
------------
인터넷 해킹 - 기법 - xss 쿠키 변조
                          -  Injection
시스템 해킹    -
네트워크 해킹 - 기법
                       도구
                       기타   <-- 이런식으로 정리를 하자.
----------------------------------------------
SQL Injection

' 1 =1 --
ID 창에 위의 내용을 입력후 비밀번호 아무거나.

owasp(open web application security project)

웹 응용프로그램의 보안을 유지하기 위한 프로젝트

webgoat 다운로드 받기

www.owasp.org

설치후 Relese 버전으로

http://127.0.0.1/WebGoat/attack
id guest pw guest

tool : 게임 은행 계좌
paros
achilles
burp proxy
webscarab
cooxie  : cookie값을 변경


acunetix : 스케너
exploitation framework  : 무로 PT(모의 침투)
metasploit                   : 무료

core-impact                : 유료 PT
=============================================================

cooxie

: cookie나 cache 전문 편집기
웹브라우저에서 로그인 하면 해당 javasciprt:document.cookie() <-- 편하게 보게 해주는것

============================================================

Session Management

=>
How to Spoof an Authentication Cookie

How to Spoof an Authentication Cookie

Login using the webgoat/webgoat account to see what happens. You may also try aspect/aspect. When you understand the authentication cookie, try changing your identity to alice.

Sign In

Please sign in to your account. See the OWASP admin if you do not have an account.
webgoat/webgoat
JSESSIONID=5F91D2F1B147319AFAA426A8ECDD8DAC
AuthCookie=65432ubphcfx  인증 쿠키

aspect/aspect
JSESSIONID=5F91D2F1B147319AFAA426A8ECDD8DAC
AuthCookie=65432udfqtb 인증 쿠키

패턴
alice
1 . AuthCookie=65432alice
2 . AuthCookie=65432ecila 거꿀로..
2 . AuthCookie=65432fdjmb 뒤에 영어 + 알파벳 하나씩 더하기


내일 설치할 경로 파로스
http://www.parosproxy.org

Posted by penguindori
2008/JAVA2008. 9. 3. 10:21

Action 클래스를 작성한다.

 import com.opensymphony.xwork2.ActionSupport;

public class HelloWorldAction extends ActionSupport{
 private String message;

 public String getMessage() {
  return message;
 }
 
 public void setMessage(String message) {
  this.message = message;
 }

 @Override
 public String execute() throws Exception {
  this.message = "Hello World! Hello Struts2";
  return SUCCESS;
 }
}

JSP를 작성한다.

 <%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Hello World</title>
</head>
<body>
${message}
</body>
</html>
web.xml 에 필터를 등록한다.

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
 id="WebApp_ID" version="2.5">
 <display-name>Blog2</display-name>
 <filter>
  <filter-name>struts2</filter-name>
  <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
 </filter>
 <filter-mapping>
  <filter-name>struts2</filter-name>
  <url-pattern>/*</url-pattern>
 </filter-mapping>
 <welcome-file-list>
  <welcome-file>index.html</welcome-file>
  <welcome-file>index.htm</welcome-file>
  <welcome-file>index.jsp</welcome-file>
  <welcome-file>default.html</welcome-file>
  <welcome-file>default.htm</welcome-file>
  <welcome-file>default.jsp</welcome-file>
 </welcome-file-list>
</web-app>

struts.xml 액션 클래스를 등록한다.

 <?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
  <package name="default" extends="struts-default">
    <action name="HelloWorld" class="HelloWorldAction">
      <result>/WEB-INF/jsp/HelloWorld.jsp</result>
    </action>
    <!-- Add actions here -->
  </package>
</struts>

Posted by penguindori
2008/JAVA2008. 9. 3. 10:20
 

기본적인 방법

Java 홈페이지에서 최신 Java SE 버젼을 다운 받는다.

Tomcat 홈페이지에서 최신 Tomcat을 다운 받는다.

Eclipse 홈페이지에서 최신 버젼을 다운받는다. J2EE 버전을 받는다.

Struts2 홈페이지에서 최신 버젼을 다운 받는다.


추천 해주는 설치 디렉토리(윈도우 기준)

보통 시스템 드라이브가 아닌 드라이브에 설치한다.

D:\Dev\Default\Java\JDK1.6

D:\Dev\Default\Java\JRE1.6

D:\Dev\Default\Tomcat\Tomcat6

D:\Dev\Default\Eclipse

D:\Dev\Default\Workspace


윈도우 인스톨러를 사용해서 간단히 설치해도 되지만 압축을 풀어서 경로를 등록해주는 방법도 좋다.

추후 Dev 폴더만 압축해서 옮기면 되기 때문이다.


시스템 변수에 등록되어야 하는 상수

JAVA_HOME

D:\Dev\Default\Java\JDK1.6

CATALINA_HOME

D:\Dev\Default\Tomcat\Tomcat6


PATH

;%JAVA_HOME%bin;% CATALINA_HOME%bin

이렇게 패스 설정까지 해두면 편하게 cmd 창에서 구동 시킬 수 있다.


자 이제 모든 설치가 되었다면 Hello World 출력의 반이 끝났다.


Eclipse를 구동 시켜보자.

우선 Eclipse에 톰캣을 연동 시킨다.

Sever 란 글자를 치면 바로 나온다.


자신이 설치한 서버를 선택해준다.


서버 위치를 자동으로 잡지 못하는 경우 서버 위치를 잡아준다.


자 이제 새로운 프로젝트를 만든다.

Dynamic 으로 검색하면 딱 나온다.

만약 이 위저드가 없다면 Update를 받아서 이 것에 필요한 것을 다 설치해 주거나 Eclipse J2EE용을 다시 받아야한다.


Blog2 란 프로젝트 명으로 새롭게 만든다. 앞으로 이 곳에서 계속 개발을 할 것이다.


새롭게 설치한 Workspace의 내용이다. 서버와 Blog2 프로젝트만 있다. 물론 더 있어도 된다.

이제 Struts2 프레임워크 설치를 위한 방법을 설명한다.

Blog2/[WebContent]/WEB-INF/lib 폴더 밑에 Struts2 라이브러리를 위치 시킨다.

struts2-core-2.0.11.2.jar

xwork-2.0.5.jar

ognl-2.6.11.jar

commons-logging-1.0.4.jar

freemarker-2.3.8.jar

최소 위와 같은 파일들은 있어야 한다.

Posted by penguindori
2008/PLAN2008. 8. 27. 11:20

우선 계획을 잡아 보자!

8월27일 수 -  소프트웨어 과목 학습
8월28일 목 -  2007년 1회 풀어보기 및 소프트웨어 과목 학습
8월29일 금 -  휴식
8월30일 토 -  2007년 2회 풀어보기 및 소프트웨어 과목 학습
8월31일 일 -  2007년 3회 풀어보기 2006년 3회 풀어보기 및 소프트 웨어 과목 학습
9월01일 월 - 소프트 웨어 과목 학습 마무리
9월02일 화 - 2008년 1회 풀어보기
9월03일 수 - 2008년 2회 풀어보기
9월04일 목 - 5과목 데이터 통신 한번 훌터 보기
9월05일 금 - 2006년 2회 3회 풀어보기
9월06일 토 - 2006년 1회 및 2008년 1회 2회 다시 풀어보기

9월08일 월 - 경력 증명서 요청 goldennet ^^*

Posted by penguindori