SpringMVC登录界面实例(包含JDK,Maven,SpringMVC环境搭建)

一、基础知识

1.1、概念

SpringMVC:SpringMVC是基于java实现了webMVC设计模式的请求驱动类型轻量级框架
在这里插入图片描述
在这里插入图片描述

1.2 核心流程:

1、首先用户发送请求——>DispatcherServlet,前端控制器收到请求后自己不进行处理,而是委托给其他的解析器进行处理,作为统一访问点,进行全局的流程控制;
2、DispatcherServlet——>HandlerMapping, HandlerMapping将会把请求映射为HandlerExecutionChain对象(包含一个Handler处理器(页面控制器)对象、多个HandlerInterceptor拦截器)对象,通过这种策略模式,很容易添加新的映射策略;
3、DispatcherServlet——>HandlerAdapter,HandlerAdapter将会把处理器包装为适配器,从而支持多种类型的处理器,即适配器设计模式的应用,从而很容易支持很多类型的处理器;
4、HandlerAdapter——>处理器功能处理方法的调用,HandlerAdapter将会根据适配的结果调用真正的处理器的功能处理方法,完成功能处理;并返回一个ModelAndView对象(包含模型数据、逻辑视图名);
5、ModelAndView的逻辑视图名——> ViewResolver, ViewResolver将把逻辑视图名解析为具体的View,通过这种策略模式,很容易更换其他视图技术;
6、View——>渲染,View会根据传进来的Model模型数据进行渲染,此处的Model实际是一个Map数据结构,因此很容易支持其他视图技术;
7、返回控制权给DispatcherServlet,由DispatcherServlet返回响应给用户,到此一个流程结束。

二、环境搭建

2.1 JDK下载及配置

(1)下载jdk并解压(注:jdk8u261无法创建maven project)
在这里插入图片描述
(2)配置环境变量
• 右键我的电脑——属性——高级——配置环境变量
• 新建系统变量JAVA_HOME(地址为jdk解压地址)
在这里插入图片描述
• 在CLASSPATH中进行配置
在这里插入图片描述
• 在Path中进行配置(放在最前面)
在这里插入图片描述
(3)使用cmd查看jdk配置情况
在这里插入图片描述

2.2 Eclipse下载及配置

2.3 Maven下载及配置

(1)下载并解压
在这里插入图片描述
(2)配置环境变量
• MAVEN_HOME:

在这里插入图片描述
• Path:
在这里插入图片描述
(3)查看配置情况
在这里插入图片描述
(4)配置镜像
修改maven文件夹中conf中的setting.xml文件(右键编辑),将原本的在<mirrors></mirrors>代码替换为阿里云镜像

<mirrors>
     <mirror>
       <id>alimaven</id>
       <name>aliyun maven</name>
       <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
       <mirrorOf>central</mirrorOf>        
     </mirror>
   </mirrors>

(5)设置eclipse中的maven
• Windows——preference——maven——Installations——选择maven地址——勾选并apply
在这里插入图片描述
• Windows——preference——maven——User Setting——Global Setting中选择setting.xml地址——apply
在这里插入图片描述
(6)查看Maven是否成功配置在Eclipse中
• Windows——Show Views——Other——Maven——Maven Repositories
在这里插入图片描述

2.4 Tomcat下载及配置

(1)下载并解压Tomcat7.0
在这里插入图片描述(2)在Eclipse中配置Tomcat
• 打开Windows——Preferences——Server——Runtime Environments

在这里插入图片描述
• 点击add,选择Tomcat版本,并且点击browser选择Tomcat解压地址
在这里插入图片描述
在这里插入图片描述

2.5 构建SpringMVC框架

(1)新建maven project,选择webapp,填写相关项目信息
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
(2)导入jar包(在pom.xml文件中写入依赖)——此步骤可以自动导入spring所需jar包

<dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-webmvc</artifactId>
      <version>3.2.17.RELEASE</version>
    </dependency>

在这里插入图片描述

(3)在pom.xml中引入servlet依赖和tomcat7引用插件

<dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
 
  <!-- 引入javax.servlet依赖 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
<scope>provided</scope>
</dependency>
 
  <!-- 引入spring的jar包 -->
     <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-webmvc</artifactId>
      <version>3.2.17.RELEASE</version>
    </dependency>
 
  </dependencies>
 
 
<!-- 项目名称 -->
<build>
<finalName>SpringMVC_login</finalName>
<plugins>
<!-- 资源文件拷贝插件 -->
<!-- tomcat7插件 maven 命令 tomcat7:run 启动项目 -->
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<port>8080</port>
<path>/</path>
</configuration>
</plugin>
 
</plugins>
</build>

(4)引入Tomcat7到项目中
• 右键项目——构建路径——配置构建路径
在这里插入图片描述
在这里插入图片描述

三、实现登录界面功能

3.1 创建index.jsp,success.jsp,error.jsp文件

3.2 编辑web.xml文件

此文件的作用是设置映射和过滤器,添加对spring的依赖

<context-param><!-- 创建上下文 -->
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/dispatcher-servlet.xml</param-value>
</context-param>
 
<listener><!-- 创建监听器 -->
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
 
<servlet><!-- DispatcherServlet 通过handlerMapping将请求映射到处理器-->
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value></param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>*.action</url-pattern><!-- 过滤所有action文件 -->
</servlet-mapping>

3.3 创建dispatcher-servlet.xml文件

该文件与web.xml文件中的映射对应,作用是配置视图解析器

<!-- 寻找某包下面所有以annotation进行标识的类 -->
<!-- 在xml配置了这个标签后,spring可以自动去扫描base-pack下面或者子包下面的java文件,
如果扫描到有@Component @Controller@Service等这些注解的类,则把这些类注册为bean -->
<context:component-scan base-package="com.tjetc.action"/>
 
<!-- 开启annotation的驱动 -->
<mvc:annotation-driven/>
 
<!-- 配置视图解析器, 指定控制器页面转向的目录及文件后缀。 -->
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/"/><!-- 前缀 -->
<property name="suffix" value=".jsp"/><!-- 后缀,匹配扩展名 -->
</bean>

3.4 创建实体类UserInfo.java

此实体类中包含userId,username,password以及它们的setter、getter函数

3.5 创建Spring控制器和视图类UserAction.java

//创建模型对象
@RequestMapping(value="/login",method=RequestMethod.POST)//http://localhost:8080/login/user/login
public ModelAndView login(UserInfo userInfo,HttpSession session) {
ModelAndView mav=new ModelAndView();
System.out.println(userInfo.getUsername()+"======"+userInfo.getPassword());
if("admin".equals(userInfo.getUsername())&&"123456".equals(userInfo.getPassword())) {
session.setAttribute("userInfo",userInfo);
//设置视图名称
mav.setViewName("success");
}else {
mav.setViewName("error");
}
return mav;
}

3.6 UserAction.java中的参数解释

(1)@Controller注解:Spring标注前置控制器的方式(在web控制层上的annotation)
(2)@RequestMapping注解:映射web请求到具体要操作的类或者方法上面(配置模块名称,作为路径的一个部分)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
(3)@RequestParam注解:请求指定参数
(4)ModelAndView类:模型对象实例化,可以用来指定具体的视图
在这里插入图片描述
注:由于我们在dispatcher.xml配置了视图的前后缀,所以在这里只需要写出视图的具体名称即可,其具体指定的就是:前缀+视图名称+后缀,即完整的视图路径/success.jsp,也就是所要展示的视图的位置

3.7 将项目部署到Tomcat服务器运行

(1)右键项目——运行方式——maven build…——tomcat7:run——应用——运行
在这里插入图片描述
(2)网页中地址栏输入http://localhost:8080/

四、遇到问题

4.1 创建项目失败

在这里插入图片描述
原因:jdk1.8.0_261版本(8u261)不支持相应操作
解决办法:换一个jdk,我用的是jdk1.8.0_181(8u181)

4.2 cmd报错:Error: could not open `C:\ProgramFiles\Java\jre1.8.0_121\lib\amd64\jvm.cfg’

原因:其他版本的jdk注册表未删除
解决办法:打开注册表编辑器,删除其他版本的jdk注册表
在这里插入图片描述
在这里插入图片描述

4.3 cmd报错

在这里插入图片描述
解决方法:重装jdk

4.4 cmd报错

在这里插入图片描述
解决方法:删除以下路径中的java.exe,javaw.exe,javaws.exe三个文件
在这里插入图片描述

4.5 cmd报错


原因:jdk的环境变量配置错误
解决方法:重新配置环境变量(PATH和CLASSPATH)

4.6 创建项目报错

在这里插入图片描述
原因:maven中央仓库下载插件包失败就会报错
解决方法:配置maven的镜像,见本文2.3

4.7 servlet、tomcat、jdk对应关系错误

在这里插入图片描述

4.8 运行报错

在这里插入图片描述
原因:tomcat版本没有切换。我配置的是tomcat7,但运行仍是tomcat6.0.29
在这里插入图片描述
解决方法:在pom.xml中写下插件,用tomcat7:run启动

<plugins>
    <!-- 资源文件拷贝插件 -->
<!-- tomcat7插件 maven 命令 tomcat7:run 启动项目 -->
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<port>8080</port>
<path>/</path>
</configuration>
</plugin>
 
</plugins>

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值