[213] 2018-06-24_MyBatis配置objectFactory详解

文档创建者:s7ckTeam
浏览次数:11
最后更新:2025-01-16
2018-06-24_MyBatis配置objectFactory详解 M y B a t i s     o b j e c t F a c t o r y       a F a   2 0 1 8 - 0 6 - 2 4 0 x 0 0 M y B a t i s     S q l M a p C o n f i g     M y B a t i s   使   o b j e c t F a c t o r y   使 0 x 0 1   M y B a t i s     s q l     s q l     r e s u l t T y p e     J a v a     J a v a B e a n     o b j e c t F a c t o r y     M y B a t i s     o b j e c t F a c t o r y     n e w     o b j e c t F a c t o r y   0 x 0 2   D e f a u l t O b j e c t F a c t o r y     4  
  M y B a t i s     S q l M a p C o n f i g . x m l   使   p r o p e r t y     S q l M a p C o n f i g . x m l     s e t P r o p e r t i e s     M y O b j e c t F a c t o r y   使 p s   S q l M a p C o n f i g . x m l   o b j e c t F a c t o r y     p r o p e r t y     o b j e c t F a c t o r y     s e t P r o p e r t i e s 0 x 0 3   S h o p p i n g C a r t     C a r t O b j e c t F a c t o r y   S h o p p i n g C a r t     S h o p p i n g C a r t     i n i t   S h o p p i n g C a r t     C a r t O b j e c t F a c t o r y     D e f a u l t O b j e c t F a c t o r y     c r e a t e   S h o p p i n g C a r t     i n i t     S q l M a p C o n f i g . x m l     S q l M a p C o n f i g . x m l   S h o p p i n g C a r t     i n i t   p u b l i c   c l a s s   M y O b j e c t F a c t o r y   e x t e n d s   D e f a u l t O b j e c t F a c t o r y   {         / /         p u b l i c   O b j e c t   c r e a t e ( C l a s s   t y p e ) {                 r e t u r n   s u p e r . c r e a t e ( t y p e ) ;         }         / /         p u b l i c   O b j e c t   c r e a t e ( C l a s s   t y p e ,   L i s t < C l a s s >   c o n s t r u c t o r A r g T y p e s ,   L i s t < O b j e c t >   c o n s t r u c t o r A r g s ) {                 r e t u r n   s u p e r . c r e a t e ( t y p e ,   c o n s t r u c t o r A r g T y p e s ,   c o n s t r u c t o r A r g s ) ;         }         / /         p u b l i c   v o i d   s e t P r o p e r t i e s ( P r o p e r t i e s   p r o p e r t i e s ) {                 s u p e r . s e t P r o p e r t i e s ( p r o p e r t i e s ) ;         }         / /         p u b l i c   < T >   b o o l e a n   i s C o l l e c t i o n ( C l a s s < T >   t y p e ) {                 r e t u r n   C o l l e c t i o n < E > . c l a s s . i s A s s i g n a b l e F r o m ( t y p e ) ;         } } < o b j e c t F a c t o r y   t y p e = " o r g . m y b a t i s . e x a m p l e . M y O b j e c t F a c t o r y " >         < p r o p e r t y   n a m e = " e m a i l "   v a l u e = " u n d e f i n e d " / > < / o b j e c t F a c t o r y > p a c k a g e   c n . c o m . m y b a t i s . p o j o ; p u b l i c   c l a s s   S h o p p i n g C a r t   {         p r i v a t e   i n t   p r o d u c t I d ;         p r i v a t e   S t r i n g   p r o d u c t N a m e ;         p r i v a t e         }         p u b l i c   i n t   g e t P r o d u c t I d ( )   {                 r e t u r n   p r o d u c t I d ;         }         p u b l i c   v o i d   s e t P r o d u c t I d ( i n t   p r o d u c t I d )   {                 t h i s . p r o d u c t I d   =   p r o d u c t I d ;         }         p u b l i c   S t r i n g   g e t P r o d u c t N a m e ( )   {                 r e t u r n   p r o d u c t N a m e ;         }         p u b l i c   v o i d   s e t P r o d u c t N a m e ( S t r i n g   p r o d u c t N a m e )   {                 t h i s . p r o d u c t N a m e   =   p r o d u c t N a m e ;         }         p u b l i c   i n t   g e t N u m b e r ( )   {                 r e t u r n   n u m b e r ;         }         p u b l i c   v o i d   s e t N u m b e r ( i n t   n u m b e r )   {                 t h i s . n u m b e r   =   n u m b e r ;         }         p u b l i c   d o u b l e   g e t P r i c e ( )   {                 r e t u r n   p r i c e ;         }         p u b l i c   v o i d   s e t P r i c e ( d o u b l e   p r i c e )   {                 t h i s . p r i c e   =   p r i c e ;         }         p u b l i c   d o u b l e   g e t T o t a l A m o u n t ( )   {                 r e t u r n   t o t a l A m o u n t ;         }         p u b l i c   v o i d   s e t T o t a l A m o u n t ( d o u b l e   t o t a l A m o u n t )   {                 t h i s . t o t a l A m o u n t   =   t o t a l A m o u n t ;         }         p u b l i c   v o i d   i n i t ( ) {                 t h i s . t o t a l A m o u n t   =   t h i s . n u m b e r   *   t h i s . p r i c e ;         } } p a c k a g e   c n . c o m . m y b a t i s . t e s t ; i m p o r t   j a v a . u t i l . L i s t ; i m p o r t   o r g . a p a c h e . i b a t i s . r e f l e c t i o n . f a c t o r y . D e f a u l t O b j e c t F a c t o r y ; i m p o r t         }         / / D e f a u l t O b j e c t F a c t o r y c r e a t e ( C l a s s   t y p e )         p u b l i c   < T >   T   c r e a t e ( C l a s s < T >   t y p e , L i s t < C l a s s < ? > >   c o n s t r u c t o r A r g T y p e s , L i s t < O b j e c t >   c o n s t r u c t o r A r g s ) {                 T   r e t   =   s u p e r . c r e a t e ( t y p e , c o n s t r u c t o r A r g T y p e s , c o n s t r u c t o r A r g s ) ;                 i f ( S h o p p i n g C a r t . c l a s s . i s A s s i g n a b l e F r o m ( t y p e ) ) {                         S h o p p i n g C a r t   e n t i t y   =   ( S h o p p i n g C a r t ) r e t ;                         e n t i t y . i n i t ( ) ;                 }                 r e t u r n   r e t ;         } } < o b j e c t F a c t o r y   t y p e = " c n . c o m . m y b a t i s . t e s t . C a r t O b j e c t F a c t o r y " / >
  3 0 0   5     S h o p p i n g C a r t     i n i t   0 x 0 4   M y B a t i s   o b j e c t F a c t o r y     S q l M a p C o n f i g . x m l     R e s o u r c e     S q l M a p C o n f i g . x m l     S q l S e s s i o n F a c t o r y     o b j e c t F a c t o r y   p r o p e r t y   p a c k a g e   c n . c o m . m y b a t i s . t e s t ; i m p o r t   j a v a . i o . I O E x c e p t i o n ; i m p o r t   j a v a . u t i l . A r r a y L i s t ; i m p o r t   j a v a . u t i l . L i s t ; i m p o r t   o r g . a p a c h e . i b a t i s . s e s s i o n . S q l S e s s i o n ;                 S q l S e s s i o n   s q l S e s s i o n   =   d a t a C o n n . g e t S q l S e s s i o n ( ) ;                 C a r t O b j e c t F a c t o r y   e   =   n e w   C a r t O b j e c t F a c t o r y ( ) ;                 L i s t   c o n s t r u c t o r A r g T y p e s   =   n e w   A r r a y L i s t ( ) ;                 c o n s t r u c t o r A r g T y p e s . a d d ( i n t . c l a s s ) ;                 c o n s t r u c t o r A r g T y p e s . a d d ( S t r i n g . c l a s s ) ;                 c o n s t r u c t o r A r g T y p e s . a d d ( i n t . c l a s s ) ;                 c o n s t r u c t o r A r g T y p e s . a d d ( d o u b l e . c l a s s ) ;                 c o n s t r u c t o r A r g T y p e s . a d d ( d o u b l e . c l a s s ) ;                 L i s t   c o n s t r u c t o r A r g s   =   n e w   A r r a y L i s t ( ) ;                 c o n s t r u c t o r A r g s . a d d ( 1 ) ;                 c o n s t r u c t o r A r g s . a d d ( " " ) ;                 c o n s t r u c t o r A r g s . a d d ( 5 ) ;                 c o n s t r u c t o r A r g s . a d d ( 3 0 0 ) ;                 c o n s t r u c t o r A r g s . a d d ( 0 . 0 ) ;                 S h o p p i n g C a r t   s C a r t   =   ( S h o p p i n g C a r t ) e . c r e a t e ( S h o p p i n g C a r t . c l a s s , c o n s t r u c t o r A r g T y p e s , c o n s t r u c t o r A r g s ) ;                 S y s t e m . o u t . p r i n t l n ( s C a r t . g e t T o t a l A m o u n t ( ) ) ;                 s q l S e s s i o n . c l o s e ( ) ;         } }
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则