Spring3.0 demo (注解自动注入)

这个demo是maven工程,目录结构如下

Spring3.0 demo (注解自动注入)

 

pom.xml maven依赖

。。。。。省略

       <dependency>

            <groupId>org.springframework</groupId>

            <artifactId>spring-context</artifactId>

            <version>3.0.7.RELEASE</version>

        </dependency>



        <dependency>

            <groupId>javax.servlet</groupId>

            <artifactId>servlet-api</artifactId>

            <version>2.5</version>

        </dependency>



        <dependency>

            <groupId>org.springframework</groupId>

            <artifactId>spring-webmvc</artifactId>

            <version>3.0.3.RELEASE</version>

        </dependency>

        <dependency>

            <groupId>org.springframework</groupId>

            <artifactId>spring-web</artifactId>

            <version>3.0.7.RELEASE</version>

        </dependency>

。。。。。省略

 

入口web.xml

<?xml version="1.0" encoding="UTF-8"?>

<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"

    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 

    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">



    <display-name>SpringDemo</display-name>

    <context-param>

        <param-name>contextConfigLocation</param-name>

        <param-value>

               /WEB-INF/applicationContext.xml

          </param-value>

    </context-param>



    <listener>

        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

    </listener>

    <servlet>

        <servlet-name>api</servlet-name>

        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>

        <init-param>

            <param-name>contextConfigLocation</param-name>

            <param-value>/WEB-INF/api-config.xml</param-value>

        </init-param>

        <load-on-startup>1</load-on-startup>

    </servlet>

    <servlet-mapping>

        <servlet-name>api</servlet-name>

        <url-pattern>*.s</url-pattern>

    </servlet-mapping>



    <filter>

        <filter-name>setCharacterEncoding</filter-name>

        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>

        <init-param>

            <param-name>encoding</param-name>

            <param-value>UTF-8</param-value>

        </init-param>

        <init-param>

            <param-name>forceEncoding</param-name>

            <param-value>true</param-value>

        </init-param>

    </filter>

    <filter-mapping>

        <filter-name>setCharacterEncoding</filter-name>

        <url-pattern>/*</url-pattern>

    </filter-mapping>

    <welcome-file-list>

        <welcome-file>index.html</welcome-file>

    </welcome-file-list>

</web-app>

    

 

分发bean配置api-config.xml

<beans xmlns="http://www.springframework.org/schema/beans"

    xmlns:task="http://www.springframework.org/schema/task" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

    xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"

    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/aop http://www.springframework.org/schema/aop/spring-aop.xsd

                        http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd

                        http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-3.0.xsd">



    <context:component-scan base-package="push" />

    <!-- 将自动探测包中有控制器注释的类-->

</beans>

 

处理action的java类

package push;



import java.io.IOException;



import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;



import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RequestMethod;

import org.springframework.web.bind.annotation.RequestParam;



/**

 * @author yanghh

 */



@Controller

@RequestMapping("/api")

public class ApiController {



    @RequestMapping(value = "/age.s", method = RequestMethod.GET)

    public void methodAge(HttpServletRequest request, HttpServletResponse response,

            @RequestParam(value="id", required=true) String id) {

        System.out.println(id);

        String json = "{name:'中文',age:23, requestid:"+ id +"}";

        try {

            //response.setContentType("text/html;charset=UTF-8");

            response.getWriter().print(json);

        } catch (IOException e) {

            e.printStackTrace();

        }

    }

}

 打好war包,找个tomcat容器部署下(webapps下),通过  http://localhost:8080/api/age.s?id=1  即可访问

enjoy it~

你可能感兴趣的:(Spring3)