重写Spring MVC WEB 简单入门-登录例子
2017-11-27 15:32
423 查看
一、说明
之前写过一个spring mvc的登录例子,不过是基于sts的,而且不是maven工程,有点落后了(原文地址:Spring MVC Web简单入门实例)。这里放上来一个基于IDEA+maven的例子,更新一下。工作上的工程基本上都可以在这个模板基础上扩展(后面会陆续加入日志、权限管理、数据库访问、前后端分离及基于dubbo的分布式的解决方案)。二、准备工作
首先还是开发环境的搭建,包括:jdk1.7、tomcat7、maven3、IDEA,这里就不再赘述了,网上有很多教程的。三、步骤
1、新建maven工程
选择File->new->project,在弹出的界面选择maven工程,勾选"create from archtype",点击next,如图所示:然后填写group id和artifact id,如图所示:
一路next,然后填写project name,如图所示:
2、添加pom依赖
添加servlet、spring相关的pom依赖,具体见工程源码。添加完依赖后,maven会从仓库里面添加依赖的jar,不用再手动添加jar包了,十分方便。3、web.xml配置
web.xml配置里面最重要的部分就是spring相关的配置,比如启动参数以及spring mvc的注入。<!--启动参数--> <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:applicationContext.xml</param-value> </context-param>
<!--servlet配置,加载spring mvc配置--> <servlet> <servlet-name>DispatcherServlet</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:applicationContext-springmvc.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>DispatcherServlet</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping>
其中,applicationContext.xml和applicationContext-springmvc.xml均放在resource目录下。
4、applicationContext.xml配置
applicationContext.xml可以作为总的配置,如果有多个别的xml配置文件,都可以在applicationContext.xml中进行引入,例如:<import resource="applicationContext-profile.xml" /> <import resource="applicationContext-security.xml"/> <import resource="applicationContext-service.xml"/> <import resource="applicationContext-rocketmq.xml"/> <import resource="dataaccess.xml"/>因为我们的例子很简单,所以里面几乎没什么内容。
5、applicationContext-springmvc.xml
applicationContext-springmvc.xml才是spring mvc相关的配置,主要包括controller的自动发现,消息转换,以及view解析器等等。<!--配置自动扫描bean--> <context:component-scan base-package="com.xxx.demo" /> <mvc:annotation-driven> <mvc:message-converters> <!--返回字符串时转换,防止中文乱码--> <bean class="org.springframework.http.converter.StringHttpMessageConverter"> <property name="supportedMediaTypes"> <list> <value>text/plain;charset=UTF-8</value> <value>text/html;charset=UTF-8</value> </list> </property> </bean> <!--返回JSON时转换--> <bean id="mappingJacksonHttpMessageConverter" class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"> <property name="supportedMediaTypes"> <list> <value>applicaton/json;charset=UTF-8</value> <value>application/x-www-form-urlencoded;charset=UTF-8</value> <value>text/html;charset=UTF-8</value> </list> </property> </bean> </mvc:message-converters> </mvc:annotation-driven> <!--激活自动代理--> <aop:aspectj-autoproxy/> <!--静态资源的请求,就将该请求转由Web应用服务器默认的Servlet处理--> <mvc:default-servlet-handler/> <!--view解析器--> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/views/"/> <property name="suffix" value=".jsp"/> </bean>
6、jsp页面及controller
jsp页面很简单,就一个登录界面,登录失败则显示失败信息,成功则跳转到欢迎页面,大家可以看源码,这里就不放上来了;然后在controller里面处理请求,逻辑很简单,直接上代码:package com.xxx.demo.controllers; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import javax.servlet.http.HttpServletResponse; /** * Created by gameloft9 on 2017/11/27. */ @Controller public class LoginController { public static final String USER_NAME="gameloft9"; public static final String PWD = "123456"; /** * 登录页面入口 * */ @RequestMapping(value = "/index.do", method = RequestMethod.GET) public String index(Model model, HttpServletResponse response){ return "login"; } /** * 登录请求 * */ @RequestMapping(value = "/login.do", method = RequestMethod.POST) public String login(Model model,String name,String pwd){ if(USER_NAME.equalsIgnoreCase(name)&&PWD.equals(pwd)){ model.addAttribute("name",name); return "home"; } model.addAttribute("errInfo","用户名或密码错误!"); return "login"; } }
四、运行结果
1、登录界面:2、输错密码:
3、登录成功:
附注:
源码放在了gitHub和CSDN上面了,可自行下载:github项目地址:https://github.com/gameloft9/maven-spring-mvc-logindemoCSDN下载地址:http://download.csdn.net/download/gameloft9/10134536csdn下载好像不能设置免费了,最低都要2个积分,汗。。。相关文章推荐
- Spring MVC 3 最简单的入门例子
- Spring mvc web 配置 简单例子 (创建Spring mvc web项目)
- Spring MVC Web简单入门实例
- spring mvc构建WEB应用程序入门例子
- spring mvc 简单登录例子
- 最简单易理解的Flex PureMVC入门例子:实现登录
- spring mvc 入门及简单例子
- Spring MVC入门2——一个简单例子
- webpack4 入门最简单的例子介绍
- spring mvc 简单登录例子
- Webpack入门之一:从一个简单例子入门
- webpack入门之简单例子跑起来
- webpack入门之简单例子跑起来
- Android MVP模式理解(附简单登录模块例子)
- Ajax局部刷新---登录简单例子
- AOP入门的简单例子(Spring AOP实现)
- 2015 最简单的 Spring MVC 入门教程
- Apache Rewrite重写模块(一):一个入门的例子
- Caffe 深度学习入门教程 运行caffe自带的两个简单例子
- Dubbo分布式框架入门简单例子(附工程源码)