TA的每日心情 | 衰 2021-2-2 11:21 |
|---|
签到天数: 36 天 [LV.5]常住居民I
|
java在线考试系统SSH框架:% l% ~4 G) Y+ H% l- J1 I
模块:试题数据管理(添加考试类型、添加全部试题、添加试题)
& V* Y; \- ]3 Q- y 考生数据管理(浏览全部考生、添加考生数据)
) @) M* g$ Q1 z: r# _6 p数据表:admin examtype question student$ f/ `3 Y& Y. J
5 n' s, m' y3 x# D7 x
appContext.xml数据库配置:' A% H8 s. n! g
- <!-- 定义数据源Bean,使用C3P0数据源实现 -->
# P% [/ C8 F* }+ A" k+ Y" T - <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">+ _6 A2 ]5 _- |5 L$ X
- <!-- 指定连接数据库的驱动 -->1 w$ i; B1 i2 U6 Q% |5 A
- <property name="driverClass" value="com.mysql.jdbc.Driver"/>+ @, P( ^2 S7 {* d( g% J" \
- <!-- 指定连接数据库的URL -->4 u0 v* k( D1 k, U* G
- <property name="jdbcUrl" value="jdbc:mysql://localhost/onlinexam"/>
4 h: O" s$ k3 i# _1 J - <!-- 指定连接数据库的用户名 -->$ F0 i4 F0 M+ e6 F( `
- <property name="user" value="root"/>- ^8 X; r' G& B6 ^# K2 D/ Q
- <!-- 指定连接数据库的密码 -->
# l4 ~( Q; J Z; s( d3 ?) U7 w - <property name="password" value="root"/>
( `* a8 B7 E, f - <!-- 指定连接数据库连接池的最大连接数 -->
% h) [/ o: t/ a7 E - <property name="maxPoolSize" value="40"/>- u" H; n- s- p$ d2 {
- <!-- 指定连接数据库连接池的最小连接数 -->
3 O# q) m( p# }2 s4 E - <property name="minPoolSize" value="1"/>
5 N4 V1 E+ t( Z& H, {2 ~ - <!-- 指定连接数据库连接池的初始化连接数 -->( P6 w2 s( ~- d& o: s) `4 [! n
- <property name="initialPoolSize" value="1"/>
) ^9 A% W0 D$ a - <!-- 指定连接数据库连接池的连接的最大空闲时间 --> [6 b# |9 w# {( i2 }
- <property name="maxIdleTime" value="20"/>$ N. i# o4 B- e! k7 D `
- </bean>& ]- R# Z( v0 [, ^0 \' e
- ! b8 X5 |$ _" `% H$ y: B
- <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
% R% ~' ^1 L9 H% `9 F { - <property name="dataSource" ref="dataSource"/>& |3 }' S" f M4 z8 ?! j% w2 ^9 {
- <property name="mappingResources">
6 ~5 T) @& Z# Y3 ` - <list>! ~" v ?! T0 ^- K6 n
- <value>org/matrix/conf/ExamType.hbm.xml</value>
) V0 I1 J! M( V/ l# e: k - <value>org/matrix/conf/Admin.hbm.xml</value>7 t0 K2 C: h' Y B! J; c
- <value>org/matrix/conf/Question.hbm.xml</value>
8 q# s7 y+ N; K' M; s% M0 }) e2 B - <value>org/matrix/conf/Student.hbm.xml</value>
9 _- ^+ y& b6 G2 E - </list>
* ]5 \) ^1 }( d - </property>
0 f; _# D+ z* l, n, G - <property name="hibernateProperties">
: ?& ~$ [2 j6 z/ b5 \ - <props>
& V9 q& e1 w. Y. d - <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>! @6 O+ ~. I0 @. s4 `" W* D
- <prop key="show_sql">true</prop>
6 J$ _: a% S, s. v1 c: T- } - <prop key="hibernate.hbm2ddl.auto">update</prop>* S% V: e( G; G K( F1 v
- <prop key="hibernate.jdbc.batch_size">20</prop>
$ m* e* {. ]) ? - </props>: O* s8 R4 s4 e8 p7 S/ V
- </property>; J4 R3 Z& p: q' ?, N1 {
- </bean>5 k# e! X/ j" M9 h |8 t+ _
' R5 B. S3 j7 u& c2 g$ ?' H& U) I- <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
4 N( [1 t# Y# L% m - <property name="sessionFactory" ref="sessionFactory"/>! q" o! O* d) y( t3 Z, `% Q- v
- </bean>1 I8 a! D2 \% D1 b
9 O8 [6 v0 ~5 _ h7 O/ q- <bean id="transactionInterceptor"4 k6 q7 w/ s% g# A
- class="org.springframework.transaction.interceptor.TransactionInterceptor">
9 e# J' ?$ R2 d/ `4 f; }7 r0 s - <!-- 事务拦截器bean需要依赖注入一个事务管理器 --> I/ Q, R3 |' H9 q" W
- <property name="transactionManager" ref="transactionManager"/>
. S% t2 @) Q3 d X9 F4 S1 F1 J - <property name="transactionAttributes">9 B ^ y" C; E1 _& [
- <!-- 下面定义事务传播属性 -->9 w9 a! N+ d7 B2 z1 [2 A
- <props>
. u3 b* G( M4 ]2 z6 E5 c( | - <prop key="insert*">PROPAGATION_REQUIRED</prop>
6 \! L: ?7 M# f/ S: b& k* l - <prop key="find*">PROPAGATION_REQUIRED,readOnly</prop>
: O$ M7 o/ J* Q% ^ L% u) F - <prop key="*">PROPAGATION_REQUIRED</prop>
0 V: H2 J+ Q% e6 k. ]9 q* F2 Y - </props>
' H; r z' x, r4 }* I; E3 T. x" f) N - </property>
. [9 w+ T5 D2 s5 e - </bean># C" V* Q% @$ p8 C
- : f6 q4 S u7 s( `7 y
- <!-- 定义业务逻辑处理组件 -->. M3 e8 r O9 t o) L
- <bean id="examService" class="org.matrix.service.impl.ExamServiceImpl">
) S4 X7 J) C( l7 | M8 U - <property name="adminDao" ref="AdminDao"/>$ T- k2 N' m/ K2 u A: A
- <property name="studentDao" ref="StudentDao"/>; [! i2 D5 y6 {( m1 X& a( [* r
- <property name="examTypeDao" ref="ExamTypeDao"/>: d! @+ }# U3 `# R
- <property name="questionDao" ref="QuestionDao"/>' I Y. ^* q9 H+ L8 P5 O& V
- </bean>' J# z% Q8 s3 A& x' ` Z3 j
- ' P. {: N$ }) q5 T' i+ m' f+ u
- <!-- 定义BeanNameAutoProxyCreator -->1 Y' ]" D- B x0 u' }
- <bean class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">3 J1 x/ A2 n5 {" U
- <!-- 指定对满足哪些Bean name的Bean自动生成业务代理 -->1 ^9 ~: a* M5 b z4 v9 r
- <property name="beanNames">% v: e; k' s$ ^1 g: a1 Q2 [
- <!-- 下面是所有需要自动创建事务代理的Bean-->: Q U& Z; s: p/ k, ^
- <list>
; I' v# | N( c1 p" S0 e) U( ] - <value>examService</value>( d6 P: G, W3 v8 o. i6 _
- </list>
: O9 X/ o K7 Z- V0 e - <!-- 此处可增加其他需要自动创建事务代理的Bean-->" E- T$ @+ L4 E- K+ Q
- </property>
7 F3 \5 b- U' u% j; E2 Z* O% p) s - <!-- 下面定义BeanNameAutoProxyCreator所需的事务拦截器-->
z5 d3 ?( ~+ Q+ n+ Y/ f - <property name="interceptorNames">
- I4 }9 M3 X0 v; ^9 ]0 ~1 y - <list>1 a& c7 b, ]( I- |- k/ l
- <value>transactionInterceptor</value>
0 B8 U! T* T) n0 t b$ _8 { - <!-- 此处可增加其他新的Interceptor -->
0 J' I, M9 D8 w$ L* t( g5 V - </list>
+ X: W3 N5 M! S- g- V - </property>3 f( h) P( ]9 |+ [/ m8 j2 @
- </bean>
复制代码 , {( N" s) G( {3 v" Y7 g& L
% i! d" A5 R+ u2 t7 B% u1 b
& h: U. B7 Y6 b. P- r
8 {# d6 x/ f+ h- l( I3 z. C3 q
9 i! P5 C8 m" t) @' S1 Z6 P项目源码下载地址:
9 v) {5 G* U. l$ e0 y7 V6 G9 y
- I& e8 ]% _8 w2 A" L" b" g& E$ W5 j- j6 {
/ _: @. A8 Z2 p6 `
% v! n9 K! Z# T5 t% N% t% _( `1 f7 S# ^: U4 |
|
|