[SPRING] 스프링 MVC가있는 JSP 페이지의 스타일 시트 포함
SPRING스프링 MVC가있는 JSP 페이지의 스타일 시트 포함
jsp 페이지에서 스타일 시트에 연결하는 데 문제가 있습니다. 내 디렉토리 구조와 관련이 있다고 생각합니다.
WEB-INF
|-- css
| |-- main.css
|
|-- jsp
|-- login.jsp
나는 다음과 같은 표준 HTML 링크 태그의 다양한 형태를 시도했다 :
<link href="css/main.css" rel="stylesheet" type="text/css" media="screen" />
<link href="main.css" rel="stylesheet" type="text/css" media="screen" />
<link href="WEB-INF/css/main.css" rel="stylesheet" type="text/css" media="screen" />
나는 또한 jsp 폴더에 css 파일을 포함시키고 직접 연결하려고 시도했다. 아무것도 작동하지 않습니다. 배포 후 소스를보고 CSS 파일에 직접 액세스하려고 시도했지만 거기에 없지만 WEB-INF 디렉토리에 있기 때문에 이것은 놀랄 일이 아닙니다.
또한 나머지 응용 프로그램과 함께 배포되고 있음을 확인했습니다. jsp 소스는 다음과 같습니다.
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Login</title>
<link href="css/main.css" rel="stylesheet" type="text/css" media="screen" />
</head>
<body>
<div id="wrapper">
<div id="header">
<div id="logout"> </div>
<h1>Login</h1>
</div>
<div id="content" class="content">
<form action="" method="post" name="login-form">
<fieldset>
<legend>Login</legend>
<table border="0" align="center">
<tr>
<td><label>User Name:</label></td>
<td><input type="text" name="userName" /><br><br></td>
</tr>
<tr>
<td><label>Password:</label></td>
<td><input type="text" name="password" /><br><br></td>
</tr>
</table>
</fieldset>
<div class="buttons">
<input type="submit" name="submit" value="Login" />
<input type="button" name="cancel" value="Cancel" />
</div>
</form>
</div>
</div>
</body>
</html>
감사!
해결법
-
==============================
1./ WEB-INF의 파일은 직접 공용으로 액세스 할 수 없습니다. 중개 (컨트롤러) 서블릿 만이 ServletContext # getResourceAsStream ()의 도움을 받아 액세스하고 스트림 할 수 있습니다. JSP 파일로 Spring (다른 괜찮은 MVC 프레임 워크와 마찬가지로)이하는 일이 바로 그 것입니다. URL로 JSP 파일에 직접 액세스 할 수 없습니다. 잠재적으로 소스 코드가 유출되거나 응용 프로그램 동작이 중단됩니다.
/ WEB-INF의 파일은 직접 공용으로 액세스 할 수 없습니다. 중개 (컨트롤러) 서블릿 만이 ServletContext # getResourceAsStream ()의 도움을 받아 액세스하고 스트림 할 수 있습니다. JSP 파일로 Spring (다른 괜찮은 MVC 프레임 워크와 마찬가지로)이하는 일이 바로 그 것입니다. URL로 JSP 파일에 직접 액세스 할 수 없습니다. 잠재적으로 소스 코드가 유출되거나 응용 프로그램 동작이 중단됩니다.
기본적으로 2 가지 옵션이 있습니다.
결국 옵션 1이 더 쉽고 요구 사항에 더 적합하다고 생각합니다.)
-
==============================
2.@BalusC에서 두 번째 방법을 봄 스타일로 구현하는 방법은 다음과 같이 mvc : resources를 사용하는 것입니다.
@BalusC에서 두 번째 방법을 봄 스타일로 구현하는 방법은 다음과 같이 mvc : resources를 사용하는 것입니다.
<mvc:resources mapping="/css/**" location="/WEB-INF/css/*" />
그리고 나서 main.css 파일을 /css/main.css에서 사용할 수 있어야합니다.
(참고 : 작동하지 않는 경우 DispatcherServlet이 /에 매핑되는지 확인하십시오.)
-
==============================
3.또는 이것을 시도하십시오.
또는 이것을 시도하십시오.
<% @ taglib prefix = "spring"uri = "http://www.springframework.org/tags"%>
"type ="text / css "/>
그것은 작동 할지도 모른다.
from https://stackoverflow.com/questions/2231792/including-style-sheet-in-a-jsp-page-with-spring-mvc by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] Spring map 요청 매개 변수를 POJO에 자동으로 매핑한다. (0) | 2019.03.19 |
---|---|
[SPRING] Spring RestTemplate에서 응답을 어떻게 로그합니까? (0) | 2019.03.19 |
[SPRING] Spring @Autowired는 bean을 이름 또는 유형별로 주입합니까? (0) | 2019.03.19 |
[SPRING] Spring MVC에서 글로벌 모델 속성을 설정하는 최선의 방법은 무엇입니까? (0) | 2019.03.19 |
[SPRING] JPA @ 버전 : 사용 방법은? (0) | 2019.03.19 |