#java #spring #spring-boot
Вопрос:
У меня есть этот класс, с которого начинается приложение:
@SpringBootApplication
public class MainCore extends SpringBootServletInitializer{
public static void main(String[] args){
SpringApplication.run(MainCore.class, args);
}
}
И эти два XML-файла:
web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
id="WebApp_ID"
version="4.0">
<display-name>Fooname</display-name>
<servlet>
<servlet-name>fooname</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>fooname</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>1</session-timeout>
</session-config>
</web-app>
fooname-servlet.xml:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">
<mvc:annotation-driven />
<context:component-scan
base-package="com.web.fooname.controller" />
<mvc:default-servlet-handler />
<bean id="viewResolver" class="org.springframework.web.servlet.view.UrlBasedViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />
<property name="prefix" value="/WEB-INF/jsp/" />
<property name="suffix" value=".jsp" />
</bean>
<!-- Handles HTTP GET requests for /resources/** by efficiently serving up static resources in the ${webappRoot}/resources directory -->
<mvc:resources mapping="/resources/**" location="/resources/" />
</beans>
И я хочу удалить эти 2 файла и преобразовать их в код.
Кто-нибудь может мне в этом помочь? Я знаю, что это не является целью переполнения стека, но я прочитал много учебных пособий, но не понимаю их.
Комментарии:
1. Удалить web.xml. Поместите свой
@SpringBootApplication
аннотированный класс вcom.web.fooname
(вам все еще нужен правильныйconfigure
метод, если вы планируете развернуть его как войну, кстати. Добавьтеspring.mvc.view.suffix=.jsp
иspring.mvc.view.prefix=/WEB-INF/jsp/
в свойapplication.properties
файл. Удалите своеfooname-servlet.xml
и запустите приложение.2. @M. Дейнум, я разворачиваюсь как на ВОЙНЕ. Только этих 3 вещей достаточно? И как остаться с отображением ресурсов?
3. И правильный
configure
метод, иначе он не запустится. Если вам действительно нужно дополнительное сопоставление (не уверен, что это уже по умолчанию, как я забыл :s). Вы можете добавить класс, который реализуетWebMvcConfigurer
и реализуетaddResourceHandler
метод для регистрации этого сопоставления.4. Наконец-то я понял это. Спасибо.