`
weigang.gao
  • 浏览: 488656 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

Spring HelloWorld annotation

 
阅读更多

工程的目录结构以及所需的jar包如下:


 

1.beans.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xmlns:context="http://www.springframework.org/schema/context"
     xsi:schemaLocation="http://www.springframework.org/schema/beans
         http://www.springframework.org/schema/beans/spring-beans.xsd
         http://www.springframework.org/schema/context
         http://www.springframework.org/schema/context/spring-context.xsd">

   <!-- The implicitly registered post-processors include AutowiredAnnotationBeanPostProcessor, CommonAnnotationBeanPostProcessor,PersistenceAnnotationBeanPostProcessor, as well as the aforementioned RequiredAnnotationBeanPostProcessor.-->
   <context:annotation-config/>
   
   <bean name="userDao1" class="com.bjsxt.dao.impl.UserDAOImpl"></bean>
   <bean name="userDao2" class="com.bjsxt.dao.impl.UserDAOImpl"></bean>
   <bean name="userService" class="com.bjsxt.service.UserService"></bean>

</beans>

 

2.接口UserDao

package com.bjsxt.dao;
import com.bjsxt.model.User;
public interface UserDAO {
	public void save(User user);
}

 

3.接口的实现UserDaoImpl

package com.bjsxt.dao.impl;

import com.bjsxt.dao.UserDAO;
import com.bjsxt.model.User;

public class UserDAOImpl implements UserDAO {

	public void save(User user) {
        System.out.println("test--------"+user.getUsername());
		System.out.println("user saved!");
	}
}

 

4.编写数据传输User类

package com.bjsxt.model;

public class User {
	private String username;
	private String password;
	public String getUsername() {
		return username;
	}
	public void setUsername(String username) {
		this.username = username;
	}
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
}

 

5.UserService

package com.bjsxt.service;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;

import com.bjsxt.dao.UserDAO;
import com.bjsxt.model.User;

public class UserService {
	private UserDAO userDAO;  
	public void add(User user) {
		userDAO.save(user);
	}
	
	
	public UserDAO getUserDAO() {
		return userDAO;
	}
	
  /*首先按名称来注入,由于没有名为"userDAO"的bean。所以采用类型来注入,但是com.bjsxt.dao.UserDAO类型的bean有2个,所以会报错。
   *处理:搭配@Qualifier来使用,指定注入userDao1,userDao2中那个bean
   */
	@Autowired  
	@Qualifier("userDao2") //指定注入userDao2
	public void setUserDAO(UserDAO userDAO) {
		this.userDAO = userDAO;
	}
}

 

6.编写测试类UserServiceTest

package com.bjsxt.service;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.bjsxt.model.User;

public class UserServiceTest {

	@Test
	public void testAdd() {
		/**ApplicationContext是建立在BeanFactory之上的,BeanFactory它只是完成了Bean工厂的一些功能,像Bean的声明周期它都处理不了。而ApplicationContext除了能完成BeanFactory所有的功能之外,还能够完成 一些其他的附加的功能,比如说bean的声明的周期。
		*/
		ApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml");

		UserService service = (UserService)ctx.getBean("userService");

		User u = new User();
		u.setUsername("zhangsan");
		u.setPassword("gaoweigang");
		service.add(u);
	}

}

 

  • 大小: 18.9 KB
分享到:
评论

相关推荐

    spring-security-helloworld-annotation

    本文将深入探讨一个名为"spring-security-helloworld-annotation"的示例,该示例展示了如何使用注解来配置Spring Security。我们将从基本概念、核心组件到实际应用,全面解析Spring Security的注解使用。 1. **注解...

    Spring MVC HelloWorld Maven实例

    **Spring MVC HelloWorld Maven实例** Spring MVC是Spring框架的一部分,它是一个用于构建Web应用程序的模型-视图-控制器(MVC)架构。在这个实例中,我们将深入理解如何使用Maven构建一个基本的“Hello, World!”...

    spring5.0_mvc_maven项目_HelloWorld实例

    在这个"HelloWorld"实例中,我们将深入探讨如何使用Spring 5.0 MVC和Maven构建一个基本的应用程序。 首先,让我们了解Spring MVC的核心组件: 1. **DispatcherServlet**:它是Spring MVC的前端控制器,负责接收...

    Maven+SpringMVC的入门级HelloWorld实例

    例如,在创建一个简单的HelloWorld项目时,我们会在pom.xml中声明SpringMVC的依赖: ```xml &lt;groupId&gt;org.springframework &lt;artifactId&gt;spring-webmvc &lt;version&gt;5.3.22 ``` **SpringMVC简介** SpringMVC...

    Spring MVC HelloWorld入门例子

    本篇文章将带你通过一个简单的 "HelloWorld" 示例,深入了解 Spring MVC 的基本工作原理和配置过程。 首先,我们来了解一下 Spring MVC 的核心概念: 1. **DispatcherServlet**:这是 Spring MVC 的前端控制器,...

    spring3.0 mvc 注解实现helloworld输出

    在本文中,我们将深入探讨如何使用Spring 3.0 MVC框架通过注解方式实现一个简单的“Hello, World!”输出。Spring MVC是Spring框架的一部分,它为构建基于模型-视图-控制器(MVC)架构的Web应用程序提供了一个强大的...

    Springmvc的helloWorld实例

    **Spring MVC HelloWorld 实例详解** 在Java Web开发中,Spring MVC是一个非常重要的框架,它用于构建灵活、可扩展的Web应用程序。本实例将带你深入理解Spring MVC 4.0的基本用法,通过一个简单的"Hello World"应用...

    基于xml配置的spring mvc Helloworld实例

    在这个基于XML配置的Spring MVC HelloWorld实例中,我们将深入理解如何设置并运行一个基本的Spring MVC项目。 首先,Spring MVC的核心在于DispatcherServlet,它是整个应用的入口点,负责处理所有的HTTP请求。在`...

    spring mvc web demo(helloworld)

    《Spring MVC Web应用初探:HelloWorld实例》 在IT领域,Spring MVC是Java开发者广泛使用的Web应用程序框架,它提供了模型-视图-控制器(MVC)架构模式,便于开发和管理复杂的Web应用。本教程将围绕“spring mvc ...

    spring mvc helloworld

    在本教程中,我们将深入探讨如何实现一个简单的"Hello, World!"应用,从而对Spring MVC有一个基础的认识。 首先,我们需要在项目中引入Spring MVC的依赖。通常,我们会使用Maven或Gradle这样的构建工具来管理依赖。...

    springboot-helloworld

    这个"springboot-helloworld"项目不仅展示了Spring Boot的基本功能,还引入了配置文件的使用和Actuator的监控功能。它是学习和理解Spring Boot如何工作的一个良好起点。通过逐步扩展这个项目,你可以学习到更多关于...

    @Commponent注解HelloWorld示例

    在Spring_Annotation文件中,可能包含了一个名为`HelloWorld`的Java类,它被`@Component`注解标记。还可能有一个配置类,如`AppConfig`,使用`@Configuration`和`@ComponentScan`注解来启动组件扫描。通过运行这个...

    spring3 MVC 入门hello world源码

    &lt;context:component-scan base-package="com.example.helloworld"/&gt; &lt;mvc:annotation-driven/&gt; &lt;bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"&gt; ``` 配置扫描包...

    SpringMVC 3.0 HelloWorld 源码 (Maven)

    在本项目“SpringMVC 3.0 HelloWorld”中,我们将深入探讨如何使用Maven构建一个简单的Spring MVC应用。Maven是一个项目管理和综合工具,它帮助开发者管理依赖、构建项目并遵循标准的开发过程。 首先,我们需要了解...

    springBoot-Test (一) Hello world

    在"springBoot-Test (一) Hello world"这个主题中,我们将探讨SpringBoot的起步过程以及如何实现一个简单的“Hello World”程序。 首先,我们需要在项目中引入SpringBoot的起步依赖(Starter Dependency)。...

    Spring Boot Hello World 入门源代码,直接返回一个http的JSON的输出

    综上所述,"Spring Boot Hello World 入门源代码"演示了如何利用 Spring Boot 快速构建一个返回 JSON 的 Web 服务。这个过程中涉及到的核心概念包括 Spring Boot 框架、RESTful API 设计、HTTP 协议、以及 JSON 数据...

    Spring boot 示例 官方 Demo

    spring-boot-helloWorld:spring-boot的helloWorld版本 spring-boot-mybaits-annotation:注解版本 spring-boot-mybaits-xml:xml配置版本 spring-boot-mybatis-mulidatasource:springboot+mybatis多数据源最简解决...

    SpringMVC------从HelloWorld开始

    让我们从一个简单的"HelloWorld"示例开始,深入了解SpringMVC的工作原理。 首先,创建一个`HelloWorld`控制器是开始任何SpringMVC项目的第一步。在Java中,我们通常会创建一个继承自`org.springframework....

    SpringBoot之HelloWorld的Maven项目(Eclipse)

    **SpringBoot之HelloWorld的Maven项目(Eclipse)** SpringBoot是由Pivotal团队开发的一个框架,旨在简化Spring应用程序的初始搭建以及开发过程。它集成了大量的常用库,如数据访问、安全、Web等,使得开发者可以...

    springmvc-helloworld

    本教程将通过 "springmvc-helloworld" 这个示例项目,帮助你了解如何搭建 SpringMVC 环境以及其工作原理。 ### 一、SpringMVC 架构 SpringMVC 的核心组件包括 DispatcherServlet、Model、ViewResolver 和 ...

Global site tag (gtag.js) - Google Analytics