Spring

Tiles - JAVA파일로 쉽게 설정하기 [Spring Boot]

민돌이 2020. 4. 5. 10:34
반응형
01. Tiles 란?

웹 페이지의 Header, Footer 등 같은 내용을 반복적으로 사용되는 부분들에 대한 정보를 보기쉽게 한곳에 모아둔것.

 

 

 

02. Dependency 추가
		<dependency>
			<groupId>org.apache.tiles</groupId>
			<artifactId>tiles-jsp</artifactId>
			<version>${tiles.version}</version>
		</dependency>
		<dependency>
			<groupId>javax.servlet</groupId>
			<artifactId>jstl</artifactId>
			<version>1.2</version>
		</dependency>

pom.xml에 tiles를 사용하기 위한 dependency를 추가해주도록합니다.

${tiles.version} 은 위에 따로 설정해 주었기에 작성하였으며 '3.0.8' 로 바꿔 설정해주도록 합니다.

 

 

03. Config 설정
@Configuration
public class TilesConfig {

	@Bean
	public TilesConfigurer tilesConfigurer() {
		final TilesConfigurer configurer = new TilesConfigurer();
		configurer.setDefinitions(new String[] {"WEB-INF/tiles/tiles-definitions.xml"});
		configurer.setCheckRefresh(true);
		return configurer;
	}

	@Bean
	public TilesViewResolver tilesViewResolver() {
		final TilesViewResolver resolver = new TilesViewResolver();
		resolver.setViewClass(TilesView.class);
		resolver.setOrder(1); // 우선순위
		return resolver;
	}
}

 

위의 dependency를 설정하였다면 TilesConfig class파일을 생성하여 @Bean을 위와 같이 설정해 주도록 합니다.

configurer.setDefinitions() - tiles.defintions.xml 파일의 위치를 설정해줍니다.

 

tiles-definitions.xml 위치

실제 tiles-definitions.xml 설정해준 경로 입니다. 이러면 설정끝!

 

04. Controller에서의 사용법

tiles를 적용하게 되면 Controller에서 페이지를 불러올때 살짝 다르게 적용이 되는거같더라구요.

 

// 기존 페이지 불러올 때
	@RequestMapping(value = "/login")
	public String login(HttpServletRequest req, HttpServletResponse res) {
		return "login/login";
	}
    
    
// tiles 적용 후 페이지 불러올 때
	@RequestMapping(value = "/login")
	public String login(HttpServletRequest req, HttpServletResponse res) {
		return "login.login";
	}

위와 같이 return해줄때 경로설정을 ' / '이 아닌 ' . ' 으로 해주어야 제대로 적용되는것을 확인 할 수 있습니다.

 

 

tiles-definitions.xml에서의 추가 설정 방법은 아래글을 04 부터 확인해주시면 될거같습니다!

[Spring] - tiles 설정하기 [Spring]

 

반응형