Spring4

    官网

    Let's build a better Enterprise.
    我们共同来构建更好的企业应用。
    Spring helps development team severywherebuildsimple,portable,fastandflexibleJVM-basedsystemsandapplications.Spring
    帮助全世界的开发团队构建简单、便携、快速和灵活的基于JVM的系统和应用。

    Spring由20多个模块组成,它们可以分为核心容器(Core Container)、数据访问/集成(Data Access/Integration)、Web、面向切面编程(AOP, Aspect Oriented Programming)、设备(Instrumentation)、消息发送(Messaging)和测试(Test)。

    截止本帖发布(2016.01.21),Spring最新版本为4.2.4,对于使用过c# mvc4的,那SpringMVC比struts真的是好用太多,虽然本人最开始接触的是struts,不过我更喜欢SpringMVC。那我们就用最新版开始使用吧,后期还会陆续在此基础上继承其他框架。本人一般都会直接给出干货,不多说,没没人愿意看太多说明。

    本人的开发环境:
        Eclipse:Java EE IDE for Web Developers. Version: Mars.1 Release (4.5.1)
        JDK:jdk1.8.0_72
        Tomcat:8.0.26
        Mysql Server:5.5 

     使用Maven方式搭建工程集成Spring+Hibernate请见文尾的更多链接。

    一、jar包

    其实现在最方便的就是用maven插件,使用起来非常方便,不过这里,我们还是以最原始的方式搭建工程,首先要下载相关jar包,Spring官网:http://spring.io/,如果嫌找下载地址麻烦,就直接访问 这个 吧...,这里能下载几乎所有Spring版本的jar包、源码和说明文档。我们需要这些jar包:
    jar包 

    拷贝到WebContent/WEB-INF/lib(这是eclipse,myeclipse有差异)目录下,之后jar会被自动加载。

    二、配置Spring

    1、配置web.xml (WebContent/WEB-INF)

    这里,我吧配置都集中放到一个配置文件里面(applicationContext.xml)。设置Spring为容器初始化监听器:

  <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:applicationContext.xml</param-value>
    </context-param>

    2、配置applicationContext.xml

    开启IOC注解扫描:

<context:component-scan base-package="com.anxpp.demo" />

    三、配置SpringMVC

    1、配置web.xml

    url-pattern 为访问时候的后缀,目前常见有.do和.action(配置为*.do和*.action),可以自定义,能起一定过滤作用,但是本人喜欢用/*,即没有后缀,具体看大家喜好:

  <servlet>
        <servlet-name>springmvc</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath*:springmvc-servlet.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>springmvc</servlet-name>
        <url-pattern>/*</url-pattern>
    </servlet-mapping>

    2、配置applicationContext.xml

  <!-- 开启MVC注解扫描 -->
    <mvc:annotation-driven />
    <!-- 以下为视图映射配置 -->
    <bean
        class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/WEB-INF/views/" />
        <property name="suffix" value=".html" />
    </bean>

     好了,配置文件就此配置完成。

     四、编写测试代码

    测试代码主要是controller、service和dao(典型的三层)。

    1、dao层

    dao层一般是底层数据交互的,通常是数据库的访问,这里只是为了演示Spring的项目搭建,就不访问数据库了(后期集成hibernate就会详细说)。

    dao:

public interface DemoDao {
    String test();
}

    daoImpl:

//注意配置好注解
@Repository
public class DemoDaoImpl implements DemoDao {
    @Override
    public String test() {
        return "hello word!";
    }
}

    2、service层

    service:

public interface DemoService {
    String test();
}

    serviceImpl:

//注意注解的配置
@Service
public class DemoServiceImpl implements DemoService {
    @Autowired
    DemoDao demoDao;
    @Override
    public String test() {
        return demoDao.test();
    }
}

    3、controller层:

//注意配置注解
@Controller
//下面的注解是访问路径
@RequestMapping("/")
public class DemoController {
    @Autowired
    DemoService demoService;
    @RequestMapping("/test")
    //不返回网页,直接返回字符串
    @ResponseBody
    public String test(){
        return demoService.test();
    }
    //访问路径 父路径和子路径都是“/”的时候,就是项目访问的初始路径了
    @RequestMapping("/")
    public String index(){
        //这里会返回配置的网页路径下名为的“index”的网页
        return "index";
    }
}

    4、 网页

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Spring4</title>
</head>
<body>
    <H1>Hello Word!</H1>
</body>
</html>

    OK!配置和代码都完成了。

    五、测试

    运行项目并访问主路径:

    s

    加上controller中的路径:

    s2

    六、下载

    整个框架已经完成,并运行测试通过,附上源码:Spring4mvcDemo

    后续会持续更新其他框架最新稳定版本的集成并附上源码。

    七、更上一层

    1、Eclipse中使用Maven创建基本的web项目

    2、Maven的Web工程集成Spring4

    3、Spring4MVC的Maven工程集成Hibernate5