Spring基础之一:第一个Spring
来源:互联网 发布:淘宝网儿童棉服 编辑:程序博客网 时间:2024/04/30 11:41
一:导入Spring时遇到的org/apache/commons/logging/LogFactory的问题
原因是Myeclipse里缺少commons-logging.jar 这个包,
CSDN上的下载地址:http://download.csdn.net/detail/ruantao1989/4666059
二:解压spring时,rar报错:“路径和文件名总长度不能超过260字符”
我试了好几次,这个要先把压缩包里边的 根文件夹改名,再解压出来就行了
就是:打开压缩包,看到rar里第一个文件夹改名成“1”,再解压出来就行了
三:从serviceTest开始分析Spring执行过程
总共需要这么几个文件:
UserService.java :外界执行程序的统一接口
UserServiceTest.java :此接口的测试
IUserDAO.java :方法接口
UserDAOImpl.java :被代理的、具体实现
User.java :就是个VO
springBeans.xml :这个是Spring动态代理的xml配置
整个结构和DAO差不多,我前一篇博文分析得很细了,这就说说不一样的理解:
1.先看test的执行顺序
@Testpublic void testAdd() throws Exception {//ApplicationContext代替beanFactoryApplicationContext ctx = new ClassPathXmlApplicationContext("springBeans.xml");//相当于从代理类得到具体实例,由xml决定怎么选择类实例化UserService service = (UserService)ctx.getBean("userService01");User u = new User();//手动组装User实例 uu.setUsername("张三");u.setPassword("123456");service.add(u);//把组装好的u传给xml实例化的service}
2.springBeans.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-2.5.xsd"> <!-- 相当于调用了无参构造,实例化了u1对象--> <bean id="u1" class="com.rt.springdemo.dao.impl.UserDAOImpl"></bean> <bean id="userService01" class="com.rt.springdemo.service.UserService"> <!-- property这句就相当于调用 set'UserDao'(u1)--> <property name="userDAO" ref="u1" /> </bean> </beans>
3.server
package com.rt.springdemo.service;import com.rt.springdemo.dao.IUserDAO;import com.rt.springdemo.model.User;public class UserService {private IUserDAO userDAO; //xml中,"u1"对应class="com.rt.springdemo.dao.impl.UserDAOImpl",将注入在此public void add(User user) {//test调用这个add方法userDAO.save(user);}public IUserDAO getUserDAO() {return userDAO;}public void setUserDAO(IUserDAO userDAO) {//xml中调用的方法this.userDAO = userDAO;}}
4.impl具体执行
public interface IUserDAO {public void save(User user);//接口里就这一个方法}
package com.rt.springdemo.dao.impl;import com.rt.springdemo.dao.IUserDAO;import com.rt.springdemo.model.User;public class UserDAOImpl implements IUserDAO {public void save(User user) {//Hibernate、JDBC等.....System.out.println("user saved!");}}
- Spring基础之一:第一个Spring
- 第一个spring实例
- 第一个spring例子
- 第一个Spring程序
- Spring第一个程序
- 第一个spring实例
- Spring第一个案例
- 第一个spring实例
- Spring第一个案例
- Spring第一个案例
- 第一个spring
- 第一个spring加强
- 第一个spring程序
- 第一个spring程序
- 第一个Spring程序
- 第一个spring实例
- Spring第一个程序
- 第一个Spring
- cscope
- 单链表的转置
- Win7简单方法让笔记本变身无线热点,共享手机上网
- 编辑距离,最长公共子序列,最长公共子串,最长递增子序列
- 遇到了linux下无法进入图形用户界面
- Spring基础之一:第一个Spring
- 如果我们真的分手了:最新网友原创伤感空间日志
- 李开复的时间管理建议
- 天天记录 - Eclipse导入Android 4.1.2源码工程
- POJ1423,Big Number,同hdu1018
- POJ1694,An Old Stone Game,读懂题目+dfs
- 看谭浩强C++的感想
- 谢谢你,勾引我老公!这文章看得心酸
- 从非Exchange 系统迁移邮件数据到Exchange Server!