关于spring的注解
来源:互联网 发布:纯粮固态发酵白酒知乎 编辑:程序博客网 时间:2024/06/05 09:02
Annotation第一步
1.修改xml文件,参考文档<context:annotation-config/>
学习的注解:@Autowired(不推荐使用)
默认按类型ByType
如果想用byName使用注解@Qulifier
写在private field(不建议使用)
如果卸载set函数上用@qualifier需要写在参数上
@Resource(重要)
默认按名称,名称找不到按类型
可以指定特定名称
推荐使用
@Component
初始化默认为类名首字母小写
可以指定很初始化bean的名字
@Scope
@PostConstruct@PreDestroy
先看配置文件:bean.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" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd"><span style="color:#FF0000;"><context:annotation-config /><context:component-scan base-package="com.bjsxt"></context:component-scan></span></beans>
User的Bean
package com.bjsxt.model;public class User {private String username;private String password;public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}}Dao层
package com.bjsxt.dao;import com.bjsxt.model.User;public interface UserDAO {public void save(User user);}
Dao实现层
package com.bjsxt.dao.impl;import org.springframework.stereotype.Component;import com.bjsxt.dao.UserDAO;import com.bjsxt.model.User;@Component("userDAOImpl")public class UserDAOImpl implements UserDAO {public void save(User user) {//Hibernate//JDBC//XML//NetWorkSystem.out.println("user saved!");}}
service层
package com.bjsxt.service;import javax.annotation.PostConstruct;import javax.annotation.PreDestroy;import javax.annotation.Resource;import org.springframework.stereotype.Component;import org.springframework.stereotype.Service;import com.bjsxt.dao.UserDAO;import com.bjsxt.model.User;<pre name="code" class="html">//添加该注解后在测试类中getBean("userService");可以找到<pre name="code" class="html"><pre name="code" class="html">userService@Service("userService")public class UserService {private UserDAO userDAO; /** * 容器构造时调用 * */@PostConstructpublic void init() {System.out.println("init");}public void add(User user) {userDAO.save(user);}public UserDAO getUserDAO() {return userDAO;}/** * 默认是byName * */@Resource(name="userDAOImpl")public void setUserDAO(UserDAO userDAO) {this.userDAO = userDAO;}/** * 容器销毁之前调用 * */@PreDestroypublic void destroy() {System.out.println("destroy");}}测试类:
package com.bjsxt.service;import org.junit.Test;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;import com.bjsxt.model.User;//Dependency Injection//Inverse of Controlpublic class UserServiceTest {@Testpublic void testAdd() throws Exception {ClassPathXmlApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml");UserService service = (UserService)ctx.getBean("userService");service.add(new User());ctx.destroy();}}
0 0
- 关于spring的注解
- 关于Spring的注解
- 关于Spring的几个注解
- 关于Spring的注解@Resource的问题
- 关于spring的BeanFactory在使用注解的注解事项
- 关于spring mvc Controller的几个注解
- 关于Spring IOC的注解Annotation
- 关于spring mvc Controller的几个注解
- 关于spring中propagation注解的问题
- 关于Spring注解的一些说明
- 关于Spring的Transactional注解作用范围
- 关于spring boot的一些注解
- 关于spring注解
- 关于Spring 注解 IOC
- 关于spring常用注解
- 关于spring注解配置
- Spring关于@required注解
- Spring关于@Bean注解
- SQL模型类-QSqlTableModel模型
- msvcprtd.lib(MSVCP100D.dll) : error LNK2005: "public: class std::basic_ostream ...
- Android中的签名问题总结
- c++ const
- PowerCMD
- 关于spring的注解
- 心的开始
- Java 一些不注意的概念点
- Scrapy解决模拟登录问题
- 一个值得注意的const问题
- 实现给windows phone 水印TextBox
- php 表插入数据
- 一,入门基础—— 4,IOS模拟器的使用 截图
- C#学习有感(Lambda表达式)