java SpringMVC3 的例子
来源:互联网 发布:安卓服务端数据库 编辑:程序博客网 时间:2024/05/21 18:32
今天学习了Spring MVC3的内容,写了一些示例,由于关于Spring MVC的资料网上特别多,这里就不在赘述。
开发环境:
jdk:1.7+MyEclipse10+Spring3.0+Apache Tomcat 7.0
1.入门级
1)新建index.jsp
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><title>Spring MVC3 Demo</title></head><body> <a href="test.html">Spring MVC 示例</a> <a href="login.do">login</a> <a href="test.xx">test xx</a></body></html>
2) 配置web.xml
<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> <display-name>spring</display-name> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> <welcome-file>default.html</welcome-file> <welcome-file>default.htm</welcome-file> <welcome-file>default.jsp</welcome-file> </welcome-file-list> <servlet> <servlet-name>springmvc</servlet-name> <servlet-class> org.springframework.web.servlet.DispatcherServlet </servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>springmvc</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping></web-app>
3) 配置springmvc-servlet.xml
这个文件类似于之前的ApplicationContext.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:p="http://www.springframework.org/schema/p"xmlns:context="http://www.springframework.org/schema/context"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd" default-autowire="byName"><context:component-scan base-package="com.wicresoft.controller" /><bean id="viewResolver"class="org.springframework.web.servlet.view.UrlBasedViewResolver"><property name="viewClass"value="org.springframework.web.servlet.view.JstlView" /><property name="prefix" value="/" /><property name="suffix" value=".jsp" /></bean></beans>
4)添加HomeController
package com.wicresoft.controller;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.servlet.ModelAndView;@Controllerpublic class HomeController {@RequestMapping("/test.html")public ModelAndView GetMessage(){String str = "This Spring MVC Demo Return From Server";return new ModelAndView("message","str",str);}@RequestMapping("/test.xx")public ModelAndView GetMessage2(){String str = "test.xx return";return new ModelAndView("message","str",str);}}
5) 添加Jar包
6)使用Tomcat 启动(非MyEclipse自带的)
7) 访问
点击两个链接分别返回
总结:
(1).Spring MVC 支持注解的方式完成Url和Action方法的映射,这个跟ASP.NET MVC 的属性一样的。
(2).Spring MVC 不负责根据后缀名选择如何处理,完全由程序控制。
(3).Spring MVC 通过配置的方式来约定映射规则。
2.页面传值
1)新增LoginController
package com.wicresoft.controller;import javax.servlet.http.HttpServletRequest;import org.springframework.stereotype.Controller;import org.springframework.ui.ModelMap;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod;import org.springframework.web.servlet.ModelAndView;import com.wicresoft.model.*;@Controllerpublic class LoginController {/*@RequestMapping("/login.do")public ModelAndView GetMessage(){String str = "success";return new ModelAndView("message","str",str);}*/@RequestMapping(value = "/login.do", method = RequestMethod.POST)public ModelAndView onSubmit(HttpServletRequest request, ModelMap modelMap){String username = request.getParameter("username"); String password = request.getParameter("password"); LoginForm form = new LoginForm(); form.setUsername(username); form.setPassword(password); if(username.equals("Admin")&&password.equals("12345")){ return new ModelAndView("success","username",form); } else{ return new ModelAndView("success","username","error"); }}}
登录页面
<%@ page contentType="text/html;charset=utf-8"%> <html> <head><title></title></head> <body> <form method="post" action=login.do> <table> <tr><td>姓名</td><td><input id="user" name="username" type="text" /></td></tr> <tr><td>密码</td><td><input id="psw" name="password" type="text" /></td></tr> <tr><td colSpan="2" align="center"><input type="submit" value="提交" width="180px"/></td></tr> </table> </form> </body> </html>
登录成功的页面
<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <base href="<%=basePath%>"> <title>My JSP 'success.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="This is my page"><!--<link rel="stylesheet" type="text/css" href="styles.css">--> </head> <body> <h1>final</h1> ${username.getUsername()} </body></html>
登录效果
登录之后
总结:
1)在Controller中可以使用request对象获取页面输入的参数
2)controller可以返回对象给页面,并且自动序列化,在页面接收的时候,自动进行反序列化!类似ASP.NET MVC 的模型传递!
3)注解可以注解post/get方法
0 0
- java SpringMVC3 的例子
- SpringMVC3.X的配置
- springMVC3
- springmvc3
- SpringMVC3的中文乱码问题
- 【SpringMvc3】关于SpringMvc3视图解析器的问题
- springMVC3.2+Hibernate4+freemarker入门简单小例子,适合初学者
- springmvc3.2.2版本的日期的处理
- springMVC3 基于注解的输入验证
- springMVC3学习(八)--全局的异常处理
- SpringMVC3的ResponseBody返回字符串乱码问题解决
- SpringMVC3的ResponseBody返回字符串乱码问题解决
- springMVC3学习(八)--全局的异常处理
- ajax和springmvc3.0的交互
- springMVC3学习(八)--全局的异常处理
- SpringMVC3强大的请求映射规则详解
- springMVC3学习(八)--全局的异常处理
- SpringMVC3强大的请求映射规则详解
- Jetty 的工作原理以及与 Tomcat 的比较
- 引入JQuery提示:Uncaught ReferenceError: $ is not defined
- Python IDLE基本设置
- python学习之异常处理
- 【java】itoo项目实战促学之SpringMVC注解_@RequestMapping
- java SpringMVC3 的例子
- C语言编程(练习4:字符串与字符串函数)
- 第三方异步加载图片(简单使用)
- 图片宽高度自适应
- Navicat for mysql 简单使用教程
- 设置mysql 外网ip访问
- 关于安装win7与linux双系统的一点心得
- 数据库连接字符串
- 曾经以为~世界很美~