这是项目视图
所需要引入架包
首先配置web.xml
需要配置等dispatcherServlet、以及springmvc下的配置文件和名称、字符编码、静态资源处理
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
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_2_5.xsd">
<!-- 配置DispatchcerServlet -->
<servlet>
<servlet-name>springDispatcherServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!-- 配置springmvc下的配置文件的位置和名称 -->
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:springmvc.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>springDispatcherServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<!-- 字符编码 -->
<filter>
<filter-name>CharacterEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>CharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- 处理静态资源 -->
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.css</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.jpg</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.gif</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
然后在src目录下写springmvc.xml文件
里面要写的是自动扫描包、视图解析器
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="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-4.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-4.0.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd
">
<!-- 配置自动扫描包 -->
<context:component-scan base-package="com.jackie.springmvc"></context:component-scan>
<!-- 配置视图解析器 如何把handler方法返回值解析为实际的物理视图 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name = "prefix" value="/WEB-INF/views/"></property>
<property name = "suffix" value = ".jsp"></property>
</bean>
</beans>
创建实体类user类
private String name;
private String pwd;
private Integer age;
记得给set、get方法
接着写controller类测试
package com.jackie.springmvc.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import com.jackie.springmvc.entity.User;
@Controller
public class HelloWorld {
//适用RuquestMapping注解来映射请求的url
//返回值会通过视图解析器为实际的物理视图,对InternalResourceViewResolver视图解析,会做如下的解析
//通过prefix+returnVal+suffix 这样的方得到实际的物理视图,然后转发操作
@RequestMapping("/helloworld")
public String hello(){
System.out.println("helloworld");
return "success";
}
@RequestMapping("")
public String create(Model model){
return "create";
}
@RequestMapping("/save")
public String save(@ModelAttribute("form") User user, Model model){
model.addAttribute("user",user);
return "success";
}
}
然后在编写jsp文件
这是index.jsp文件
<form action="save" method="post">
<fieldset>
<legend>创建用户</legend>
<p>
<label>姓名:</label> <input type="text" id="name" name="name"
tabindex="1">
</p>
<p>
<label>年龄:</label> <input type="text" id="age" name="age"
tabindex="2">
</p>
<p>
<label>密码:</label> <input type="text" id="pwd" name="pwd"
tabindex="3">
</p>
<p id="buttons">
<input id="reset" type="reset" tabindex="4" value="取消"> <input
id="submit" type="submit" tabindex="5" value="创建">
</p>
</fieldset>
</form>
这是success.jsp文件
这是用来接收index.jsp发送到后端请求的
<div id="gloobal">
<h4>创建成功</h4>
<p>
<h5>详情:</h5>
姓名:${user.name}<br /> 年龄:${user.age}<br /> 密码:${user.pwd}<br />
</p>
</div>
编写完成,发布项目测试
index.jsp
success.jsp
总结
刚开始的配置文件时候、出现了一下几个问题
1.自己粗心,单词写错,文件路径配错
2.xmls的beans的路径没引对,漏写http;//了
所以报了找不到beans文件的信息提醒
3.web.xml文件的springmvc.xml文件没加载进去报了个错、原因:classpath:没写进去
4.整个过程排错很烦,但是成功后很爽,所以以后一定要不厌其烦的解决问题。
一般新手的错误都是包引错、单词些错、url引错、这些都解决不了,就重新编译一次。