- 浏览: 36909 次
- 性别:
- 来自: 西安
最新评论
<!-- [if gte mso 9]><xml> <o:OfficeDocumentSettings> <o:RelyOnVML/> <o:AllowPNG/> </o:OfficeDocumentSettings> </xml><![endif]-->
<!-- [if gte mso 9]><xml> <w:WordDocument> <w:View>Normal</w:View> <w:Zoom>0</w:Zoom> <w:TrackMoves/> <w:TrackFormatting/> <w:PunctuationKerning/> <w:DrawingGridVerticalSpacing>7.8 磅</w:DrawingGridVerticalSpacing> <w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery> <w:DisplayVerticalDrawingGridEvery>2</w:DisplayVerticalDrawingGridEvery> <w:ValidateAgainstSchemas/> <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> <w:IgnoreMixedContent>false</w:IgnoreMixedContent> <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> <w:DoNotPromoteQF/> <w:LidThemeOther>EN-US</w:LidThemeOther> <w:LidThemeAsian>ZH-CN</w:LidThemeAsian> <w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript> <w:Compatibility> <w:SpaceForUL/> <w:BalanceSingleByteDoubleByteWidth/> <w:DoNotLeaveBackslashAlone/> <w:ULTrailSpace/> <w:DoNotExpandShiftReturn/> <w:AdjustLineHeightInTable/> <w:BreakWrappedTables/> <w:SnapToGridInCell/> <w:WrapTextWithPunct/> <w:UseAsianBreakRules/> <w:DontGrowAutofit/> <w:SplitPgBreakAndParaMark/> <w:EnableOpenTypeKerning/> <w:DontFlipMirrorIndents/> <w:OverrideTableStyleHps/> <w:UseFELayout/> </w:Compatibility> <m:mathPr> <m:mathFont m:val="Cambria Math"/> <m:brkBin m:val="before"/> <m:brkBinSub m:val="--"/> <m:smallFrac m:val="off"/> <m:dispDef/> <m:lMargin m:val="0"/> <m:rMargin m:val="0"/> <m:defJc m:val="centerGroup"/> <m:wrapIndent m:val="1440"/> <m:intLim m:val="subSup"/> <m:naryLim m:val="undOvr"/> </m:mathPr></w:WordDocument> </xml><![endif]--><!-- [if gte mso 9]><xml> <w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="true" DefSemiHidden="true" DefQFormat="false" DefPriority="99" LatentStyleCount="267"> <w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Normal"/> <w:LsdException Locked="false" Priority="9" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="heading 1"/> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 2"/> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 3"/> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 4"/> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 5"/> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 6"/> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 7"/> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 8"/> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 9"/> <w:LsdException Locked="false" Priority="39" Name="toc 1"/> <w:LsdException Locked="false" Priority="39" Name="toc 2"/> <w:LsdException Locked="false" Priority="39" Name="toc 3"/> <w:LsdException Locked="false" Priority="39" Name="toc 4"/> <w:LsdException Locked="false" Priority="39" Name="toc 5"/> <w:LsdException Locked="false" Priority="39" Name="toc 6"/> <w:LsdException Locked="false" Priority="39" Name="toc 7"/> <w:LsdException Locked="false" Priority="39" Name="toc 8"/> <w:LsdException Locked="false" Priority="39" Name="toc 9"/> <w:LsdException Locked="false" Priority="35" QFormat="true" Name="caption"/> <w:LsdException Locked="false" Priority="10" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Title"/> <w:LsdException Locked="false" Priority="1" Name="Default Paragraph Font"/> <w:LsdException Locked="false" Priority="11" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Subtitle"/> <w:LsdException Locked="false" Priority="22" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Strong"/> <w:LsdException Locked="false" Priority="20" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Emphasis"/> <w:LsdException Locked="false" Priority="59" SemiHidden="false" UnhideWhenUsed="false" Name="Table Grid"/> <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Placeholder Text"/> <w:LsdException Locked="false" Priority="1" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="No Spacing"/> <w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading"/> <w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List"/> <w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid"/> <w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1"/> <w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2"/> <w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1"/> <w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2"/> <w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1"/> <w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2"/> <w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3"/> <w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List"/> <w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading"/> <w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List"/> <w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid"/> <w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 1"/> <w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 1"/> <w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 1"/> <w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1"/> <w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1"/> <w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 1"/> <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Revision"/> <w:LsdException Locked="false" Priority="34" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="List Paragraph"/> <w:LsdException Locked="false" Priority="29" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Quote"/> <w:LsdException Locked="false" Priority="30" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Intense Quote"/> <w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 1"/> <w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1"/> <w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1"/> <w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1"/> <w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 1"/> <w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 1"/> <w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 1"/> <w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 1"/> <w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 2"/> <w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 2"/> <w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 2"/> <w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2"/> <w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2"/> <w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 2"/> <w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 2"/> <w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2"/> <w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2"/> <w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2"/> <w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 2"/> <w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 2"/> <w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 2"/> <w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 2"/> <w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 3"/> <w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 3"/> <w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 3"/> <w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3"/> <w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3"/> <w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 3"/> <w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 3"/> <w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3"/> <w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3"/> <w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3"/> <w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 3"/> <w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 3"/> <w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 3"/> <w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 3"/> <w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 4"/> <w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 4"/> <w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 4"/> <w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4"/> <w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4"/> <w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 4"/> <w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 4"/> <w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4"/> <w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4"/> <w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4"/> <w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 4"/> <w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 4"/> <w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 4"/> <w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 4"/> <w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 5"/> <w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 5"/> <w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 5"/> <w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5"/> <w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5"/> <w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 5"/> <w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 5"/> <w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5"/> <w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5"/> <w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5"/> <w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 5"/> <w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 5"/> <w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 5"/> <w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 5"/> <w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 6"/> <w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 6"/> <w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 6"/> <w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6"/> <w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6"/> <w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 6"/> <w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 6"/> <w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6"/> <w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6"/> <w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6"/> <w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 6"/> <w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 6"/> <w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 6"/> <w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 6"/> <w:LsdException Locked="false" Priority="19" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Subtle Emphasis"/> <w:LsdException Locked="false" Priority="21" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Intense Emphasis"/> <w:LsdException Locked="false" Priority="31" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Subtle Reference"/> <w:LsdException Locked="false" Priority="32" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Intense Reference"/> <w:LsdException Locked="false" Priority="33" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Book Title"/> <w:LsdException Locked="false" Priority="37" Name="Bibliography"/> <w:LsdException Locked="false" Priority="39" QFormat="true" Name="TOC Heading"/> </w:LatentStyles> </xml><![endif]--><!-- [if gte mso 10]> <style> /* Style Definitions */ table.MsoNormalTable {mso-style-name:普通表格; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.5pt; mso-bidi-font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi; mso-font-kerning:1.0pt;} </style> <![endif]-->
SSH 整合笔记
1. 加入 struts2 的环境
1.1 加入必须 jar 包
Commons-fileupload-*.jar
Freemarker-*.jar
Ognl-*.jar
Struts1-core-*.jar
Xwork-core-*.jar
1.2 配置 web.xml, 将请求交给 struts 来处理
< filter >
< filter-name > s </ filter-name >
< filter-class > org.apache.struts2.dispatcher.ng.
filter.StrutsPrepareAndExecuteFilter </ filter-class >
</ filter >
< filter-mapping >
< filter-name > s </ filter-name >
< url-pattern > /* </ url-pattern >
</ filter-mapping >
1.3 加入 struts.xml 文件
---- 加入 struts 的 tld 标签库引入
|--- 在已经加入的 struts2-core-*.jar 包 struts-2.0.dtd 中有
1.4 写一个 Action, 并配置到 struts.xml 中
----com.xcz.action.UserAction
------------------------------------------------------------------
< package name = "struts" extends = "struts-default" >
< action name = "userdo" class = "com.xcz.action.UserAction" >
< result name = "index" > index.jsp </ result >
</ action >
</ package >
------------------------------------------------------------------
2. 加入 Hibernate 的环境
2.1 加入必须的 jar 包
antlr-*.jar// 其他工具辅助包
commons-collection-*.jar// 必须的集合类工具包
dom4j-*.jar//hibernate 靠其读写 xml 配置文件
hibernate*.jar// 核心包
jta-*.jar//jta 规范包
db-connection-java-*.jar// 数据库连接包
// 以下的包 hibernate 版本不一样,存在差异
javassist-*.jar// 字节码增强包(更高版本已经换成 [cglib.jar]+[asm.jar]+[asm-attrs.jar] )
slf4j-api-*.jar//
slf4j-nop-*.jar//
2.2 加入 hibernate.cfg.xml
---- 加入 hibernate 的 tld 标签库引入 ( 注意配置文件引入的 dtd 头,这里是 Hibernate Configuration DTD )
|--- 在已经加入的 hibernate3.jar 包中 /org/hibernate/hibernate-configuration-3.0.dtd 中有
----------------------------------------------------------------------------------------------
<! DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd" >
----------------------------------------------------------------------------------------------
---- 写入数据库连接属性
-----------------------------------------------------------------------------------------------
< hibernate-configuration >
< session-factory >
< property name = "hibernate.connection.driver_class" > com.mysql.jdbc.Driver </ property >
< property name = "hibernate.connection.url" > jdbc:mysql://localhost :3306/db_ssh </ property >
< property name = "hibernate.dialect" > org.hibernate.dialect.MySQLDialect </ property >
< property name = "hibernate.connection.username" > root </ property >
< property name = "hibernate.connection.password" > mysql </ property >
< property name = "show_sql" > true </ property >
</ session-factory >
</ hibernate-configuration >
-----------------------------------------------------------------------------------------------
2.3 写实体类 User( 多个对应一个 Derpartment) 、 Derpartment( 对应一个 Set<User>)
2.4 在实体类的包下分别写 xml 映射文件 Xxxx.hbm.xml( 注意配置文件引入的 dtd 头,这里是 Hibernate Mapping DTD )
User.hbm.xml
----------------------------------------------------------------------------------------------
<! DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd" >
< hibernate-mapping >
< class name = "com.xcz.domain.User" table = "t_user" >
< id name = "id" column = "id" length = "36" >
< generator class = "uuid.hex" />
</ id >
< property name = "username" length = "20" />
< property name = "password" length = "20" />
<!—- 多对一指向 deptid ( 外键 )-->
< many-to-one name = "dept" column = "deptid" class = "com.xcz.domain.Department" />
</ class >
</ hibernate-mapping >
----------------------------------------------------------------------------------------------
Derpartment.hbm.xml
----------------------------------------------------------------------------------------------
<! DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd" >
< hibernate-mapping >
< class name = "com.xcz.domain.Department" table = "t_dept" >
< id name = "id" column = "id" length = "36" >
< generator class = "uuid.hex" />
</ id >
< property name = "dname" length = "50" />
< set name = "users" inverse = "true" > <!-- 一对多 Set 集合属性配置 -->
< key column = "deptid" /> <!—column 就是 多对一指向的属性 -->
< one-to-many class = "com.xcz.domain.User" />
</ set >
</ class >
</ hibernate-mapping >
----------------------------------------------------------------------------------------------
3. 加入 Spring
3.1 加入 Spring 的必须 jar 包以及整合的 jar 包
Aspectjrt.jar
Aspectjweaver.jar
Commons-loggin.jar
Log4j-*.jar
Spring.jar
Struts2-spring-plugin-*.jar
3.2 配置 web.xml( 文件加载的时候 )
注:在 SSH 中,接收请求的 Servlet 是由 Struts 的 ActionServlet 来配置的,因此此时就不能够使用 DispatchServlet 来接受请求。为了能在此时能过加载 Spring 的 Bean 配置,可以在 Web.xml 中配置一个监听器,并通过 <context-param> 指定 xml 文件名。
--------------------------------------------------------------------------------------------
< context-param >
< param-name > contextConfigLocation </ param-name >
<!-- ,classpath *:applicationContext-*.xml ,/WEB-INF/applicationContext*.xml -->
< param-value > classpath *:applicationContext*.xml </ param-value >
</ context-param >
< listener >
< listener-class > org.springframework.web.context.ContextLoaderListener </ listener-class >
</ listener >
--------------------------------------------------------------------------------------------
3.3 添加 spring 的配置文件 applicationContext.xml
注:加入配置文件引入的 dtd 头
--------------------------------------------------------------------------------------------
< beans xmlns = "http://www.springframework.org/schema/beans"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xmlns:aop = "http://www.springframework.org/schema/aop"
xmlns:tx = "http://www.springframework.org/schema/tx"
xsi:schemaLocation = "
htt p://www.springframework.org/schema/beans ht tp://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd" >
<bean>
--------------------------------------------------------------------------------------------
3.4 在 applicationContext*.xml 中 SessionFactory 的配置
注:配置 SessionFactory 对象,为 DAO 层提供 Hibernate 的数据库连接对象,其中需要注入 2.2 中配置的 DataSource 。
--------------------------------------------------------------------------------------------
< bean name = "sessionFactory" class = "org.springframework.orm.hibernate3.LocalSessionFactoryBean" >
< property name = "configLocation" value = "class:hibernate.cfg.xml" />
</ bean >
--------------------------------------------------------------------------------------------
3.5 在 applicationContext*.xml 中配置事务
注:为 SessionFactory 对象添加事务配置组件,并注入 3.3 中配置的 SessionFactory 对象。
--------------------------------------------------------------------------------------------
< bean name = "transactionManager" class = "org.springframework.orm.hibernate3.HibernateTransactionManager" >
< property name = "sessionFactory" ref = "sessionFactory" ></ property >
</ bean >
--------------------------------------------------------------------------------------------
3.6 编写 DAO
注: Dao 需要继承 HibernateDaoSupport
--------------------------------------------------------------------------------------------
public class UserDaoImpl extends HibernateDaoSupport implements UserDao {
public void addUser(User user) {
this.getHibernateTemplate().save(user);
}
public User getUser(String id) {
return (User) this.getHibernateTemplate().get(User.class, id);
}
public void updateUser(User user) {
this.getHibernateTemplate().update(user);
}
public User getByUsername(String username) {
return (User) this.getSession().createQuery(
"from User where username = ?").setParameter(0, username).uniqueResult();
}
}
--------------------------------------------------------------------------------------------
3.7 在 applicationContext*.xml 中配置 DAO 中的 Bean ,并注入 SessionFactory
--------------------------------------------------------------------------------------------
< bean id = "userDao" class = "com.chinasofti.dao.impl.UserDaoImpl" >
< property name = "sessionFactory" >
< ref bean = "sessionFactory" />
</ property >
</ bean >
--------------------------------------------------------------------------------------------
3.8 写一个 Action, 并配置到 applicationContext*.xml ,并注入需要的类
--------------------------------------------------------------------------------------------
< bean id = "userAction" class = "com.chinasofti.action.UserActoin" scope = "prototype" >
< property name = "userService" ref = "userService" />
< property name = "departmentService" ref = "departmentService" />
</ bean >
--------------------------------------------------------------------------------------------
- SSH整合笔记.rar (24.3 KB)
- 下载次数: 0
发表评论
-
ssh3
2012-09-19 18:54 03.3 添加spring 的配置文件applicationCo ... -
ssh2
2012-09-19 18:53 0------------------------------- ... -
ssh1
2012-09-19 18:52 0SSH整合笔记 1.加入 struts2的环境 1 ... -
Struts2
2012-09-18 14:29 8221.Model1: 以纯JSP+JavaBeand的方式实现开 ... -
spring(I)
2012-09-02 11:09 918import org.springframework ... -
Hibernate之对象关系
2012-08-28 14:39 8632. 类关联映射 2.1 Many-to-One // ... -
Hibernate之开发环境搭建
2012-08-27 12:30 757Hibernate 学习 *学习思 ...
相关推荐
### SSH整合笔记和配置文件解析 #### SSH框架简介 SSH指的是Struts2、Spring以及Hibernate三个开源框架的集成应用,它们分别是MVC框架、轻量级IoC容器和ORM持久层框架。在实际项目开发中,这三个框架经常被一起使用...
### SSH整合笔记 #### 一、三大框架整合 在企业级应用开发中,Spring、Struts2 和 Hibernate 组合起来被广泛称为 SSH 框架。这些框架各自解决了不同的问题,但组合在一起可以提供一个非常强大的解决方案。下面将...
### SSH框架整合知识点详解 #### 一、框架的搭建与配置 SSH框架指的是Spring、...需要注意的是,本篇笔记仅为SSH框架整合的一部分内容,完整的SSH框架还包括Spring和Hibernate的集成,涉及到更多的配置和编码工作。
【Java事务管理与SSH整合】 在Java开发中,事务管理是确保数据一致性的重要手段,而SSH(Spring、Struts和Hibernate)是常见的企业级应用框架整合。本笔记将重点讨论Spring中的AOP(面向切面编程)以及事务管理,...
### J2EE SSH整合知识点详解 #### 一、概述 SSH框架是指Spring、Struts以及Hibernate这三个开源框架的集成应用,常被用于构建企业级Java应用程序。本文将围绕如何实现这三个框架的有效集成展开讨论,旨在为新手提供...
SSH整合的关键在于Spring如何协调Struts和Hibernate。Spring可以管理Struts的Action实例,通过依赖注入的方式提供业务服务。同时,Spring可以作为Hibernate的事务管理器,处理数据库的事务。这种整合减少了各框架间...
SSH框架整合是将Spring、Struts和Hibernate三个流行的开源Java Web开发框架集成在一起,以构建高效、可维护的Web应用程序。下面将详细讲解SSH框架整合的各个部分。 一、Spring整合Hibernate 1. **无需Hibernate...
SSH学习笔记3主要聚焦于三个Java企业级开发框架——STRUTS、SPRING和HIBERNATE的集成与应用。这三个框架是Java后端开发中非常重要的组件,它们各自负责不同的层面,共同构建了一个强大的MVC(Model-View-Controller...
下面,我们将基于提供的“ssh整合学习笔记(图解)”这一主题,深入探讨SSH整合的关键知识点,以及如何在实践中运用这些框架。 ### Spring框架 Spring框架是一个开源的应用框架,其核心特性包括依赖注入(DI)、...
### J2EE(SSH整合)开发基础 J2EE(Java 2 Platform, Enterprise Edition)是一个企业级Java平台的标准,用于开发和部署可移植、健壮、安全、多用户的应用程序。SSH框架整合是指将Spring、Struts和Hibernate这三个...
ssh整合相关笔记.pdf
SSH整合是指将Spring、Struts2和Hibernate这三个流行的开源Java框架进行集成,以构建高效、模块化的Web应用程序。这三个框架分别负责不同的职责:Spring作为应用的基石,提供依赖注入(DI)和面向切面编程(AOP);...
SSH整合是Java Web开发中的一种常见模式,它指的是Spring、Struts2和Hibernate这三大开源框架的集成。这种集成能够构建出高效、可维护的Web应用程序。以下是对SSH整合的详细解析: 一、Spring框架 Spring是Java企业...
**SSH2整合笔记** 在IT行业中,SSH2(Struts2、Spring、Hibernate)整合是Java Web开发中常见的技术栈,它将三个强大的框架结合在一起,以实现高效、灵活和可维护的Web应用。SSH2整合是提升开发效率,简化项目架构...
SSH整合学习笔记之spring与hibernate简单整合的源码---对应我的博客文章 http://blog.csdn.net/wanghantong/article/details/6653482
在SSH整合中,Spring主要负责管理Bean的生命周期和事务处理。 1. **配置Spring**:首先,需要创建Spring的配置文件(如`applicationContext.xml`),在这里声明Bean并定义它们的依赖关系。例如,配置DataSource、...
六、Spring框架中的SSH整合 在Java开发中,SSH通常指Spring、Struts和Hibernate的集成。Spring是一个全面的轻量级应用框架,Struts是MVC模式的实现,Hibernate则是一个对象关系映射(ORM)框架。将这三个框架整合在...
SSH整合是指将Spring、Struts2和Hibernate这三个开源框架整合在一起,用于构建高效、灵活的Java Web应用程序。在本文中,我们将逐步解析SSH整合的四个关键步骤。 **第一步:引入Spring支持** 首先,我们需要创建一...