2016년 12월 29일 목요일

스프링 MVC STATIC 폴더 설정

보통 images ,js, css 파일의 경우 static으로 폴더를 따로 빼서 구분하는데
ex)webapp/static/js

Spring mvc의 경우 처음 세팅에 이걸 허용해 놓지 않아서 따로 허용해줘야한다 

하는 방법은 servlet-context.xml 파일 내에 기존의 resources 설정 되있는곳에 추가로 작성하면 된다

<mvc:resources mapping="/resources/**" location="/resources/" />
<mvc:resources mapping="/static/**" location="/static/" />
<mvc:resources mapping="/robots.txt" location="/robots.txt" />

2016년 12월 19일 월요일

오버로딩 오버라이딩

http://hyeonstorage.tistory.com/185


2016년 12월 14일 수요일

JSON 간단 예제

--JAVA 부분
@RequestMapping(value="/financeList", method=RequestMethod.GET)
public String financeList(ModelMap modelMap){

        JSONObject obj = new JSONObject();
        obj.put("Test", "New");
        obj.put("Test1", "New1");
       
        JSONArray arr = new JSONArray();
        arr.put(12);
        arr.put(122);
        arr.put(453);
        arr.put(123);
       
        obj.put("NumberList", arr);
       
        System.out.println(obj.toString());
       
        modelMap.put("json", obj.toString());
       
        return "jsonTest";
}

--JSP 부분

<jsp:directive.page contentType="text/html;charset=UTF-8" />${json}

2016년 12월 12일 월요일

logback 설정 및 로컬 폴더 설정

--로컬파일쓸때 폴더 설정시 중요사항
d:/  or d:\\

/ 최상위경로
./ 현재 폴더
../ 상위폴더

pom.xml 추가
<dependency>
<groupId>org.lazyluke</groupId>
<artifactId>log4jdbc-remix</artifactId>
<version>0.2.7</version>
<exclusions>
<exclusion>
<artifactId>slf4j-api</artifactId>
<groupId>org.slf4j</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.1.2</version>
</dependency>
<!-- Updated at 03-Apr-2014 -->
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>1.1.2</version>
</dependency>
<!-- Updated at 03-Apr-2014 -->
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-access</artifactId>
<version>1.1.2</version>
</dependency>
  <dependency>
       <groupId>org.logback-extensions</groupId>
       <artifactId>logback-ext-spring</artifactId>
       <version>0.1.2</version>
   </dependency>
web.xml 설정
<!-- logback 외부 클래스 -->
 <!-- logback --> <listener> <listener-class>ch.qos.logback.ext.spring.web.LogbackConfigListener</listener-class> </listener> <context-param> <param-name>logbackConfigLocation</param-name> <param-value>classpath:/log/logback-${spring.profiles.active}.xml</param-value> </context-param>

로그파일쓰기
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true">

<property name="PROJECT_NAME" value="localApi" />
<property name="LOG_FILE_PATH" value="D:\\log\\local" />

<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<!-- encoders are assigned by default the type ch.qos.logback.classic.encoder.PatternLayoutEncoder -->
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%-5level] %-50class{50} : %-5line - %msg%n
</pattern>
</encoder>
</appender>

<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${LOG_FILE_PATH}/${PROJECT_NAME}.log</file>

<encoder>
<pattern>%d{HH:mm:ss.SSS} [%-5level] %-50class{50} : %-5line - %msg%n</pattern>
</encoder>

        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- 파일이 하루에 한개씩 생성된다 -->
            <fileNamePattern>D:/log/sujemall-webapp.%d{yyyy-MM-dd}.log</fileNamePattern>

            <!-- maxHIstory 설정은 위 부분에 롤링 정책에 따라 적용되 된다고 보면된다.
             위 설정데로 라면 30일이 지난 파일은 삭제가 된다.-->
            <maxHistory>30</maxHistory>
        </rollingPolicy>
</appender>

<root level="DEBUG">
<appender-ref ref="STDOUT" />
<appender-ref ref="FILE" />
</root>
</configuration>