.Net 码农搭使用 Intellij ideal 搭Java Maven + Spring + Spring MVC + Mybatis 框架(二)
这是一个可以运行Hello world 即导航到 首页 index.jsp页面的初步原型
现在多加一个login.jsp页面,新增一个login 方法,运行指向 login
结果发现:
并没有打开login 页面。那原来显示Helloworld 页面,只是Tomcat服务器默认显示index.jsp页面而矣,并没有经过controller 去指向到指定页面。
接下来需要配置:spring mvc
新增一个 springmvc.xml 文件:
配置如下:
<?xmlversion="1.0"encoding="UTF-8"?> <beansxmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd "> <mvc:annotation-driven> <mvc:message-convertersregister-defaults="true"> <!--配置Fastjson支持--> <beanclass="org.springframework.http.converter.StringHttpMessageConverter"> <constructor-argvalue="UTF-8"/> </bean> <beanclass="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter"/> </mvc:message-converters> </mvc:annotation-driven> <!--配置自动扫描controller支持--> <context:component-scanbase-package="controllers"/> <beanclass="org.springframework.web.servlet.view.InternalResourceViewResolver"> <propertyname="prefix"value="/WEB-INF/jsp"/> <propertyname="suffix"value=".jsp"/> </bean> </beans>
然后再web.xml中配置
<?xmlversion="1.0"encoding="UTF-8"?> <web-appversion="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"> <display-name></display-name> <!--配置前端控制器--> <servlet> <servlet-name>spring</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <!--ContextconfigLocation配置springmvc加载的配置文件 适配器、处理映射器等 --> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/springmvc.xml</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>spring</servlet-name> <!--1、.action访问以.action结尾的由DispatcherServlet进行解析 2、/,所有访问都由DispatcherServlet进行解析 --> <url-pattern>/</url-pattern> </servlet-mapping> <!--解决post乱码问题的过滤器--> <filter> <filter-name>CharacterEncodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>utf-8</param-value> </init-param> </filter>
<filter-mapping> <filter-name>CharacterEncodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> </web-app>
保存重新打包,调试运行
还是没有打开login.jsp页面,但是已经是可以经过controller 了.再配置一下:
把前缀去掉
保存重新打包,调试运行可以了
尝试新增两个接口:
因为配置了文本输出与FastJson,所以能正常打开访问:
第二章完