TA的每日心情![](source/plugin/dsu_paulsign/img/emot/shuai.gif) | 衰 2021-2-2 11:21 |
---|
签到天数: 36 天 [LV.5]常住居民I
|
java在线考试系统SSH框架:3 ~) [+ z: y- N# G" p2 G$ V1 X
模块:试题数据管理(添加考试类型、添加全部试题、添加试题)! f ]8 y- ^& `+ V( D
考生数据管理(浏览全部考生、添加考生数据)
9 Q$ v9 q3 E" g- a3 G+ ^, J数据表:admin examtype question student
$ P: y+ n( z1 f9 w/ u6 d
. K! z/ ]# q! t1 P8 ^# f" @
appContext.xml数据库配置:
( _: E; N' o) E8 V7 v- <!-- 定义数据源Bean,使用C3P0数据源实现 -->. i8 M. c' o- [* z$ Q& e1 O% Z
- <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">, W6 d9 s; b2 _& S
- <!-- 指定连接数据库的驱动 -->
) E, f9 A3 F' }! i' T - <property name="driverClass" value="com.mysql.jdbc.Driver"/>: u8 H7 J8 {- [: a
- <!-- 指定连接数据库的URL -->, U1 n+ c7 b, A" M' ^0 n: j! q
- <property name="jdbcUrl" value="jdbc:mysql://localhost/onlinexam"/>
9 m) O1 B( S& h1 l. R* h* ~ - <!-- 指定连接数据库的用户名 -->
- S3 Q2 ], y0 L - <property name="user" value="root"/>
4 s( s J0 X: q9 Q! z - <!-- 指定连接数据库的密码 -->
/ W) x* @% k- K4 _9 G - <property name="password" value="root"/>
4 F6 K# a2 a0 D! X. ] - <!-- 指定连接数据库连接池的最大连接数 -->1 g" w1 E4 a+ A( r* D
- <property name="maxPoolSize" value="40"/>: a. o( j( H# }
- <!-- 指定连接数据库连接池的最小连接数 -->
1 U# @" a3 a4 ]. c: w - <property name="minPoolSize" value="1"/>
% D7 z+ l0 g% q7 d$ d/ b - <!-- 指定连接数据库连接池的初始化连接数 -->
! _' j! H2 F1 t6 t* N) A: T5 A( i - <property name="initialPoolSize" value="1"/>
) b7 V" j! H* R4 b$ s7 c - <!-- 指定连接数据库连接池的连接的最大空闲时间 -->; a( n' i9 q9 W* T
- <property name="maxIdleTime" value="20"/>
' ?# I, n9 ?4 B: q+ o5 ^ - </bean> z1 U3 j& t# T& M& l; J
- V6 E, I. C4 H( S2 D& v, W
- <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">5 ~9 {$ Q, e3 u& n* D
- <property name="dataSource" ref="dataSource"/>4 A: ?; p8 g! l; r( l0 P; t3 a3 H
- <property name="mappingResources">4 u( r' I: J: b
- <list>
* m+ K2 ^. Q# B. P - <value>org/matrix/conf/ExamType.hbm.xml</value>% W5 {' }- l z1 l2 C$ r. |
- <value>org/matrix/conf/Admin.hbm.xml</value>& T! M. j# G. ~9 x
- <value>org/matrix/conf/Question.hbm.xml</value>
; A0 n+ D- A) |; ?4 } S! @: U - <value>org/matrix/conf/Student.hbm.xml</value>( C1 s; Q. l6 E/ o4 N, b4 {
- </list>
' ]& P) q& e0 R, K: W - </property>$ \( y8 P' S; e) r% S
- <property name="hibernateProperties">' C* i) ]- Z) w& `( ~
- <props>
5 [( L C& N0 Y- X& F4 ~2 W - <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
7 T- r9 ?0 ~+ _6 G' o1 s9 Z/ o - <prop key="show_sql">true</prop>9 Z- C& K! l7 R- p" N- p# \0 N
- <prop key="hibernate.hbm2ddl.auto">update</prop>; k( B2 p7 [4 k* ?# Z
- <prop key="hibernate.jdbc.batch_size">20</prop>
- d7 X$ u. l9 V+ a) l - </props>
* q0 Z; F( A. U+ q. f4 s - </property>. i. r- f7 G: X2 h" B n" o2 m
- </bean>8 F4 S ?" e5 d3 l* Z# L8 J2 j! e
6 h$ d n! P9 L7 c- <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">! p" x, W/ Z0 V5 G8 b$ k# Z
- <property name="sessionFactory" ref="sessionFactory"/>
1 Z1 @1 L% o2 D8 y7 { - </bean>- ` l/ t$ d$ @6 _4 P& {
- 8 o6 @1 V, r1 b6 f2 h$ V T8 P
- <bean id="transactionInterceptor"
/ K+ w" b1 G2 s. ]6 \+ V - class="org.springframework.transaction.interceptor.TransactionInterceptor">4 G8 Q7 P: I- h- e. O
- <!-- 事务拦截器bean需要依赖注入一个事务管理器 -->/ p9 Q( J- x; p6 f( ?$ P4 n! _- s
- <property name="transactionManager" ref="transactionManager"/>6 g5 H' D/ {; t
- <property name="transactionAttributes">; h' h' \3 ~# q% O! r& R/ g) q) H0 F
- <!-- 下面定义事务传播属性 -->
8 I8 Z: Q6 U+ R* r0 ?1 Z% i, ~8 L - <props>7 o2 F9 r! e# i$ {3 |* n
- <prop key="insert*">PROPAGATION_REQUIRED</prop>
" ?& H& E6 T5 F3 y L - <prop key="find*">PROPAGATION_REQUIRED,readOnly</prop>
$ y- w! x# Z' J. u+ @ - <prop key="*">PROPAGATION_REQUIRED</prop>5 b5 x+ r9 K3 C9 y
- </props> i% L: u8 a d
- </property>; L! o$ [; C" O' ?* n9 w
- </bean>
+ V/ L6 n: m% e' a. r, X - % G0 m9 |1 A& l7 o
- <!-- 定义业务逻辑处理组件 -->7 Z7 j2 P' C9 |
- <bean id="examService" class="org.matrix.service.impl.ExamServiceImpl">2 [) n/ ]; t+ a: Q! x4 |
- <property name="adminDao" ref="AdminDao"/>+ X/ S3 u9 e* O! B( x+ h4 g
- <property name="studentDao" ref="StudentDao"/>
) u5 L' C' L) S7 D! ?- W! n' x - <property name="examTypeDao" ref="ExamTypeDao"/>, g3 y) O, a; I- w( _% g
- <property name="questionDao" ref="QuestionDao"/>, U$ @* n" ~$ v# w; x+ a- R: t
- </bean> A0 L E. l: K; k9 N+ _
- ' {* l( ]1 S4 T4 h9 Y
- <!-- 定义BeanNameAutoProxyCreator -->* T, l& z; v; C+ A
- <bean class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
( I6 m6 g8 D/ y - <!-- 指定对满足哪些Bean name的Bean自动生成业务代理 -->9 S) `! r2 g% C4 e! n9 [( f
- <property name="beanNames"># F8 l2 v/ {9 a7 ]! p8 g4 i
- <!-- 下面是所有需要自动创建事务代理的Bean-->8 ~6 _# t, \9 ~1 @4 M9 c! ]$ _
- <list>( o. ?5 @$ N+ l& `. E, |
- <value>examService</value>$ ^( b1 ?1 e9 ^ m& @
- </list>0 K( N& T% |/ }( e- p, ~: T
- <!-- 此处可增加其他需要自动创建事务代理的Bean-->3 F! m4 q/ k& y3 ?
- </property>
$ R) E+ r6 @$ W1 i - <!-- 下面定义BeanNameAutoProxyCreator所需的事务拦截器-->1 e! E h/ x; x% B& n9 ~
- <property name="interceptorNames">
5 P& e8 s3 \3 t* J" [3 ~& }& g0 p - <list>
1 P& I3 Z9 W; F# `; F' i3 W - <value>transactionInterceptor</value>9 {" `, {, Y" O" [+ h7 k
- <!-- 此处可增加其他新的Interceptor -->% N% N! p) I1 |, d) D
- </list>8 {7 \6 m$ h8 r" l) l: I
- </property>
" I7 C/ z7 g0 E; I+ n2 e- N: e, g+ c - </bean>
复制代码 7 ?! H4 T2 n& v& `* n
# w0 t! ~0 Z z5 G8 h7 ?! E
2 W5 v0 V" S+ b% H
2 H; {1 L' C$ A' l0 r9 }
0 @6 w5 k* S. e5 {/ K项目源码下载地址:- K* ~( r, N% |4 p, X# r! e
& K7 x1 A# F" x* ^% O$ X5 }
$ y. g& O, C( E/ }3 h
' s8 |+ ]6 Y, }# q% d) x2 z& U
. F$ {7 [2 x" Z X9 @& Z* z" g+ v8 |2 Q5 o# V
|
|