TA的每日心情 | 衰 2021-2-2 11:21 |
---|
签到天数: 36 天 [LV.5]常住居民I
|
java在线考试系统SSH框架:
- {+ L) y. G" F, X6 M$ m/ ]模块:试题数据管理(添加考试类型、添加全部试题、添加试题). [3 I' w% J# I5 I7 [' q: s
考生数据管理(浏览全部考生、添加考生数据)
! H/ j, y* l4 ?4 x2 _ h数据表:admin examtype question student0 C+ n. m+ U ^/ O8 [- a4 Y: ~
$ j4 |) {+ T m& c; W+ h6 HappContext.xml数据库配置:
8 @6 {' y) p3 d) L- <!-- 定义数据源Bean,使用C3P0数据源实现 -->3 u @; G$ I+ A5 n# b8 A
- <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
7 u4 S8 @- j1 O& X1 _( F - <!-- 指定连接数据库的驱动 -->
# R4 w4 ?/ l2 b" g; B - <property name="driverClass" value="com.mysql.jdbc.Driver"/>. E9 F; N* p% D9 @
- <!-- 指定连接数据库的URL -->
8 j7 z; E5 V1 I% m3 A" K, J f - <property name="jdbcUrl" value="jdbc:mysql://localhost/onlinexam"/>
) S) @ p% M5 z9 i1 c! [' z - <!-- 指定连接数据库的用户名 -->7 i, R7 L4 C- z1 U
- <property name="user" value="root"/>
* L& I4 d6 t) x - <!-- 指定连接数据库的密码 -->
$ t8 w1 i4 e! u) F! a - <property name="password" value="root"/>
" W6 K7 T+ g# [0 x( @' V8 q! d1 H - <!-- 指定连接数据库连接池的最大连接数 -->+ f# P3 B5 f2 n, j! I
- <property name="maxPoolSize" value="40"/>
/ i$ V* R. F8 Z2 w - <!-- 指定连接数据库连接池的最小连接数 -->
5 M0 l" V5 J4 e i ^* N! y - <property name="minPoolSize" value="1"/>
. i+ [# _: Y+ h' @7 ` - <!-- 指定连接数据库连接池的初始化连接数 -->+ [2 k' k$ o- `$ c; [
- <property name="initialPoolSize" value="1"/>
/ C$ c, @/ h4 C! Y: z - <!-- 指定连接数据库连接池的连接的最大空闲时间 -->
2 T. k5 C& K6 f+ D6 B$ e1 q! | - <property name="maxIdleTime" value="20"/>
% B5 k+ m; K8 f - </bean>. \6 K+ q7 _. S
- " S4 }. V, r. p
- <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
9 h' v: ?& q# {) {4 J7 ]/ v - <property name="dataSource" ref="dataSource"/>1 w4 m2 K' w" M. T R
- <property name="mappingResources">4 D, A/ k" y; F' R( {; C
- <list>+ X6 s9 S. ^- p: ^0 I' f
- <value>org/matrix/conf/ExamType.hbm.xml</value>
9 q, g7 w3 @# ^5 j - <value>org/matrix/conf/Admin.hbm.xml</value>0 q8 [7 C1 | d+ j8 V# \) T6 r
- <value>org/matrix/conf/Question.hbm.xml</value>! ?' y: H) @4 K' z1 h
- <value>org/matrix/conf/Student.hbm.xml</value>
$ Y H3 j6 |$ r: g p$ `1 E - </list>
5 k c+ T: O3 L' F2 W: L" q - </property>
+ s/ Q) R) j$ e" z4 \ - <property name="hibernateProperties">% |. R7 j; E7 h# m
- <props>
& u# O1 b" j( }+ s6 ?: e: ] - <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
! P8 o# o# O$ { - <prop key="show_sql">true</prop>. n, D6 u g$ ]9 m6 z
- <prop key="hibernate.hbm2ddl.auto">update</prop>
8 D- @. h0 J- p8 X; V/ |& P3 I - <prop key="hibernate.jdbc.batch_size">20</prop> / Z8 K' Z1 p4 Y
- </props>
, @+ d5 g" _2 @; N& x( S; B1 X - </property>! j* i& r/ Z- H& k
- </bean>6 Q/ X/ ~+ c5 q8 f
8 H+ X8 s* @( V- c( q- <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">: ]1 M' a* w1 w, w
- <property name="sessionFactory" ref="sessionFactory"/>
; I8 ~# u8 x1 e2 f/ \$ N* r - </bean>
/ R8 c0 t7 q. X - 4 v' l2 O0 k) W
- <bean id="transactionInterceptor"
# H6 w* S9 D3 D, w - class="org.springframework.transaction.interceptor.TransactionInterceptor">
# J. o. }, ^. i' T' O: s - <!-- 事务拦截器bean需要依赖注入一个事务管理器 -->9 J2 P3 O) F4 S1 i8 I8 H8 J' Q( b
- <property name="transactionManager" ref="transactionManager"/>
6 W# {. R5 s/ f) q. q, Y - <property name="transactionAttributes">5 Z3 u( }' l3 }8 a! I
- <!-- 下面定义事务传播属性 -->. S( R9 B7 ]# l# Q1 }* m2 X& z7 x0 l1 w
- <props>( J) Y/ ?7 D N7 P1 }
- <prop key="insert*">PROPAGATION_REQUIRED</prop>
7 f% D( l7 Y" i. c7 E7 Q - <prop key="find*">PROPAGATION_REQUIRED,readOnly</prop>, B9 b4 N) Q/ G/ F
- <prop key="*">PROPAGATION_REQUIRED</prop>6 Q; P) R5 `' o9 T5 q; _! T( M& G
- </props>, v0 l1 r% v- F j3 K [0 k
- </property>
% x w1 s8 m# |) Q2 g( V - </bean>
L6 a2 x( T4 p" t - " E1 f7 Q* T4 Y3 E
- <!-- 定义业务逻辑处理组件 -->
/ N4 s9 b7 K0 k5 J6 h' { - <bean id="examService" class="org.matrix.service.impl.ExamServiceImpl">2 A Z8 B" B6 t! u. Y6 T
- <property name="adminDao" ref="AdminDao"/>
- k; M; p3 M u' p9 }+ y: h - <property name="studentDao" ref="StudentDao"/>
: q b! T. N" i - <property name="examTypeDao" ref="ExamTypeDao"/>
1 A, R# w3 P2 n- p - <property name="questionDao" ref="QuestionDao"/>$ _3 U0 A6 w. I/ U/ O* t
- </bean>7 k, Q5 e: e6 {
- % F) L" ]8 E( v; b: L6 u
- <!-- 定义BeanNameAutoProxyCreator -->* @7 E; |2 d8 Z, u' p9 f Z: M" q1 C
- <bean class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">3 g/ G6 k5 ]) J$ G9 E$ u
- <!-- 指定对满足哪些Bean name的Bean自动生成业务代理 -->
9 }7 L7 P: e0 S2 s! j6 k - <property name="beanNames">' Q# H4 ~( J5 P( |
- <!-- 下面是所有需要自动创建事务代理的Bean-->6 W% E" ~# {7 z+ R
- <list>
4 h x& \! x: {3 k% b& Q - <value>examService</value>
3 n7 ]0 W: @ T: ?9 p - </list>% f/ s1 X! f2 O7 V
- <!-- 此处可增加其他需要自动创建事务代理的Bean-->- s3 ]/ G C, e v4 X+ N" b
- </property>
: }2 O3 J/ n. J - <!-- 下面定义BeanNameAutoProxyCreator所需的事务拦截器-->
; T; V5 m8 y+ w - <property name="interceptorNames">
7 B( \1 F3 \. m% G - <list># A8 s8 b: D. t9 k$ s$ H& w+ {
- <value>transactionInterceptor</value>
: j: _ [; j+ {' w7 z# Y+ d8 | - <!-- 此处可增加其他新的Interceptor -->/ v- y2 T: D, ]8 I# S4 `! }: f
- </list>
. [4 Y" k" z" } - </property>
, [4 F: _1 |" A+ A7 B# |5 w1 x - </bean>
复制代码
( ?; r! O% J/ W1 U- d
8 a# I9 M# _3 v: N. k/ a
+ C, i/ \+ B4 K6 e3 g% L2 N
3 P' S7 o: S7 u- P, e1 o. E" i
9 C) z) h o; ` B9 T- x" d
项目源码下载地址:. ?& [2 P( w# p: l
" h. k. t! n2 K* b( M. v7 p
C/ W( L, p# g, _
6 X5 G2 b5 v2 m s) k6 R6 }4 W% Y8 x
( g3 t- T1 b9 E/ [. Y) l# G& y3 k
|
|