maven2之m2eclipse使用手册(7)

2019-02-20 21:13

xmlns:xsi=\http://www.w3.org/2001/XMLSchema-instance\xmlns:p=\http://www.springframework.org/schema/p\

xmlns:tx=\http://www.springframework.org/schema/tx\

xmlns:context=\http://www.springframework.org/schema/context\

xsi:schemaLocation=\http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/tx

http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/context

http://www.springframework.org/schema/context/spring-context-3.0.xsd\

transaction-manager=\hibernateTransactionManager\

在spring3.02现在有个新特性可以让你用一个Java类当作一个bean标签来使用,所以spring的配置文件只需要写2句话就可以了如果要带上事务的话则3句,配置spring的代码如下:

@Configuration

public class BeanConfig {

private static PropertiesFactory factory = PropertiesFactory.getInstance();

@Bean(name = { \ })

public BasicDaoIf basicDao() { return BasicDaoFactory.getBasicDao(); }

@Bean(name = { \ })

public BasicDataSource dataSource() {

BasicDataSource bds = new BasicDataSource(); bds.setDriverClassName((String) factory

.getPropertyValueOrProperties(\));

bds.setUrl((String) factory.getPropertyValueOrProperties(\)); bds.setUsername((String) factory

.getPropertyValueOrProperties(\)); bds.setPassword((String) factory

.getPropertyValueOrProperties(\));

return bds; }

@Bean(name = { \ })

public SessionFactory getSessionFactory() throws Exception { AnnotationSessionFactoryBean sessionFactoryBean = new AnnotationSessionFactoryBean();

sessionFactoryBean.setDataSource(this.dataSource());

sessionFactoryBean.setHibernateProperties((Properties) factory .getPropertyValueOrProperties(\)); String packagesToScan = (String) factory

.getPropertyValueOrProperties(\); String[] packages = packagesToScan.split(\); if (null == packages) { sessionFactoryBean

.setPackagesToScan(new String[] { packagesToScan }); } else {

sessionFactoryBean.setPackagesToScan(packages); }

sessionFactoryBean.afterPropertiesSet(); return sessionFactoryBean.getObject(); }

@Bean(name = { \ })

public HibernateTemplate getHibernateTemplate() throws Exception { HibernateTemplate hibernateTemplate = new HibernateTemplate(); hibernateTemplate.setSessionFactory(this.getSessionFactory()); return hibernateTemplate; }

@Bean(name = { \ })

public HibernateTransactionManager getHibernateTransactionManager() throws Exception {

HibernateTransactionManager hibernateTransactionManager = new HibernateTransactionManager();

hibernateTransactionManager.setSessionFactory(this.getSessionFactory()); return hibernateTransactionManager; } }

bean中有个地方需要读取properties所以还需要加入一个读取配置文件的工厂 PropertiesFactory:

public class PropertiesFactory {

private static final String FILE = \;

private static PropertiesFactory propertiesFactory = new PropertiesFactory();

private InputStream in;

private Properties p;

public static PropertiesFactory getInstance() {

return propertiesFactory; } /**

* 创建一个新的实例 PropertiesFactory. * */

private PropertiesFactory() { super(); }

public void init() {

in = this.getClass().getClassLoader().getResourceAsStream(FILE); }

public Object getPropertyValueOrProperties(final String property) { try { init();

p = new Properties(); p.load(in);

if (StringUtils.isNotEmpty(property)) return p.getProperty(property); else

return p;

} catch (Exception e) { e.printStackTrace(); return null; } }

springApplicationContext.properties: url:驱动地址

driverClassName:驱动名称

username:数据库名字 password:数据库密码

packages:spring要扫描的包以,多个以分割

# JDBC Config

url=jdbc:mysql://localhost:3306/testUser driverClassName=com.mysql.jdbc.Driver username=root password=root

#Hibernate Config

hibernate.dialect=org.hibernate.dialect.MySQLDialect hibernate.hbm2ddl.auto=update hibernate.format_sql=true hibernate.show_sql=true

#Spring Config

packages=org.lxh.bean

[使用心得]maven2之m2eclipse使用手册之四编写通用Dao实例(四) 测试的bean:

@Entity

@Table(name=\)

public class User extends AbstractBean{

private static final long serialVersionUID = -2512193728050258334L; @Id

@GeneratedValue(strategy = GenerationType.IDENTITY) public final Integer getId() { return id; }

@Column(length=50,nullable=false) public String getUserid() { return userid; }

@Column(length=1)

public Integer getUsertype() { return usertype; }

@Column(length=2)

public Integer getRoleid() { return roleid; }

@Column(length=50)

public String getUseragent() { return useragent; }

@Column(length=100)

public String getNickname() { return nickname; }

@Column(length=50)

public String getName() { return name; }

@Column(length=10) public String getSex() { return sex; }

@Column(length=6) public Short getAge() { return age; }

@Column(length=20)

public String getCardid() { return cardid; }

@Column(length=50)

public String getEmail() { return email; }

@Column(length=50)

public String getPassword() { return password; }

@Temporal(TemporalType.DATE) public Date getRgtime() { return rgtime; }

@Temporal(TemporalType.DATE) public Date getUptime() {


maven2之m2eclipse使用手册(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:高二数学第十五周45分钟小练习 doc

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: