TA的每日心情 衰 2021-2-2 11:21
签到天数: 36 天
[LV.5]常住居民I
java 在线考试系统SSH框架:
1 p+ {+ D/ h e/ G9 D' g5 L4 Y" B) W 模块:试题数据管理(添加考试类型、添加全部试题、添加试题)
6 p+ i2 r8 R2 a6 B m' l 考生数据管理(浏览全部考生、添加考生数据), R$ [+ T. I! Y" p
数据表:admin examtype question student
* m( I6 l* m+ k
: l8 Z- \( L* ?8 x. C
appContext.xml数据库配置:
! m: M1 i; a/ L2 ]3 C' v <!-- 定义数据源Bean,使用C3P0数据源实现 -->1 `% d7 d: p9 Q0 t- n: E+ J
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">, g5 e0 q' f8 {' z6 h# r r- X
<!-- 指定连接数据库的驱动 -->
9 |# g9 l: R7 j <property name="driverClass" value="com.mysql.jdbc.Driver"/>
9 ?! a$ Z7 E6 D/ g" | <!-- 指定连接数据库的URL -->
/ _9 A. n% s9 w( w <property name="jdbcUrl" value="jdbc:mysql://localhost/onlinexam"/>6 {' w$ ~* w' e# T' c
<!-- 指定连接数据库的用户名 -->
3 J! t% ~5 `4 |* M- @) W0 J <property name="user" value="root"/>5 a$ O! j6 P% B8 }! n
<!-- 指定连接数据库的密码 -->% b6 Z0 n, z* L [: T; E8 k
<property name="password" value="root"/>
2 j& K- H. U( v" v% {$ l. U- v1 U <!-- 指定连接数据库连接池的最大连接数 -->
; l! E7 N$ r1 T1 o/ W <property name="maxPoolSize" value="40"/>
: a3 U- b+ @/ g7 V3 w4 e9 w5 n <!-- 指定连接数据库连接池的最小连接数 -->) W+ C9 a( C' {3 O4 o% Z( V
<property name="minPoolSize" value="1"/>: t3 Y8 A+ R% J
<!-- 指定连接数据库连接池的初始化连接数 -->- P7 e3 w( v% k3 `, z( n" J
<property name="initialPoolSize" value="1"/>5 f" R" n) C" P+ I% F, u
<!-- 指定连接数据库连接池的连接的最大空闲时间 -->+ R* y* p& L2 p0 K
<property name="maxIdleTime" value="20"/>
1 L9 _) L u& j </bean># R) W1 D [4 f+ E' O. J( G
, i- C' J0 N" P! I3 ? <bean id="sessionFactory" class="org.spring framework.orm.hibernate 3.LocalSessionFactoryBean">
( X" Y+ y% y, j$ |; W9 @' D <property name="dataSource" ref="dataSource"/>
- _4 S t5 c; d/ l <property name="mappingResources">
' |# X5 |1 A/ Z. I/ F9 o! |* v <list>
9 \- h% a4 O6 [/ j! o5 M5 @. ]. f. J+ [ <value>org/matrix/conf/ExamType.hbm.xml</value>
; ~5 D; k+ M4 |8 Q) @ <value>org/matrix/conf/Admin.hbm.xml</value>) f2 N$ a, M, W& F. g6 u+ x1 V
<value>org/matrix/conf/Question.hbm.xml</value> d8 P4 c- b2 o2 D) q
<value>org/matrix/conf/Student.hbm.xml</value>* C5 K8 A; j _
</list>$ q# r4 Z# W5 v* L* j+ o; K
</property>
7 N/ L+ a) W! L4 P <property name="hibernateProperties">
# E7 P; H: N& L7 Q i0 C$ H4 a" J <props>" D, Q& u# l" u4 A% K8 b
<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
) E( c7 d# H |1 `. o0 s <prop key="show_sql">true</prop>
5 d: e/ o7 e* f% s' V <prop key="hibernate.hbm2ddl.auto">update</prop>
6 h6 L+ L. _- s. C6 h; ~8 N <prop key="hibernate.jdbc.batch_size">20</prop>
5 ^/ p$ W4 v' Q% C </props>; D$ P' S: X- `" X
</property>
% [7 I* Y6 e g </bean>( J+ f& @! F3 S5 m+ B8 Q: w) _
. _' N W( E, t) S% F# m <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
7 f u8 o5 a3 v! L; A2 \' q+ _ <property name="sessionFactory" ref="sessionFactory"/>
" o6 j6 G. D. ?7 K' `4 S& B </bean>% U8 W: g. A! W
4 ?$ O1 x; x& U7 U0 y; _, `
<bean id="transactionInterceptor"$ g: U3 _- ~. s: U9 j% X
class="org.springframework.transaction.interceptor.TransactionInterceptor">, G- v W F: |
<!-- 事务拦截器bean需要依赖注入一个事务管理器 -->7 L- l% n( }; t$ o0 m# ~+ v
<property name="transactionManager" ref="transactionManager"/>
* X" `& k8 g) x& u2 u; \ <property name="transactionAttributes">2 y: R" q; i$ n3 E0 M
<!-- 下面定义事务传播属性 -->9 c6 P/ X# n/ c/ P0 f1 a
<props>
4 `1 `# ?& ~1 s" Q+ b+ ` <prop key="insert*">PROPAGATION_REQUIRED</prop>
& U, c3 I7 C3 j- t: o h W8 C <prop key="find*">PROPAGATION_REQUIRED,readOnly</prop>
1 z' H9 \' B# R8 k' \ F9 T <prop key="*">PROPAGATION_REQUIRED</prop>+ J+ l* G' P# n
</props>
# d$ ~; A. G- V, b3 t+ \, k </property>$ d( V2 B0 a. v6 W
</bean>
/ ^; |* S. z9 t$ \
; ]' F/ x9 k e$ S( r& ] <!-- 定义业务逻辑处理组件 -->
8 j8 p3 o" ~: J+ s <bean id="examService" class="org.matrix.service.impl.ExamServiceImpl">! T3 |4 [( D! m; Z
<property name="adminDao" ref="AdminDao"/>8 ]/ e) e% G# N E4 I3 {9 a/ W
<property name="studentDao" ref="StudentDao"/>, ?+ x& Q e, K, l6 q0 [
<property name="examTypeDao" ref="ExamTypeDao"/>, z; X( a! |: b" v2 P- w
<property name="questionDao" ref="QuestionDao"/>
/ B9 ~4 `4 [: H0 z! l3 Q. r% k1 D* Q+ X </bean>1 N/ k' S0 ?4 r$ q4 ?0 A0 o7 [ ~
9 w8 P( t. b) V8 }. M1 O$ R, D
<!-- 定义BeanNameAutoProxyCreator -->
3 W n: h2 ]) `0 |1 ]1 v. v <bean class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">/ y% N! ~! y. P6 @) m
<!-- 指定对满足哪些Bean name的Bean自动生成业务代理 -->
c, t. O7 t: ]1 p* I1 @& N <property name="beanNames">
$ \) _7 h. }5 L! Q; u) x8 }- G9 q6 h <!-- 下面是所有需要自动创建事务代理的Bean-->
; a# v" R5 L$ Q1 t, A# c <list>
{6 Y1 a" h0 G! @9 L! h2 { <value>examService</value>( X! W* w+ J9 v2 j
</list>$ n+ x5 T( m. H* R" R' u3 m
<!-- 此处可增加其他需要自动创建事务代理的Bean-->* j/ A: u3 O1 }( O5 [* T. U
</property>4 r( k2 h- t( M2 @
<!-- 下面定义BeanNameAutoProxyCreator所需的事务拦截器-->+ m/ ~* m3 k: n3 p7 K+ `) g
<property name="interceptorNames">
3 s e! d4 }$ Z# T$ K f% ~, d <list>7 } ^; p! D. R
<value>transactionInterceptor</value>3 u5 l; Y' w" v4 J7 y* G8 h# {) x
<!-- 此处可增加其他新的Interceptor -->
+ m" S* }4 M6 B* v6 {( x) x </list>
1 c1 Y9 o4 G j2 d, B( j* ^) E8 S! { </property>
% F5 ^$ ]5 ^$ _$ Q) c' U </bean> 复制代码
# t% S! J+ P( T, S6 ?+ \% f( d# o
: y2 R6 M* Y3 X0 _
9 w; X6 H7 @6 n7 @' N! h
( W1 q& A, q( I2 F1 Q. `
1 c5 m9 w7 _/ ]4 I6 b
项目源码 下载地址: ! a; U( ^5 z; E+ W y# X! s5 Q
- H" ~8 |& L1 P7 E. R0 S! F
5 |9 a) C7 h U- }& K4 t
3 B+ P* }9 o5 x+ N1 M7 K' \ 2 P& P5 y) B9 G
1 o3 B; [. i& @# ` U
科帮网-Java论坛、Java社区、JavaWeb毕业设计 1、本主题所有言论和图片纯属会员个人意见,与本社区立场无关2、本站所有主题由该帖子作者发表,该帖子作者与科帮网-Java论坛、Java社区、JavaWeb毕业设计 享有帖子相关版权3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和科帮网-Java论坛、Java社区、JavaWeb毕业设计 的同意4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意7、科帮网-Java论坛、Java社区、JavaWeb毕业设计 管理员和版主有权不事先通知发贴者而删除本文
JAVA爱好者①群:
JAVA爱好者②群:
JAVA爱好者③ :