U E D R , A S I H C RSS

Spring/탐험스터디/wiki만들기

SimpleWiki

Spring Framework

Spring Security


  • UserDetail - 는 User 객 만들기
  • 로그 보 가
    1. SecurityContextHolder는 법
      Object principal = SecurityContextHolder.getContext().getAuthentication().getPrincipal();
      
                      String name;
                      if (principal instanceof UserDetails) {
                        name = ((UserDetails)principal).getUsername();
                      } else {
                        name = principal.toString();
                      }
      
    2. Spring dependency injection 는 법
      public String write(@RequestParam("title") String title, @RequestParam("contents") String contents, Model model, Principal principal) {
      ...
      page.edit(contents, userRepository.get(principal.getName()));
      ...
      }
      

  • spring security tab library
    • spring security 관련된 기능들 html/js 다.

<%@ taglib uri="http://www.springframework.org/security/tags" prefix="sec" %>
...
        <sec:authorize ifAllGranted="ROLE_USER">
                <input id="contents_edit" type="textarea" class="page_edit" value="${page.contents}" />
                <a href="#" class="page_edit" id="save">save</a>
        </sec:authorize>
...
        <sec:authorize url="/login">
                <a href="logout">Logout</a>
        </sec:authorize>

  • Spring Security Role Voter는 "ROLE_" 다. 단 가능다.

Hibernate

  • ORM(Object Relation Mapping) . Java persistence, EJB3.0 다.
  • Lisence : LGPL

JSP

Markdown

  • 문법 를 구는 대 Markdown 기로 결다.
    • Markdown란 : wiki:Markdown
    • Java로 구된 Markdown implementation Pegdown 다.
      • MarkdownJ, MarkdownPapers는 문가 부고 남 두 구 Pegdown 를 더 .
      • Pegdown
        1. pom.xml dependency
          <dependency>
                  <groupId>org.pegdown</groupId>
                  <artifactId>pegdown</artifactId>
                  <version>1.1.0</version>
          </dependency>
          
        2. markdown text를 html 문로 변
          String html = new PegDownProcessor().markdownToHtml("markdown text");
          

CGLIB

  • CGLIB는 브러리로(Code Generator Library) 런 는 기능 공() 라고 다.

8 30


    • 2? 까만 1.5 디를 드가 난감다. 드를 봤다면 렇게까 데 그동 놓고 ... 다 .
    • 단 돌가게 만들!! 는 바꿔 다. 무렇게나 려는 고 개발 되다가 되는 게 그렇게 로 개발다가 기민게 고 면 답 드가 되는 것 같다.
      • 그래 늘 느낀 게 드는 데미 무 드라고…
    • TODO : write/delete 로 security

    • 문법기로 다.
      • 문법기로 는데 를 구기보다 Markdown 면(Markdown 문법 만) 것 같(명 다!) Markdown pegdown 기로 경. Java 기반 그나(GitHub )가 ....
      • pegdown 는데(new Pegdown().markdownToHTML(/* String */) 는데까 렸다. 나 고면 다른 러가 나고 러랑 무고개ㅋㅋ
      • ? 다. 를 기록.
    • 무고개
      • 가던 것 드를 보 Mock 객다. 는 구 덜 되. 다는 것 게되다. 드가 Mock 객를 벗. 당 과 변 럴까?
        • 리가 (그리고 드) 게 되다는 뜻. 과 발견는 것 .
    • 겠다.
    • 공부게 많다.
      • Spring, Hibernate . CGLib, Spring Security, JSP, Session 겠다.
      • 모른다.
    • 만들기
      • pegdown과 문법 Markdown
      • 렸다. 구 게됐.

9 13



    • 늘 가 를 구동 다.
      • 감격, 가 돌감!

9 19



    • 나는 많다. .....
    • (리 9)는 jsp pageContext.getAttribute("page")로 Response page를 는데 리 10부 pageContext.getRequst().getAttribute()(또는 request.getAttribute)를 page를 다. ? 모르겠.
      • Scope 것 같다.
    • Jasper는 JSP를 java로 변 것 같다.
      • home.jsp는 home_jsp.java로 변되는

9 20


    • login.jsp 를 만들 로그 다.
      • 그런데 Remember me가 대로 동 .
    • save를 르면 된 내 바로 반는데 로고 된다.

    • 로그 면 login, signup
      • spring security tag library ifAllGranted, ifNotGranted 다.
    • 로그 view단 는 기능
    • 로 검 떻게 뒤 결과를 돌려고, 로 만들 까?
      • GET는듯.
      • url mapping 떻게 ?
      • pagdown page 링는 localhost:8080/simplewiki/를 localhost:8080/로 바꿔린다.
        • 래 localhost:8080/로 나 닌가?
      • ViewResolver? Intercept Handler?
    • 고 놀. 다들 덕다.
    • mac eclipse tomcat 리고데 caltalina를 못는다

9 27



    • PageTitle 다!! 고보 , PathVariable로 url path 다.
      • 기능로는 getServletPath()

10 4

10 11



    • Page또는 User 고민. Page는 History로 남는다. 다가 같 로 다 만들면 history는 남. 그러나 User는 id는 남 history 고 같 id로 다 만들면 기 . 그래 User id 다른 보(password, e-mail..)를 다.

11 01



    • User가 userId는 남 id로 가 User userId(String type) password,..(UserInfo.class)를 다.
      • User는 UserInfo를 가다.( Composite)
      • User UserInfo는 Nullable ColumnUserInfo 때는 ForeignKey Contraint로 러가 발된다..
      • User UserInfo 를 변경나 논리로 맞 림.
      • UserInfo는 것 field들 null 기로 ... + flag
      • 방법 고민.
    • 데 (내게) 결방법 다. .
    • . 18000바닥 만 .

11 21



    • Page History 보기 기능
      • url "/" Page내 보기 Page history 보기 두가 기능다.
        • 다른 (page content view, page history view)를 만 더 (page view) subset므로 Request는 같게 고 parameter를 달리를 구다.
      • 롤러 를 다르게 OverLoadingResuestMapping Spring Ambiguous Mapping Exception다.
        • RequestMappingHandlerMapping { URL , methods= Method , params=[],headers=[],consumes=[],produces=[],custom=[]}로 Request를 구다.
      • @RequestMapping 값들 params를 라메 다. 렇게 라메RequestMapping 다.
        • RequestMapping value값, Method 라메 무로 리 들링 달리 다.
        • 를들 @RequestMapping(value = "/helloworld", method = RequestMethod.GET) @RequestMapping(value = "/helloworld", method = RequestMethod.GET, params="param=param") 다르다. 각각 다른 mapping될 다.

    • Login 고 Page를 는 문
      • FrontPage는 Login Page create를 다.
        • spring security "/create" url authentication
        • ui Signup는 부 다른
        • RequestMapping method signup signup 들링
          • ... .. "signup " " ID PASSWORD를 로그 리를 는" 경가 같 Request Name게 되..
      • 로그 면 Spring Security Signup 동된다. 끗

11 29



    • 부로 놀린 고민. 각보다 까다로 , backlink 무 부구만..
    • linkback?
      • backlink는 는 링 ()고, linkback backlink는 방법들군.

12 6


    • Java Matcher를 때 matches()는 는 것만 고 find()는 substring 다. 를들 'abcde' 'bcd'를 때 matches를 면 못 고 find를 .

    • backlink
    • Java Matcher find() matches()가 과 관련 는데 겠다.

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:28:05
Processing time 0.0522 sec