TA的每日心情 | 衰 2021-2-2 11:21 |
---|
签到天数: 36 天 [LV.5]常住居民I
|
java在线考试系统SSH框架:; Q1 P a @3 b+ E4 i; T2 T
模块:试题数据管理(添加考试类型、添加全部试题、添加试题)) ]% J% x8 k% n: C
考生数据管理(浏览全部考生、添加考生数据)
- G+ m; z$ _9 Q6 d/ A/ Q. g, ]0 _数据表:admin examtype question student1 G( }' J. }: E
, B, K; L5 x8 \" FappContext.xml数据库配置:
{! t, n7 z9 k+ A8 h- <!-- 定义数据源Bean,使用C3P0数据源实现 -->' Z( X- y# d+ r
- <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">' v# G1 c3 ^- } z9 \" d
- <!-- 指定连接数据库的驱动 -->
( E( x s5 `, @ L( b/ B - <property name="driverClass" value="com.mysql.jdbc.Driver"/>; q1 R2 m2 M6 ~) g, j6 U% V+ `
- <!-- 指定连接数据库的URL -->
! ~* `! S' i/ Z# K+ D2 x - <property name="jdbcUrl" value="jdbc:mysql://localhost/onlinexam"/>
: Z- ^/ {2 ]7 M* n0 b! z - <!-- 指定连接数据库的用户名 -->
4 ~" n2 d( T* n1 L) t - <property name="user" value="root"/>
# V L! x/ g Y/ y( q - <!-- 指定连接数据库的密码 -->
+ ~7 k$ K0 x5 l$ M) P. a( @/ G - <property name="password" value="root"/>" k( Q. [5 q+ `; M1 x8 a2 m. O& P1 z
- <!-- 指定连接数据库连接池的最大连接数 -->' i! f6 U5 x {3 D
- <property name="maxPoolSize" value="40"/>6 g( M: C+ i* a, e b- {
- <!-- 指定连接数据库连接池的最小连接数 -->) A: W, W3 k8 ^. E; R% k
- <property name="minPoolSize" value="1"/>
c9 u5 D. x1 l" R2 B5 }5 \0 X" g - <!-- 指定连接数据库连接池的初始化连接数 -->
7 M/ Q% c& h' W - <property name="initialPoolSize" value="1"/>, K* m5 y* B5 B& Y. D$ T$ H
- <!-- 指定连接数据库连接池的连接的最大空闲时间 -->
* U% R( m' l& j" \0 c [ - <property name="maxIdleTime" value="20"/>
; n1 m& n% R$ ]( H8 k - </bean>/ Z, d4 p, t4 X$ }
2 ^0 |/ V( O% Z5 w4 w- <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">' g g* `/ Q: N; b1 L! ~
- <property name="dataSource" ref="dataSource"/># u0 z/ R) ]7 B* e
- <property name="mappingResources">4 Z) o! @6 a7 w
- <list>5 K: V: Q5 k; L5 i$ z( R7 C: H
- <value>org/matrix/conf/ExamType.hbm.xml</value>
$ u; `1 P7 L* a9 c7 X, u9 c% b( y! w - <value>org/matrix/conf/Admin.hbm.xml</value>2 _7 G8 u) @4 o4 B( Z% y, s6 F% W
- <value>org/matrix/conf/Question.hbm.xml</value>% X$ E# A+ Q% ` M2 t K+ t
- <value>org/matrix/conf/Student.hbm.xml</value>0 u+ k! ?9 A5 L- D$ K& a9 X* s
- </list>
' d2 _- a% [3 M% o- g, Q7 h' Q - </property>
+ j' S# p& u. J7 e' m4 { | - <property name="hibernateProperties">/ O6 f4 q! Q: ?, B0 }# g
- <props>
$ _1 f! w8 D4 y - <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
6 ^3 \ {9 [- E6 i0 q. E4 Q4 Q - <prop key="show_sql">true</prop>& S' G+ x, @" D8 t% T. r$ S
- <prop key="hibernate.hbm2ddl.auto">update</prop>- b9 K# e: v5 u. c
- <prop key="hibernate.jdbc.batch_size">20</prop> 3 w4 b: ?4 P; f% ]
- </props>& T' L8 R+ w- C% j" P
- </property>
1 N: w% y- _: J- m - </bean>
' l/ w0 \% [7 ?$ b! f. Y; j - - S1 t5 l. z0 G* q1 p, c# @
- <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
; W% U, U/ k- m2 s7 K$ {. P& u - <property name="sessionFactory" ref="sessionFactory"/>
! @: _. @/ i; I2 d& L - </bean>3 z- ~4 n, i! `8 h
. h' y! c5 o/ S( W) T- <bean id="transactionInterceptor"$ k/ r/ \( J; U& q4 T8 O
- class="org.springframework.transaction.interceptor.TransactionInterceptor">
" x; j1 Y5 X( w* W, r2 g' \3 A - <!-- 事务拦截器bean需要依赖注入一个事务管理器 -->
) U. {; F3 {% [# D* Q+ N) F - <property name="transactionManager" ref="transactionManager"/> ]1 M: j& u" i9 j
- <property name="transactionAttributes">7 ?5 F. q3 Y6 N1 D, I: I
- <!-- 下面定义事务传播属性 -->$ z) k* s, }. A7 d% f) b9 w' V
- <props>
: K% P" B' c ^+ O: \ - <prop key="insert*">PROPAGATION_REQUIRED</prop>
/ w9 v+ q1 n0 q5 k" `+ X5 [ - <prop key="find*">PROPAGATION_REQUIRED,readOnly</prop>: S' L6 e* t5 p' a
- <prop key="*">PROPAGATION_REQUIRED</prop>
" [7 A4 I; f$ e, S2 V- k8 O9 p - </props>+ F1 h3 @3 }# o! a" T+ L! H; w% W& G
- </property>
4 t+ z( N# Q2 A& ]& n' L' a, y - </bean>
% i1 e; N. A& j* A/ Z* u6 e - 5 U" P/ t" j! W1 `& w
- <!-- 定义业务逻辑处理组件 -->
9 n0 h9 p2 b. K L+ r, `! f K - <bean id="examService" class="org.matrix.service.impl.ExamServiceImpl">
6 w+ l$ P; h6 q; I/ p* s - <property name="adminDao" ref="AdminDao"/>$ n2 Q- z6 J4 e: P3 S6 N
- <property name="studentDao" ref="StudentDao"/>
" U1 f! r m. A2 T s0 C' k! h - <property name="examTypeDao" ref="ExamTypeDao"/>
+ U" k' X! D$ ?- V; { - <property name="questionDao" ref="QuestionDao"/>' ^! s9 b) {/ W8 q, t
- </bean>
/ h0 A7 |) R& S6 g5 B! N- r
/ ~+ I! t, r* N6 M0 ]# {; D R; ^- <!-- 定义BeanNameAutoProxyCreator -->
% {( a& B" z' m& M: O' @. l - <bean class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">0 r/ w3 L% l: k" _; `5 K& O7 ~
- <!-- 指定对满足哪些Bean name的Bean自动生成业务代理 -->/ A0 i# N% s+ g0 T q
- <property name="beanNames">. D+ v# d2 n. U# ]/ }5 u2 g
- <!-- 下面是所有需要自动创建事务代理的Bean-->
% l5 V. N. k6 H& ^2 Z1 Q$ f - <list>2 W) L. d4 V2 k
- <value>examService</value>
$ u4 F" `4 a Q" k9 @) v* g - </list>
5 m: n+ n9 f/ y6 Y( W/ s - <!-- 此处可增加其他需要自动创建事务代理的Bean-->3 r4 _9 a/ V5 E! i; h# z/ f
- </property>
& e. k% z! n5 i- K- i - <!-- 下面定义BeanNameAutoProxyCreator所需的事务拦截器-->
6 x( q. [. Y% _9 B5 a9 a - <property name="interceptorNames">$ e! O( P- N! J& G. s; t5 @7 z
- <list>. s/ ?" d: Y& h3 q
- <value>transactionInterceptor</value>
' o1 ]" ?. Q: S: K5 o0 p4 j+ ] - <!-- 此处可增加其他新的Interceptor -->
* }) i' v% M; k" h I - </list>
& ]! @4 E. O2 {! l H$ s% j- h$ F - </property> `; P! N: U: O3 e
- </bean>
复制代码 ; ^# Y A* ~# g1 Z, P
! l4 N+ X1 X% F
/ ~- ~% l+ A/ \: ]+ a
. Z! U V" @0 K& K: `
1 c& D1 g5 Y5 S* L- e( H' T1 X项目源码下载地址:
0 U) o4 H* ?' P: b+ s2 O; _# a5 F( c9 ^% T G- T* S3 {
2 n/ Q/ B/ ?$ s* e& r
2 @$ S$ g7 |: l
4 j! x5 w1 z* e* i* k8 H2 i
/ o `* B% I4 o
|
|