知识大全 Springmvc的开发流程--附带实例
Posted 视图
篇首语:一年好景君须记,最是橙黄橘绿时。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Springmvc的开发流程--附带实例相关的知识,希望对你有一定的参考价值。
Springmvc的开发流程--附带实例 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
在开发Spring mvc的时候 各种配置下来 往往项目跑起来了 但是一天不写 第二天又忘记怎么搭建了 所以 应该将搭建的思路写下来 这样 开发的时候就会方便许多 就像学武一样 有武功秘籍和没有武功秘籍一样 记住开发流程 思路会变得很清晰 开发起来也就更加快速 Spring mvc的开发流程如下 一 配置基础 >配置目录结构 比如基于eclipse格式还是Maven格式 >配置web xml 主要是以下几个 springframework web servlet DispatcherServlet sprntext ContextLoadListener springframework web filter CharacterEncoding springframework web util Log jConfigListener 二 开发独立的业务逻辑 并在配置文件中进行实例化(当然 也可以直接new) 三 添加web请求入口 如 <a href= >登录</a> 四 添加HandlerMapping DispatchServlet接收到web请求后 将寻求相应的HandlerMapping进行web请求到具体的Controller实现相应的匹配 五 实现对应的Controler并添加到配置文件中 只有实现了Controller DispatcherServlet并不会直到它的存在 还需要将该控制器在配置文件中进行配置 六 添加视图解析器 DispatchServlet根据Controller中的逻辑视图命查找相应的视图实现 默认的是 springframework web servlet view InternalResourceViewResolver 七 实现相应视图 接下来 按照上面的描述来建立一个最简单的Spring mvc项目 一 配置目录结构 >采用的是eclipse目录 >配置web xml <?xml version= encoding= UTF ?><web app xmlns:xsi= instance xmlns= xmlns:web= app_ _ xsd xsi:schemaLocation= app_ _ xsd id= WebApp_ID version= > <display name>spring_mvc_ </display name> <! The front controller of this Spring Web application responsible for handling all application requests > <servlet> <servlet name>dispatcher</servlet name> <servlet class> springframework web servlet DispatcherServlet</servlet class> <load on startup> </load on startup> </servlet> <! Map all requests to the DispatcherServlet for handling > <servlet mapping> <servlet name>dispatcher</servlet name> <url pattern>* do</url pattern> </servlet mapping> <! Bootstraps the root web application context before servlet initialization > <listener> <listener class> sprntext ContextLoaderListener</listener class> </listener> <wele file list> <wele file>index jsp</wele file> </wele file list> <! Reads request input using UTF encoding > <filter> <filter name>characterEncodingFilter</filter name> <filter class> springframework web filter CharacterEncodingFilter</filter class> <init param> <param name>encoding</param name> <param value>UTF </param value> </init param> <init param> <param name>forceEncoding</param name> <param value>true</param value> </init param> </filter> <filter mapping> <filter name>characterEncodingFilter</filter name> <url pattern>/*</url pattern> </filter mapping></web app> 由于只使用Springmvc 所以没有配置ContextLoadListener 二 开发独立的业务逻辑 并添加到配置文件中 package spring service;import mons logging Log;import mons logging LogFactory;public class UserService protected static Log log = LogFactory getLog(UserService class) public boolean login(String username String passworld) (username + \\t + passworld) if (username equals( admin ) && passworld equals( admin )) return true; return false; 因为只是为了演示思路 所以业务逻辑很简单 并在配置文件中进行配置 <?xml version= encoding= UTF ?><beans xmlns= xmlns:xsi= instance xmlns:p= xmlns:context= xmlns:mvc= xsi:schemaLocation= mvc xsd beans xsd context xsd > <bean id= userService class= spring service UserService ></bean></beans> 三 添加web请求入口 <%@ page language= java contentType= text/; charset=UTF pageEncoding= UTF %><!DOCTYPE PUBLIC //W C//DTD HTML Transitional//EN ><><head><meta equiv= Content Type content= text/; charset=UTF ><title>LOGIN</title></head><body> <form action= login do method= post > 用户名 <input type= text name= username id= username /> <br> 密码 <input type= text name= password id= password /> <br> <input type= submit value= 提交 /> </form></body></> 我的是login do注意 不是/login do 四 添加HandlerMapping <! 定义映射 > <bean id= handlerMapping class= springframework web servlet handler BeanNameUrlHandlerMapping ></bean> 采用的是BeanNameUrlHandlerMapping 这是Springmvc默认的 也可以不配置 要求是 需要保证视图模板请求路径与容器中的HandlerBeanName一致 五 实现对应的Controller并添加到配置文件中 LoginController package ntroller;import javax servlet HttpServletRequest;import javax servlet HttpServletResponse;import mons logging Log;import mons logging LogFactory;import springframework web servlet ModelAndView;import springframework web servlet mvc AbstractController;import spring service UserService;public class LoginController extends AbstractController protected static Log log = LogFactory getLog(LoginController class) private UserService userService; public UserService getUserService() return userService; public void setUserService(UserService userService) this userService = userService; @Override protected ModelAndView handleRequestInternal(HttpServletRequest request HttpServletResponse response) throws Exception ModelAndView mv = new ModelAndView() boolean isSuccess = userService login(request getParameter( username ) request getParameter( password )) System out println(isSuccess) mv addObject( login isSuccess) if (isSuccess) mv setViewName( success ) else mv setViewName( failed ) System out println(mv getViewName()) return mv; 配置文件 <! 定义控制器 > <bean name= /login do class= ntroller LoginController > <property name= userService ref= userService ></property> </bean> 注意 我请求路径是 login do 所以过根据BeanNameUrlHandlerMapping 所以配置文件中的也是 /login do 如果请求路径是 /login do 将会出现 错误 六 添加视图解析器 <! 定义ViewReSover > <bean id= viewResolver class= springframework web servlet view InternalResourceViewResolver > <property name= prefix value= /WEB INF/views/ ></property> <property name= suffix value= jsp ></property> </bean> 七 实现相应视图 <%@ page language= java contentType= text/; charset=UTF pageEncoding= UTF %><><head><meta equiv= Content Type content= text/; charset=UTF ><title>Insert title here</title></head><body>Hello Spring MVC<br>欢迎$login登录成功</body></> 到此一个简单的Springmvc项目就搭建成功了 不过要注意的是 这七个步骤并不是一定要按照这个顺序 顺序可以有变动 但是开发过程中 记住这七个步骤 思路将会更加清晰 cha138/Article/program/Java/hx/201311/25579相关参考
Portlet开发入门实例 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 原生Portlet开发
个人考勤软件开发实例 作者:YangLanGuang CAttendanceDlgdlg;之后立即把这个对象的指针信息存入CWinApp::m_pM
建议是有一点点是一点点基础的人又没有hibernate基础和经验的人比较适合(所谓一点点基础是最起码不要我介绍一些配置文件的什么的)注意我用的JDBC驱动inettdsTdsDriver 大
JSP开发的安全编程实例详细解析 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! JavaServ
Biztalk开发之架构和实例的验证 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 如果使用的输
同Java一样简单!VB.NET多线程开发实例 以下文字资料是由(历史新知网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! VBNET
怎样利用Hibernate开发Blog实例分析 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 开
SpringMVC的核心原理 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 今天我们来谈谈关于S
通过实例看VCL组件开发全过程 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在这篇文章中我们将
.net开发绑定到LINQ查询的结果实例 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 本示例演