spring-IOC
导火线 : 看的别人的博客,实现了一下
参考 : http://www.cnblogs.com/LiaoYunChuan/p/8046030.html
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | public class UserDao { public void saveUser(){ System.out.println( "保存用户" ); } } public class UserService { private UserDao userDao = new UserDao(); public void saveUser(){ this .userDao.saveUser(); } } public class TestMain { public static void main(String[] args) { UserService userService = new UserService(); userService.saveUser(); } } 三层代码,如果UserService需要多个dao时,每次都得重新 new 对象,自己写得麻烦不说,每次创建对象内存表示不开森了 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | 改进之后,将所有dao,service权限限定名放入properties中 Userdao=com.ioc.UserDao UserService=com.ioc.UserService //创建一个工厂类加载properties文件 public class BeanFactory { private static Properties props = new Properties(); static { InputStream is = BeanFactory. class .getResourceAsStream( "/bean.properties" ); try { props.load(is); } catch (Exception e) { e.printStackTrace(); } } //获得运行时类 public static Object getBean(String name){ String className = props.getProperty(name); try { return Class.forName(className); } catch (Exception e) { e.printStackTrace(); } return null ; } } 然后service中需要dao则直接调用getBean方法了,从而实现了单对象 |
关于http协议
分类:
spring
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
· 零经验选手,Compose 一天开发一款小游戏!