免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
大數(shù)據(jù)WEB階段(十四)JavaEE開(kāi)發(fā)模式
1. servlet中與要實(shí)現(xiàn)的用戶業(yè)務(wù)邏輯未解耦之前:在Servlet中:Userservice us = new UserServiceImpl();//需要指定實(shí)例化具體的哪一個(gè)對(duì)象 , 產(chǎn)生了耦合(Uservice是接口)解耦之后:UserService us = BaseFactory.getFactory().getInstance(UserService.class);//并沒(méi)有指定具體的對(duì)象 , 而是由工廠類(lèi)從配置文件中讀取配置具體的實(shí)現(xiàn)類(lèi) ,沒(méi)有耦合2. 配置文件config.properties中的內(nèi)容:UserService=com.tj.service.UserServiceImpl.java3. 工廠類(lèi)實(shí)現(xiàn): public class BaseFactory { private static BaseFactory base = new BaseFactory(); private static Properties prop = new Properties(); static{ try { String path = BaseFactory.class.getClassLoader().getResouce("config.properties").getPath(); prop.load(new FileInputStream(path)); } catch (Exception e) { e.printStackTrace(); } } private BaseFactory(){} public static BaseFactory getBase(){ return base; } public <T>T getInstance(Class<T> clz) throws InstantiationException, IllegalAccessException, ClassNotFoundException{ //讀取配置文件中的屬性 String name= prop.getProperty(clz.getSimpleName()); return (T) Class.forName(name).newInstance(); }} 
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
把properties直接注入到object中去(spring-plugin)
JDK動(dòng)態(tài)代理代理與Cglib代理原理探究 | 并發(fā)編程網(wǎng) – ifeve.com
Java 代碼精簡(jiǎn)之道
C# Property機(jī)制
5.2.4 使用單例模式重寫(xiě)示例
c#單態(tài)設(shè)計(jì)模式
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服