SSM在普通Java类里使用service、dao等

原文参考:http://blog.csdn.net/tianyaleixiaowu/article/details/54630383
1.在项目中定义一个工具类  SpringTool :
import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.stereotype.Component;

/** 
 * 通过该类即可在普通工具类里获取spring管理的bean 
 * 注意:需要在spring-mybatis.xml 添加   <bean class="com.gx.util.SpringTool"/>
 * @author wolf 
 * http://blog.csdn.net/tianyaleixiaowu/article/details/54630383
 */  
@Component
public final  class SpringTool implements ApplicationContextAware {  
    private static ApplicationContext applicationContext = null;  
  
    @Override  
    public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {  
        if (SpringTool.applicationContext == null) {  
            SpringTool.applicationContext = applicationContext;  
            //System.out.println( "========ApplicationContext配置成功,在普通类可以通过调用ToolSpring.getAppContext()获取applicationContext对象,applicationContext="+ applicationContext + "========");  
        }  
    }  
  
    public static ApplicationContext getApplicationContext() {  
        return applicationContext;  
    }  
  
    public static Object getBean(String name) {  
        return getApplicationContext().getBean(name);  
    }

	public static <T>T getBean(Class<T> clazz) {
		// TODO Auto-generated method stub
		return getApplicationContext().getBean(clazz);
	}  
	
}
2. 配置文件 :在spring-mybatis.xml 添加   <bean class="com.liner.util.SpringTool"/>
3.普通类中调用:
public class ServiceTest {

	public  List<UserVo> getData(){
		
		IUserService articleService = SpringTool.getBean(IUserService.class);  
		List<UserVo> list = articleService.findUserVoAll();  
        
		return list;
	}
	
}







  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SSM(Spring + Spring MVC + MyBatis)框架中,Controller、ServiceDAO的执行过程如下: 1. Controller层接收请求:当用户发送一个请求时,请求首先通过DispatcherServlet(前端控制器)进入Spring MVC框架。DispatcherServlet根据请求的URL和配置的路径映射,将请求转发给相应的Controller。 2. Controller处理请求:Controller中的方法使用注解(如@RequestMapping)来映射特定的URL,并处理请求。在Controller方法中,可以通过参数注解(如@PathVariable、@RequestParam)获取请求参数,并调用Service层的方法来处理业务逻辑。 3. Service层处理业务逻辑:Service层是应用程序的业务逻辑层,它接收Controller传递的请求,并通过调用DAO层提供的方法来访问数据库。在Service层,可以进行事务管理、数据转换、复杂的业务计算等任务。 4. DAO层访问数据库:DAO层负责与数据库交互,封装了对数据库的增删改查等基本操作。DAO层通过MyBatis框架提供的ORM(对象关系映射)功能,将数据库表映射为Java对象,通过SQL语句执行数据库操作。 5. 数据库操作完成后,数据返回给Service层:DAO层执行完数据库操作后,将查询结果或操作结果返回给Service层。 6. Service层将结果返回给Controller:Service层接收到DAO层返回的结果后,可以对结果进行处理、封装,然后将结果返回给Controller层。 7. Controller返回响应:Controller接收到Service层返回的结果后,可以进行一些额外的处理(如数据转换、视图解析等),然后将结果返回给前端,生成响应。 总结来说,Controller负责接收请求和返回响应,Service负责处理业务逻辑,DAO负责与数据库交互。它们之间通过调用方法和传递数据来完成整个请求处理流程。这样的分层架构可以提高代码的可维护性、可测试性和可扩展性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值