知识大全 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开发入门实例

Portlet开发入门实例  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  原生Portlet开发

知识大全 个人考勤软件开发实例

  个人考勤软件开发实例    作者:YangLanGuang  CAttendanceDlgdlg;之后立即把这个对象的指针信息存入CWinApp::m_pM

知识大全 开发框架 hibernate3.0 开发实例

  建议是有一点点是一点点基础的人又没有hibernate基础和经验的人比较适合(所谓一点点基础是最起码不要我介绍一些配置文件的什么的)注意我用的JDBC驱动inettdsTdsDriver    大

知识大全 JSP开发的安全编程实例详细解析

JSP开发的安全编程实例详细解析  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  JavaServ

知识大全 Biztalk 开发之 架构和实例的验证

Biztalk开发之架构和实例的验证  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  如果使用的输

知识大全 VB.NET多线程开发实例

同Java一样简单!VB.NET多线程开发实例  以下文字资料是由(历史新知网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  VBNET

知识大全 怎样利用Hibernate开发Blog实例分析

怎样利用Hibernate开发Blog实例分析  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  开

知识大全 SpringMVC 的核心原理

SpringMVC的核心原理  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  今天我们来谈谈关于S

知识大全 通过实例看VCL组件开发全过程

通过实例看VCL组件开发全过程  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  在这篇文章中我们将

知识大全 .net开发绑定到LINQ查询的结果实例

.net开发绑定到LINQ查询的结果实例  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  本示例演