- 浏览: 253768 次
- 性别:
- 来自: 北京
-
最新评论
-
Nabulio:
good
Spring配置SessionFactory -
唤流年:
[color=red][/color] ...
Spring配置SessionFactory -
wangcl011:
Oracle通过数据泵网络导入另一个数据库,不生成DMP文件, ...
oracle命令导入dmp文件 -
rochou:
第一个Hibernate实现CRUD -
ningwuyu:
Entity 类是那个jar里面的
PropertyUtils MethodUtils用法
文章列表
@Component 相当于实例化类的对象。
通过在classpath中通过自动扫描方式把组建纳入spring容器管理。
要使用自动扫描机制我们需要打开一下配置信息:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ...
a) 加入:j2ee/common-annotations.jar
b) 默认按名称,名称找不到,按类型
c) 可以指定特定名称
d) 推荐使用
package com.zchen.service;
import javax.annotation.Resource;
import com.zchen.dao.UserDAO;
import com.zchen.model.User;
public class UserService {
private UserDAO userDAO;
public void add(User user) {
userD ...
a) 默认按类型by type
b) 如果想用byName,使用@Qulifier
c) 写在private field(第三种注入形式)(不建议,破坏封装)
d) 如果写在set上,@qualifier需要写在参数上
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/20 ...
使用注解先将schema加入到配置文件中:
<?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/cont ...
public class UserService {
private UserDAO userDAO;
public void init() {
System.out.println("init");
}
public void add(User user) {
userDAO.save(user);
}
public UserDAO getUserDAO() {
return userDAO;
}
public void setUserDAO(UserDAO userDAO) {
this.use ...
在Spring的.xml配置文件中,bean有五种autowire模式:byName,byType,constructor,autodetect,no;
1 byName:这个很简单,直接按照名字进行查找
public class UserService {
private UserDAO userDAO;
public void add(User user) {
userDAO.save(user);
}
public UserDAO getUserDAO() {
return userDAO;
}
public void setUserDAO(U ...
1.Singleton作用域: 当一个bean的作用域为singleton, 那么Spring IoC容器中只会存在一个共享的bean实例,并且所有对bean的请求,只要id与该bean定义相匹配,则只会返回bean的同一实例。 Singleton作用域是Spring中的缺省作用域。要在XML中将bean定义成singleton,可以这样配置:
Xml代码
<bean id="accountService" class="com.foo.DefaultAccountService"/>
<!-- th ...
定义变量:(setter getter)
private String name;
private int id;
private Set<String> sets;
private List<String> lists;
private String[] arrays;
private Map<String,String> maps;
private Properties properties;
初始化参数:
<bean id="personService" class="com.zhen.serv ...
private int id; private String status;
提供getter和setter方法:
<bean name="userDAO" class="com.bjsxt.dao.impl.UserDAOImpl"> <property name="id" value="8"></property> <property name="status" value="go ...
Spring注入方式有三种:
1.接口注入(不常用)
2.构造器注入
3.setter注入
构造方法注入:
public class UserService { public UserService(UserDAO userDAO) { super(); this.userDAO = userDAO; }}
<bean id="userDao" class="com.bjsxt.dao.impl.UserDA ...
<bean id="personService" class="com.zhen.service.impl.PersonServiceBean" />
获取bean的名称:
1.PersonService ps = (PersonService)ctx.getBean("personService");
ApplicationContext ctx = new ClassPathXmlApplicationContext("bean.xml");
2.
Bean ...
id和name都是为bean指定唯一一个名称。
区别:
id:不能指定特殊字符
name:可以指定特殊字符
<bean id = "personService" class = "com.zhen.service.impl.PersonServiceBean" />
<bean name = "/personService" class = "com.zhen.service.impl.PersonServiceBean" />
实例化Spring容器常用的两种方式:(可以指定多个,可以通过string数组传入)
方式一:
在类路径下寻找配置文件实例化容器
ApplicationContext ctx = new ClassPathXmlApplicationContext(new String[]{"bean.xml"});
方式二:
在文件系统路径下寻找配置文件来实例化容器
Application ctx = new FileSystemXmlApplication(new String[]{"d:\\bean.xml"})
Spring:是一个开源的控制反转(IOC)和面向切面(AOP)的容器框架.
Ioc(Inversion of Control):应用本身不负责依赖对象的创建及维护,依赖对象的创建及维护是由外部容器负责的。这样控制权就由应用转移到了外部容器,控制权的转移就是所谓反转。
DI(