반응형
검색 엔진에 노출되는 방법.
탭에 존재하는 키워드를 변경해야 합니다. 만약 고정됐다면 변경되는 사항에 대해 검색엔진에 노출되지 않습니다.
즉 <head> 영역에 <title>을 노출시켜야 합니다.
우라는 tiles 프레임워크를 사용하고 있으므로 타일즈의 layout.jsp를 열어 변경되어야 할 title값을 tiles태그를 이용해 변경합니다.
만약 title이 존재하지 않는다면 도메인 이름이 기본적으로 title이 설정됩니다.
<title><tiles:insertAtrribute name="title" ignore="true"></title>
tiles설정을 기본적으로 강제하지않는 속성입니다. ignore="true"
하지만 title값을 변경되는 값마다 변경되도록 하기 위해 EL표기법을 사용합니다.
그러기 위해서 tiles-el 라이브러리를 의존 설정을 해주어야 합니다.
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-el</artifactId>
<version>3.0.8</version>
</dependency>
이제 title이라는 값을 el 설정해주기 위해 tiles.xml로 들어갑니다.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE tiles-definitions PUBLIC
"-//Apache Software Foundation//DTD Tiles Configuration 3.0//EN"
"http://tiles.apache.org/dtds/tiles-config_3_0.dtd">
<tiles-definitions>
<definition name="root.*" template="/WEB-INF/view/inc/layout.jsp">
<put-attribute name="css" value="" />
<put-attribute name="header" value="/WEB-INF/view/inc/header.jsp" />
<put-attribute name="aside" value="/WEB-INF/view/inc/aside.jsp" />
<put-attribute name="main" value="/WEB-INF/view/{1}.jsp" />
<put-attribute name="footer" value="/WEB-INF/view/inc/footer.jsp" />
</definition>
<definition name="admin.*.*.*" template="/WEB-INF/view/inc/layout.jsp" >
<put-attribute name="css" value="" />
<put-attribute name="header" value="/WEB-INF/view/inc/header.jsp" />
<put-attribute name="aside" value="/WEB-INF/view/admin/inc/aside.jsp" />
<put-attribute name="main" value="/WEB-INF/view/admin/{1}/{2}/{3}.jsp" />
<put-attribute name="footer" value="/WEB-INF/view/inc/footer.jsp" />
</definition>
<definition name="admin.*" template="/WEB-INF/view/inc/layout.jsp">
<put-attribute name="css" value="" />
<put-attribute name="header" value="/WEB-INF/view/inc/header.jsp" />
<put-attribute name="aside" value="/WEB-INF/view/admin/inc/aside.jsp" />
<put-attribute name="main" value="/WEB-INF/view/admin/{1}.jsp" />
<put-attribute name="footer" value="/WEB-INF/view/inc/footer.jsp" />
</definition>
<definition name="member.*" template="/WEB-INF/view/inc/layout.jsp">
<put-attribute name="css" value="/css/member-main.css" />
<put-attribute name="header" value="/WEB-INF/view/inc/header.jsp" />
<put-attribute name="aside" value="/WEB-INF/view/member/inc/aside.jsp" />
<put-attribute name="main" value="/WEB-INF/view/member/{1}.jsp" />
<put-attribute name="footer" value="/WEB-INF/view/inc/footer.jsp" />
</definition>
<definition name="notice.*" template="/WEB-INF/view/inc/layout.jsp">
<put-attribute name="css" value="" />
<put-attribute name="header" value="/WEB-INF/view/inc/header.jsp" />
<put-attribute name="aside" value="/WEB-INF/view/inc/aside.jsp" />
<put-attribute name="main" value="/WEB-INF/view/notice/{1}.jsp" />
<put-attribute name="footer" value="/WEB-INF/view/inc/footer.jsp" />
</definition>
</tiles-definitions>
많은 definition 중 admin에 관련된 tiles만 가져와 설정해보겠습니다.
<definition name="admin.*" template="/WEB-INF/view/inc/layout.jsp" preparer="패키지명.tiles설정클래스">
<put-attribute name="css" value="" />
<put-attriute name="title" expression="${model.property}">
<put-attribute name="header" value="/WEB-INF/view/inc/header.jsp" />
<put-attribute name="aside" value="/WEB-INF/view/admin/inc/aside.jsp" />
<put-attribute name="main" value="/WEB-INF/view/admin/{1}.jsp" />
<put-attribute name="footer" value="/WEB-INF/view/inc/footer.jsp" />
</definition>
Controller에서 설정한 model의 property값으로 title값을 설정할 수 있게 됩니다.
반응형
'웹 프로그래밍 기초 > 자바기반의 웹&앱 응용SW 개발자' 카테고리의 다른 글
자바기반의 웹&앱 응용 SW개발자 양성과정 72일차 -108 (0) | 2020.06.29 |
---|---|
JQuery 시작하기 (0) | 2020.06.25 |
자바기반의 웹&앱 응용 SW개발자 양성과정 70일차 -105 (0) | 2020.06.23 |
자바기반의 웹&앱 응용 SW개발자 양성과정 69일차 -104 (0) | 2020.06.19 |
자바기반의 웹&앱 응용 SW개발자 양성과정 68일차 -103 (0) | 2020.06.18 |
댓글