spring基于xml配置入门案例
spring入门案例
- 基于maven项目
1、准备jar包
<!-- https://mvnrepository.com/artifact/org.springframework/spring-context -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.2.6.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-core -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>5.2.6.RELEASE</version>
</dependency>
2、编写实体类
package com.yl.bean;
import java.io.Serializable;
/**
* 用户实体类
*/
public class User implements Serializable {
private Integer id;
private String username;
private String password;
public User() {
}
public User(Integer id, String username, String password) {
this.id = id;
this.username = username;
this.password = password;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
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;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", username='" + username + '\'' +
", password='" + password + '\'' +
'}';
}
}
3、编写业务层
- 业务层接口
package com.yl.service;
/**
* 用户业务层接口
*/
public interface IUserService {
/**
* 查询用户
*/
public void queryUser();
}
- 业务层实现类
package com.yl.service.impl;
import com.yl.dao.IUserDao;
import com.yl.dao.impl.IUserDaoImpl;
import com.yl.service.IUserService;
/**
* 用户业务层接口实现类
*/
public class IUserServiceImpl implements IUserService {
//用户持久层对象
private IUserDao iUserDao;
//使用set方法注入依赖
public void setiUserDao(IUserDao iUserDao) {
this.iUserDao = iUserDao;
}
/**
* 查询用户
*/
@Override
public void queryUser() {
iUserDao.queryUser();
}
}
4、编写持久层
- 持久层接口
package com.yl.dao;
import java.util.List;
/**
* 用户持久层接口
*/
public interface IUserDao {
/**
* 查询用户
*/
public void queryUser();
}
- 持久层实现类
package com.yl.dao.impl;
import com.yl.dao.IUserDao;
/**
* 用户持久层接口实现类
*/
public class IUserDaoImpl implements IUserDao {
/**
* 查询用户
*/
@Override
public void queryUser() {
System.out.println("查询成功");
}
}
5、编写配置文件(bean.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"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<!--业务层-->
<bean id="iUserService" class="com.yl.service.impl.IUserServiceImpl">
<property name="iUserDao" ref="iUserDao"></property>
</bean>
<!--持久层-->
<bean id="iUserDao" class="com.yl.dao.impl.IUserDaoImpl"></bean>
</beans>
6、模拟表现层(测试)
package com.yl.ui;
import com.yl.service.IUserService;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
/**
* 表现层
*/
public class UI {
public static void main(String[] args) {
//获取spring容器
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("bean.xml");
//获取业务层对象
IUserService userService= (IUserService) applicationContext.getBean("iUserService");
//查询用户
userService.queryUser();
}
}
记得快乐
分类:
Spring
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构