보통 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월 29일 목요일
2016년 12월 19일 월요일
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}
@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>
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>
피드 구독하기:
글 (Atom)