附spring配置文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd"><beans default-autowire="autodetect">
<!--数据源-->
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
<property name="driverClass" value="com.mysql.jdbc.Driver" />
<!-- 指定连接数据库的URL -->
<property name="jdbcUrl" value="jdbc:mysql://localhost/tssys" />
<!-- 指定连接数据库的用户名 -->
<property name="user" value="root" />
<!-- 指定连接数据库的密码 -->
<property name="password" value="" />
<!-- 指定连接数据库连接池的最大连接数 -->
<property name="maxPoolSize" value="20" />
<!-- 指定连接数据库连接池的最小连接数 -->
<property name="minPoolSize" value="1" />
<!-- 指定连接数据库连接池的初始化连接数 -->
<property name="initialPoolSize" value="2" />
<!-- 指定连接数据库连接池的连接的最大空闲时间 -->
<property name="maxIdleTime" value="20" />
</bean>
<!--定义了Hibernate的SessionFactory -->
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="mappingResources">
<list>
<value>Admin.hbm.xml</value>
<value>Class.hbm.xml</value>
<value>Course.hbm.xml</value>
<value>Lognote.hbm.xml</value>
<value>Menu.hbm.xml</value>
<value>Messages.hbm.xml</value>
<value>Report.hbm.xml</value>
<value>Resource.hbm.xml</value>
<value>Student.hbm.xml</value>
<value>Sysinfo.hbm.xml</value>
<value>Teacher.hbm.xml</value>
</list>
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.MySQLDialect
</prop>
<prop key="show_sql">true</prop>
<prop key="hibernate.hbm2ddl.auto">update</prop>
<prop key="hibernate.jdbc.batch_size">20</prop>
</props>
</property>
</bean>
<bean id="transactionManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean> <bean id="transactionInterceptor"
class="org.springframework.transaction.interceptor.TransactionInterceptor">
<!-- 事务拦截器bean需要依赖注入一个事务管理器 -->
<property name="transactionManager" ref="transactionManager" />
<property name="transactionAttributes">
<!-- 下面定义事务传播属性-->
<props>
<prop key="get*">PROPAGATION_REQUIRED,readOnly</prop>
<prop key="*">PROPAGATION_REQUIRED</prop>
</props>
</property>
</bean>
<!-- 定义BeanNameAutoProxyCreator-->
<bean
class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
<!-- 指定对满足哪些bean name的bean自动生成业务代理 -->
<property name="beanNames">
<!-- 下面是所有需要自动创建事务代理的bean-->
<list>
<value>menutarget</value>
<value>admintarget</value>
</list>
<!-- 此处可增加其他需要自动创建事务代理的bean-->
</property>
<!-- 下面定义BeanNameAutoProxyCreator所需的事务拦截器-->
<property name="interceptorNames">
<list>
<!-- 此处可增加其他新的Interceptor -->
<value>transactionInterceptor</value>
</list>
</property>
</bean> <!-- ***********IAdminService的实现类定义*********-->
<bean id="admintarget"
class="com.teastusystem.service.spring.AdminServiceSpringImpl">
<property name="adminDAO" ref="adminDAO" />
</bean> <!--**********AdminDAO object:Hibernate implementation********** --> <bean id="adminDAO"
class="com.teastusystem.service.dao.hibernate.AdminHibernateDAO">
<property name="sessionFactory">
<ref local="sessionFactory" />
</property>
</bean>
<!-- ***********IMenuService的实现类定义*********-->
<bean id="menutarget"
class="com.teastusystem.service.spring.MenuServiceSpringImpl">
<property name="menuDAO" ref="menuDAO" />
</bean> <!--**********MenuDAO object:Hibernate implementation********** --> <bean id="menuDAO"
class="com.teastusystem.service.dao.hibernate.MenuHibernateDAO">
<property name="sessionFactory">
<ref local="sessionFactory" />
</property>
</bean>
</beans>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd"><beans default-autowire="autodetect">
<!--数据源-->
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
<property name="driverClass" value="com.mysql.jdbc.Driver" />
<!-- 指定连接数据库的URL -->
<property name="jdbcUrl" value="jdbc:mysql://localhost/tssys" />
<!-- 指定连接数据库的用户名 -->
<property name="user" value="root" />
<!-- 指定连接数据库的密码 -->
<property name="password" value="" />
<!-- 指定连接数据库连接池的最大连接数 -->
<property name="maxPoolSize" value="20" />
<!-- 指定连接数据库连接池的最小连接数 -->
<property name="minPoolSize" value="1" />
<!-- 指定连接数据库连接池的初始化连接数 -->
<property name="initialPoolSize" value="2" />
<!-- 指定连接数据库连接池的连接的最大空闲时间 -->
<property name="maxIdleTime" value="20" />
</bean>
<!--定义了Hibernate的SessionFactory -->
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="mappingResources">
<list>
<value>Admin.hbm.xml</value>
<value>Class.hbm.xml</value>
<value>Course.hbm.xml</value>
<value>Lognote.hbm.xml</value>
<value>Menu.hbm.xml</value>
<value>Messages.hbm.xml</value>
<value>Report.hbm.xml</value>
<value>Resource.hbm.xml</value>
<value>Student.hbm.xml</value>
<value>Sysinfo.hbm.xml</value>
<value>Teacher.hbm.xml</value>
</list>
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.MySQLDialect
</prop>
<prop key="show_sql">true</prop>
<prop key="hibernate.hbm2ddl.auto">update</prop>
<prop key="hibernate.jdbc.batch_size">20</prop>
</props>
</property>
</bean>
<bean id="transactionManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean> <bean id="transactionInterceptor"
class="org.springframework.transaction.interceptor.TransactionInterceptor">
<!-- 事务拦截器bean需要依赖注入一个事务管理器 -->
<property name="transactionManager" ref="transactionManager" />
<property name="transactionAttributes">
<!-- 下面定义事务传播属性-->
<props>
<prop key="get*">PROPAGATION_REQUIRED,readOnly</prop>
<prop key="*">PROPAGATION_REQUIRED</prop>
</props>
</property>
</bean>
<!-- 定义BeanNameAutoProxyCreator-->
<bean
class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
<!-- 指定对满足哪些bean name的bean自动生成业务代理 -->
<property name="beanNames">
<!-- 下面是所有需要自动创建事务代理的bean-->
<list>
<value>menutarget</value>
<value>admintarget</value>
</list>
<!-- 此处可增加其他需要自动创建事务代理的bean-->
</property>
<!-- 下面定义BeanNameAutoProxyCreator所需的事务拦截器-->
<property name="interceptorNames">
<list>
<!-- 此处可增加其他新的Interceptor -->
<value>transactionInterceptor</value>
</list>
</property>
</bean> <!-- ***********IAdminService的实现类定义*********-->
<bean id="admintarget"
class="com.teastusystem.service.spring.AdminServiceSpringImpl">
<property name="adminDAO" ref="adminDAO" />
</bean> <!--**********AdminDAO object:Hibernate implementation********** --> <bean id="adminDAO"
class="com.teastusystem.service.dao.hibernate.AdminHibernateDAO">
<property name="sessionFactory">
<ref local="sessionFactory" />
</property>
</bean>
<!-- ***********IMenuService的实现类定义*********-->
<bean id="menutarget"
class="com.teastusystem.service.spring.MenuServiceSpringImpl">
<property name="menuDAO" ref="menuDAO" />
</bean> <!--**********MenuDAO object:Hibernate implementation********** --> <bean id="menuDAO"
class="com.teastusystem.service.dao.hibernate.MenuHibernateDAO">
<property name="sessionFactory">
<ref local="sessionFactory" />
</property>
</bean>
</beans>
解决方案 »
- MyEclipse中hiernate reverse discrimination关联表
- spring+hibernate如何实现用户权限的控制?
- 请问大家:我们做软件的,用什么笔记本好一点?请推荐。谢谢!
- Hibernate - projectionList的问题
- 有关spring中使用hibernate会出现ClassDefNotFound的问题
- 这样的报表怎么设计好,没有头绪,急 急 急。。。。在线等。
- 高分求救!做过WebLogic集群的请进。
- 100分求助一个最基础的JDBC问题,差点没脸提出来……
- 实体bean(cmp)访问SQLServer2000的问题
- java如何同时给多个人发送短信和邮件,发生错误互不影响,并且将报错记入日志
- 偶很菜,高手来指点一下哈,快疯掉了
- Struts 1.3中DynaActionForm的转型问题
package com.teastusystem.struts.action;import com.opensymphony.xwork2.ActionSupport;
import com.teastusystem.service.IAdminService;
import com.teastusystem.service.IMenuService;public class BaseAction extends ActionSupport { private static final long serialVersionUID = 1L; protected IAdminService admintarget; protected IMenuService menutarget; public void setMenutarget(IMenuService menutarget) {
this.menutarget = menutarget;
} public void setAdmintarget(IAdminService admintarget) {
this.admintarget = admintarget;
}
}
package com.teastusystem.struts.action;import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
import com.teastusystem.models.Admin;
import com.teastusystem.models.Teacher;
import com.teastusystem.models.Student;
import java.util.*;
import com.teastusystem.struts.action.BaseAction;
import com.teastusystem.service.spring.MenuServiceSpringImpl;public class LoginAction extends BaseAction { private static final long serialVersionUID = 1L; private Integer role; private List menus; private String username; private String password; private String vercode; public String execute() throws Exception {
Map session = ActionContext.getContext().getSession();
System.out.println("login");
System.out.println(role);
String ver2 = (String) session.get("rand");
session.put("rand", null);
if (vercode.equals(ver2)) {
if (role == 3) {
Admin admin = admintarget.adminLogin(username, password);
if (admin != null) {
setMenus(menutarget.findMenuByMenuPower(role));
session.put("userId", admin.getAid());
session.put("userName", admin.getAusername());
session.put("userPower", admin.getApower());
return SUCCESS;
} else {
addActionError("用户名/密码不匹配");
return "error";
}
} else if (role == 2) {
return "error";
} else
return "error";
} else {
addActionError("验证码不匹配,请重新输入!");
return "error";
}
} public String getVercode() {
return vercode;
} public void setVercode(String vercode) {
this.vercode = vercode;
} public String getPassword() {
return password;
} public void setPassword(String password) {
this.password = password;
} public String getUsername() {
return username;
} public void setUsername(String username) {
this.username = username;
} public Integer getRole() {
return role;
} public void setRole(Integer role) {
this.role = role;
} public List getMenus() {
return menus;
} public void setMenus(List menus) {
this.menus = menus;
}}