专栏首页lgp20151222SSH搭建spring,使用依赖注入的方法

SSH搭建spring,使用依赖注入的方法

配置文件

 1 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 2     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
 3     <modelVersion>4.0.0</modelVersion>
 4     <groupId>com.lgp</groupId>
 5     <artifactId>maven_struts_spring</artifactId>
 6     <packaging>war</packaging>
 7     <version>0.0.1-SNAPSHOT</version>
 8     <name>maven_ssh1 Maven Webapp</name>
 9     <url>http://maven.apache.org</url>
10     <properties>
11         <project.build.sourceEncoding>
12             UTF-8
13         </project.build.sourceEncoding>
14     </properties>
15 
16     <dependencies>
17         <dependency>
18             <groupId>junit</groupId>
19             <artifactId>junit</artifactId>
20             <version>3.8.1</version>
21             <scope>test</scope>
22         </dependency>
23         <!-- https://mvnrepository.com/artifact/commons-logging/commons-logging -->
24         <dependency>
25             <groupId>commons-logging</groupId>
26             <artifactId>commons-logging</artifactId>
27             <version>1.2</version>
28         </dependency>
29 
30         <!-- 添加struts2依赖 -->
31         <dependency>
32             <groupId>org.apache.struts</groupId>
33             <artifactId>struts2-core</artifactId>
34             <version>2.3.31</version>
35         </dependency>
36         <!-- https://mvnrepository.com/artifact/org.apache.struts/struts2-spring-plugin -->
37         <dependency>
38             <groupId>org.apache.struts</groupId>
39             <artifactId>struts2-spring-plugin</artifactId>
40             <version>2.3.31</version>
41         </dependency>
42         <!-- 添加Spring依赖 -->
43         <dependency>
44             <groupId>org.springframework</groupId>
45             <artifactId>spring-core</artifactId>
46             <version>3.1.1.RELEASE</version>
47         </dependency>
48 
49         <dependency>
50             <groupId>org.springframework</groupId>
51             <artifactId>spring-beans</artifactId>
52             <version>3.1.1.RELEASE</version>
53         </dependency>
54 
55         <dependency>
56             <groupId>org.springframework</groupId>
57             <artifactId>spring-context</artifactId>
58             <version>3.1.1.RELEASE</version>
59         </dependency>
60 
61         <dependency>
62             <groupId>org.springframework</groupId>
63             <artifactId>spring-jdbc</artifactId>
64             <version>3.1.1.RELEASE</version>
65         </dependency>
66     </dependencies>
67     <build>
68         <finalName>maven_ssh1</finalName>
69         <plugins>
70             <plugin>
71                 <artifactId>maven-compiler-plugin</artifactId>
72                 <version>2.3.1</version>
73                 <configuration>
74                     <source>1.7</source>
75                     <target>1.7</target>
76                     <encoding>UTF-8</encoding>
77                 </configuration>
78             </plugin>
79             <plugin>
80                 <groupId>org.apache.maven.plugins</groupId>
81                 <artifactId>maven-surefire-plugin</artifactId>
82                 <version>2.12.4</version>
83                 <configuration>
84                     <testFailureIgnore>true</testFailureIgnore>
85                 </configuration>
86             </plugin>
87         </plugins>
88     </build>
89 </project>

pom.xml

网上有很多用junit教你搭的,虽然都能跑,但是如果要实际运行和前台交互,那样是不行的,还要导入我所导入的包。

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <web-app xmlns:web="http://xmlns.jcp.org/xml/ns/javaee">
 3     <display-name>Archetype Created Web Application</display-name>
 4     <filter>
 5         <filter-name>struts2</filter-name>
 6         <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
 7         </filter-class>
 8     </filter>
 9     <filter-mapping>
10         <filter-name>struts2</filter-name>
11         <url-pattern>/*</url-pattern>
12     </filter-mapping>
13     <listener>
14         <listener-class>org.springframework.web.context.ContextLoaderListener
15         </listener-class>
16     </listener>
17     <context-param>
18         <param-name>contextConfigLocation</param-name>
19         <param-value>classpath:applicationContext.xml</param-value>
20     </context-param>
21 </web-app>

 web.xml

则多了sprig的配置,留意<context-param>,自带的web.xml会报错说版本不对,只要把开头的那一坨玩意去掉即可。

其他就是在resource文件夹下的配置文件

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <beans xmlns="http://www.springframework.org/schema/beans"
 3     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"
 4     xmlns:tx="http://www.springframework.org/schema/tx" xmlns:context="http://www.springframework.org/schema/context"
 5     xsi:schemaLocation="
 6      http://www.springframework.org/schema/beans 
 7      http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
 8      http://www.springframework.org/schema/tx 
 9      http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
10      http://www.springframework.org/schema/aop 
11      http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
12      http://www.springframework.org/schema/context
13      http://www.springframework.org/schema/context/spring-context-3.0.xsd">
14     <bean id="userDao" class="com.dao.impl.UserDao"></bean>
15     <bean id="userService" class="com.service.impl.UserService">
16         <property name="userDao" ref="userDao"></property>
17     </bean>
18     <bean id="userAction" class="com.action.UserAction">
19         <property name="userService" ref="userService"></property>
20     </bean>
21 </beans>

 applicationcontext.xml 使用的是依赖注入,这个方法在初学spring的时候,对spring有很好的理解,层层递进,关系明了,当然实际应用通常用注解注入,但是如果我那样写的话,就看不透它的运行轨迹了。

java代码

 1 package com.service.impl;
 2 
 3 import com.dao.IUserDao;
 4 import com.service.IUserService;
 5 
 6 public class UserService implements IUserService {
 7     private IUserDao userDao;
 8 
 9     public void setUserDao(IUserDao userDao) {
10         this.userDao = userDao;
11     }
12 
13     public void add() {
14         System.out.println("UserService.add()");
15         userDao.add();
16     }
17 
18 }
1 package com.service;
2 
3 public interface IUserService {
4     public void add();
5 }
 1 package com.dao.impl;
 2 
 3 import com.dao.IUserDao;
 4 
 5 public class UserDao implements IUserDao{
 6 
 7     public void add() {
 8         System.out.println("UserDao.add()");
 9     }
10 }
1 package com.dao;
2 
3 public interface IUserDao {
4     public void add();
5 }
package com.action;

import com.service.IUserService;

public class UserAction {
    private String name;
    private String pwd;
    private IUserService userService;

    public String add() {
        System.out.println("name--" + this.getName());
        System.out.println("pwd---" + this.getPwd());
        userService.add();
        return "success";
    }

    public void setUserService(IUserService userService) {
        this.userService = userService;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getPwd() {
        return pwd;
    }

    public void setPwd(String pwd) {
        this.pwd = pwd;
    }
}

留意是用接口来实现方法的。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Spring使用webjar

    这玩意很简单,但是我们第一次搞就是搞不成功,为什么呢?因为我们都用的是idea或者eclipse编译。webjar只能在maven上才能打包,所以在使用时,记得...

    ydymz
  • mybatis自动生成

    ydymz
  • 程序包org.junit不存在

    <dependency>             <groupId>junit</groupId>             <artifactId>junit<...

    ydymz
  • 基于SSM框架与Maven的CRUD案例

    将会打包成 jar用作 jar包使用。即常见的本地工程 - Java Project。

    时间静止不是简史
  • 大数据技术之_24_电影推荐系统项目_08_项目总结及补充

    一 数据加载服务1、目标2、步骤二 离线推荐服务2.1 基于统计性算法1、目标2、步骤2.2 基于隐语义模型(LFM)的协同过滤推荐算法(ALS)1、目标2、步...

    黑泽君
  • 本地maven仓库使用及配置

    下载 nexus-2.11.4-01-bundle.zip 解压并运行C:\nexus-2.11.4-01-bundle\nexus-2.11.4-01\bin...

    肖哥哥
  • Neo4j Spatial数据导入

    首先,安装neo4j数据库。我的开发环境是Ubuntu,安装过程参考官网:Neo4j Debian Packages,安装后配置:Post-installati...

    卡尔曼和玻尔兹曼谁曼
  • 使用 Spring Data 以 Redis 作为数据存储来构建应用 - 第 1 部分

    在本文里面,我将介绍 Java 开发者使用 Spring Data 访问 Redis 并执行操作的编程方式。

    大数据弄潮儿
  • spring cloud(学习笔记)高可用注册中心(Eureka)的实现(一)

    最近在学习的时候,发现微服务架构中,假如只有一个注册中心,那这个注册中心挂了可怎么办,这样的系统,既不安全,稳定性也不好,网上和书上找了一会,发现这个sprin...

    Dawnzhang
  • 简单的Apache NiFi操作仪表板(第2部分):Spring Boot

    要访问要在我们的仪表板中显示的数据,我们将使用一些Spring Boot 2.06 Java 8微服务在Hadoop 3.1上调用HDP 3.0中的Apache...

    用户3382876

扫码关注云+社区

领取腾讯云代金券