力所能及之springmvc环境搭建

小狼从12年学习java开始,就听老师说了若干springmvc的高大上,可是人家就吊你胃口,死活不给你讲。当然,小狼不是盈利机构,不需要赶时间,这个该讲,那个不该讲的。今天,小狼就说说springmvc的环境搭建。

开发环境:myeclipse8.6  spring4.0

开发需要的jar文件:      

                                             技术分享

项目结构:

                                             技术分享

web.xml配置:

   

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" 
	xmlns="http://java.sun.com/xml/ns/javaee" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
   <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>*.zcy</url-pattern>
	</servlet-mapping>
	  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>
springMVC-servlet.xml 配置:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:mvc="http://www.springframework.org/schema/mvc" 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
          http://www.springframework.org/schema/mvc 
        http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd">
	
	<context:component-scan base-package="qh.zcy.controller"></context:component-scan>
	<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" p:prefix="/" p:suffix=".jsp"></bean>
</beans>

控制器 Login.java 配置:

package qh.zcy.controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class Login {

	@RequestMapping("/login")
	public String login(String username,String password,Model model){
		System.out.println("username="+username+",password="+password);
		if(username.equalsIgnoreCase("zcy")){
			
			model.addAttribute("username", username);
		    return "ok";
		}else{
			return "no";
		}
	}
	
	
}

先说web.xml:只要的url上以.zcy为后缀访问服务器,就把这个请求交给org.springframework.web.servlet.DispatcherServlet对象来处理。上面的代码将org.springframework.web.servlet.DispatcherServlet设置别名为springMVC,而springmvc还要在项目WEB-INF文件夹中找springMVC-servlet.xml配置文件,所有的bean和相关组件都定义在该springMVC-servlet.xml中。通过org.springframework.web.servlet.DispatcherServlet可以将request请求发送给不同的组件


再说springMVC-servlet.xml:<context:component-scan base-package="qh.zcy.controller"></context:component-scan>这句话是说在下列包下寻找注释,并解析

<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" p:prefix="/" p:suffix=".jsp"></bean>配置在controller类中的return “ok”;

这句话的ok前面路径是跟路径,后缀加上.jsp


接着说Login.java 这个controller类,springmvc也像struts2一样支持pojo,也就是说,不需要实现任何接口或类,只需要在类中使用@Controller  等注释即可,这样即很好的实现了松耦合。大家注意到,在login.java 类中,有一行是这样写的:public String login(String username,String password,Model model)  model的作用相当于往request中放置数据,大家或许发现了在其中,小狼直接写了String username,String password,并且成功取值,由此可以发现,url中同名的参数将要自动传递给控制层方法中同名的参数,并且不需要@RequestParam("username")注解

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。