`

spring初体验

 
阅读更多
一。引入jar包
spring.jar    commons-loggion-1.0.4.jar

二。springIOC,是把一个对象注入到另一个对象。
   处理接口
package com.job.dao;

import com.job.model.User;

public interface UserDAO {
	public void save(User u);
}


  接口实现
package com.job.dao;

import com.job.model.User;

public class UserDAOImpl implements UserDAO{

	@Override
	public void save(User u) {
		System.out.println(u.getUsername()+"---haha!");
	}
}


  服务层
public class UserService {
	
	private UserDAO userDAO;
	
	public void add(User u){
		this.userDAO.save(u);
	}

	public UserDAO getUserDAO() {
		return userDAO;
	}

	public void setUserDAO(UserDAO userDAO) {
		this.userDAO = userDAO;
	}
	
}


  实体类
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;
	}
	
}


  spring的application.xml配置(使用set方法注入)
<?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"
		xmlns:tx="http://www.springframework.org/schema/tx"
		xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
				http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd
				http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">
	
	<bean id="userService" class="com.job.service.UserService" lazy-init="true">
		<!-- 使用setter方法注入对象属性值 -->
		<property name="userDAO" ref="userDAOImpl"></property>
	</bean>

	<bean id="userDAOImpl" class="com.job.dao.UserDAOImpl" lazy-init="true">
	</bean>

</beans>


  测试
public class UserServiceTest {
	@Test
	public void test(){
		ApplicationContext ac =  new ClassPathXmlApplicationContext("applicationContext.xml");
		UserService service = (UserService)ac.getBean("userService");
		User u = new User();
		u.setUsername("me haha  ");
		service.add(u);
		
	}
}

ClassPathXmlApplicationContext方法不写路径,则默认读取项目根路径src下applicationContext.xml文件

测试结果
引用

me haha  ---haha!


-----------------------------------------------------------------
使用构造方法注入属性值
一。在服务层加入构造方法
public class UserService {
	
	private UserDAO userDAO;
	
	public UserService(UserDAO userDAO) {
		super();
		this.userDAO = userDAO;
	}

	public void add(User u){
		this.userDAO.save(u);
	}

	public UserDAO getUserDAO() {
		return userDAO;
	}

	public void setUserDAO(UserDAO userDAO) {
		this.userDAO = userDAO;
	}
	
}



二。配置applicationContext.xml
	<bean id="userService" class="com.job.service.UserService" lazy-init="true">
		<!-- 使用构造方法注入对象属性值 -->
		<constructor-arg  ref="userDAOImpl"></constructor-arg>
	</bean>

	<bean id="userDAOImpl" class="com.job.dao.UserDAOImpl" lazy-init="true">
	</bean>


<bean id="userService" class="com.job.service.UserService" lazy-init="true" scope="prototype">
scope不加,默认为singleton单例。prototype表示以第一个为原型创建一个

<constructor-arg  ref="userDAOImpl" index="0" type="int" value="11" ></constructor-arg>

index表示第几个参数,type表示参数类型,value表示如果是基本类型则转化成对应类型
分享到:
评论

相关推荐

    CH01-Spring初体验.pptx

    搭建Spring开发环境 Bean的常用配置 三种模式实现依赖(以service调用dao举例) 在serivce里面的类创建dao里面类的对象,调用方法 用工厂模式实现,service先通过工厂创建出来的dao,再调用其方法(面向接口编辑)...

    Spring Boot入门初体验

    Boot入门初体验是一门针对初学者准备的课程,讲解了如何一步一步进入Spring?Boot开发,课程采用循序渐进的方式,一个知识点一个知识点的讲解和学习,让初学者不知不觉的掌握各种开发技能,课程包含了主流框架搭建、...

    CXF&spring实例

    3. **服务端java**:"CXF&spring初体验【服务端java】"可能会包含具体的Java代码示例,展示如何在Spring容器中定义服务接口和实现,以及如何利用CXF的注解来声明服务元数据。 客户端的实现则涉及到如何调用服务端的...

    头歌Spring Boot初体验.rar

    "头歌Spring Boot初体验"可能是一个文档,旨在引导初学者入门Spring Boot的世界。下面我们将深入探讨Spring Boot的核心特性和如何开始使用它。 1. **简介** Spring Boot是基于Spring框架构建的应用程序的快速启动...

    Spring For Android初体验

    《Spring for Android初体验》 在移动开发领域,Android开发者通常使用Java或Kotlin进行应用构建,但随着技术的发展,Spring框架也开始涉足Android世界。Spring for Android是Spring.io推出的一个库,旨在帮助...

    spring-security初体验demo

    这个"spring-security初体验demo"很可能是为了帮助初学者理解如何在实际项目中集成和配置Spring Security。下面,我们将深入探讨Spring Security的核心概念、工作原理以及如何通过实践来设置一个简单的示例。 ...

    spring cloud初体验

    Spring Cloud是一个分布框架 Spring Cloud里边包括了目前最新的所有组件共21个

    SpringSecurity初体验之手动配置用户名密码

    此文章是记录博主在学习springsecurity时的笔记 第一步 创建一个SpringBoot工程,勾选上需要的依赖。 第二步 创建一个名为securityconfig的配置类,该类基础了父类WebSecurityConfigurerAdapter(提供用于创建...

    【预习资料】用300行代码手写初体验Spring V1.0版本.docx

    《手写Spring V1.0版本的初体验》 在IT行业中,深入理解框架的内部原理对于提升开发技能至关重要。Spring作为Java领域的主流框架,其设计理念和实现方式一直是开发者们热衷探讨的话题。本预习资料的目标是带领具有1...

    《Spring-Boot入门初体验》-视频教程-示例项目源代码 -SBTest.zip数学建模

    数学建模 《Spring_Boot入门初体验》_视频教程_-_示例项目源代码。_SBTest.zip

    头歌springboot初体验

    通过"头歌springboot初体验.pdf"这份文档,你可能会学习如何创建一个基本的Spring Boot项目,了解Maven或Gradle的配置,编写第一个"Hello, World!"程序,理解自动配置的工作原理,并逐步接触Spring Boot的其他特性。...

    详解SpringBoot+SpringSecurity+jwt整合及初体验

    SpringBoot+SpringSecurity+jwt整合详解 SpringBoot是当前最流行的Java框架之一,它提供了便捷的方式来构建基于Web的应用程序。然而,在构建Web应用程序时,安全性是不可忽视的重要方面。因此,本文将详细介绍如何...

    【预习资料】用300行代码手写初体验Spring V1.0版本.pdf

    《手写Spring V1.0版本:从300行代码理解核心机制》 Spring框架作为Java企业级应用开发中的重要支柱,其设计理念和实现方式一直是开发者深入学习的重点。通过手写Spring V1.0版本的代码,我们可以从实践中更好地...

    聊聊Spring Cloud Cli 初体验

    Spring Cloud CLI 是Spring Cloud生态体系中的一个重要工具,它基于Spring Boot CLI扩展而来,为开发者提供了一种便捷的方式来管理和操作Spring Cloud的各种微服务组件。本文将深入探讨Spring Cloud CLI的使用和功能...

    从入门到高级实战-深度探索SpringSecurity安全框架视频.zip

    02.Spring Security 初体验 03.基于内存定义 Spring Security 用户 04.Spring Security 自定义表单登录 05.Spring Security 登录表单配置细节 06.Spring Security 表单登录源码 07.Spring Security 中的 JSON 交互 ...

    Acegi(四):Acegi初体验及初解剖

    在初体验部分,博主可能会介绍如何设置Acegi以保护一个简单的Spring应用,包括配置Spring XML文件、定义安全拦截器(filter)以及创建用户凭证。 身份验证过程通常涉及用户登录,Acegi支持多种认证方式,如基于表单...

    上面maven工具使用springboot项目初体验的压缩包

    总之,这个压缩包提供了使用Maven和IDEA 2023.3开发Spring Boot应用的初步体验,涵盖了从项目结构、依赖管理、数据库连接到实际业务代码编写和测试的各个环节。对于想要学习或已经在使用Spring Boot的开发者来说,这...

    Spring MVC简单样例

    在"Spring MVC 实战学习系列(一)初体验"中,我们可能首先会接触如何搭建Spring MVC的基本环境。这通常涉及到以下几个步骤: 1. 引入依赖:在项目中添加Spring MVC的依赖,例如在Maven的pom.xml文件中引入spring-...

    Web基础——WebApp之初体验(三)

    在本篇关于“Web基础——WebApp之初体验(三)”的文章中,我们将深入探讨Web应用程序(WebApp)的关键概念和技术,以及它们如何为用户提供便捷的在线体验。WebApp是互联网技术的重要组成部分,它们允许用户在浏览器...

Global site tag (gtag.js) - Google Analytics