久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

Spring的四個(gè)基本注解annotation(控制層,業(yè)務(wù)層,,持久層) -- @Component,、@Repository @Service、@Controller

 I_T_館 2014-07-06

SpringMVC的四個(gè)基本注解annotation(控制層,,業(yè)務(wù)層,,持久層) -- @Component、@Repository @Service,、@Controller

SpringMVC中四個(gè)基本注解:


@Component,、@Repository   @Service、@Controller

 

看字面含義,,很容易卻別出其中三個(gè):

@Controller   控制層,,就是我們的action層

@Service        業(yè)務(wù)邏輯層,就是我們的service或者manager層

@Repository  持久層,,就是我們常說的DAO層

 

@Component  (字面意思就是組件),,它在你確定不了事哪一個(gè)層的時(shí)候使用。

 

其實(shí),,這四個(gè)注解的效果都是一樣的,,Spring都會(huì)把它們當(dāng)做需要注入的Bean加載在上下文中;

但是在項(xiàng)目中,,卻建議你嚴(yán)格按照除Componen的其余三個(gè)注解的含義使用在項(xiàng)目中,。這對(duì)分層結(jié)構(gòu)的web架構(gòu)很有好處!,!

 

這里講的是SpringMVC中這四個(gè)注解的作用,其實(shí)Srping中這四個(gè)注解的作用和SpringMVC一樣.


示例:

1.  控制層

@Controller // 注釋為controller
@RequestMapping("/login")
public class LoginAction {
 
 @Autowired  
 @Qualifier("userService") //注釋指定注入 Bean 
 private IUserService userService;

 

 ,。。,。,。。,。 其他略 ,。。,。,。。,。

}

 

2.  業(yè)務(wù)邏輯層

@Service("userService")
public class UserServiceImpl implements IUserService {

    @Autowired
    @Qualifier("userDao")
    private IUserDao userDao;  

 

 

 ,。。。,。,。。 其他略 ,。。,。,。。,。

}

 

3.  持久層

@Repository("userDao")
public class UserDaoImpl implements IUserDao {
 private static Logger logger = LoggerFactory.getLogger(UserDaoImpl.class);
 private DataSource dataSource;  
    private JdbcTemplate template;  
      
    @Autowired  
    public UserDaoImpl(DataSource dataSource){  
        this.dataSource= dataSource;  
        template = new JdbcTemplate(this.dataSource);  
    }

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn),。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多