1. 程式人生 > >SSH全註解-annotation詳細配置

SSH全註解-annotation詳細配置

使用 Spring 2.5 註釋驅動的 IoC 功能 https://www.ibm.com/developerworks/cn/java/j-lo-spring25-ioc/ 
只是參考. 

先根據http://panyongzheng.iteye.com/blog/1103591配置好無註解,然後在根據下面的設定來實現全註解。當然,你可以只直接Spring和Hibernate,Struts.xml的東西依然儲存。這個看你喜歡。 

@Results也可以用於整個Action註解,跟在@ParentPackage("struts-default") 註解的後面,那麼這個@Result就相對應整個類。 

1.只註解Sprint & Hibernate的內容。 
2.Struts,Spring,Hibernate全部註解。 
3.使用萬用字元配置result。 



1.實現Spring & Hibernate註解(這裡不針對Struts使用註解): 
web.xml 
Xml程式碼  收藏程式碼
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <web-app version="3.0"   
  3.     xmlns="http://java.sun.com/xml/ns/javaee"   
  4.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   
  5.     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   
  6.     http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">  
  7.       <display-name></display-name>   
  8.       <context-param>    
  9.           <param-name>contextConfigLocation</param-name>    
  10.           <param-value>/WEB-INF/classes/applicationContext.xml</param-value>    
  11.       </context-param>    
  12.       <listener>    
  13.           <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>    
  14.       </listener>  
  15.       <filter>  
  16.         <filter-name>struts2</filter-name>  
  17.         <filter-class>  
  18.             org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter  
  19.         </filter-class>  
  20.       </filter>  
  21.       <filter-mapping>  
  22.         <filter-name>struts2</filter-name>  
  23.         <url-pattern>/*</url-pattern>  
  24.       </filter-mapping>  
  25.       <welcome-file-list>  
  26.         <welcome-file>login.jsp</welcome-file>  
  27.         <welcome-file>index.jsp</welcome-file>  
  28.       </welcome-file-list>   
  29. </web-app>  



struts.xml,class定義的Action,應該跟Spring的註解@Controller("LoginAction")對應。 
Xml程式碼  收藏程式碼
  1. <?xml version="1.0" encoding="UTF-8" ?>  
  2. <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">  
  3. <struts>  
  4.     <package name="struts2" extends="struts-default" namespace="/">  
  5.         <action name="login" class="LoginAction">  
  6.             <result>/index.jsp</result>  
  7.             <result name="input">/login.jsp</result>  
  8.         </action>  
  9.     </package>  
  10. </struts>  
    


applicationContext.xml 
Xml程式碼  收藏程式碼
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <beans xmlns="http://www.springframework.org/schema/beans"  
  3.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   
  4.     xmlns:p="http://www.springframework.org/schema/p"  
  5.     xmlns:tx="http://www.springframework.org/schema/tx"    
  6.     xmlns:aop="http://www.springframework.org/schema/aop"    
  7.     xmlns:context="http://www.springframework.org/schema/context"   
  8.     xsi:schemaLocation="  
  9.         http://www.springframework.org/schema/beans   
  10.         http://www.springframework.org/schema/beans/spring-beans-3.0.xsd  
  11.         http://www.springframework.org/schema/aop   
  12.         http://www.springframework.org/schema/aop/spring-aop-3.0.xsd  
  13.         http://www.springframework.org/schema/context   
  14.         http://www.springframework.org/schema/context/spring-context-3.0.xsd   
  15.         http://www.springframework.org/schema/tx   
  16.         http://www.springframework.org/schema/tx/spring-tx-3.0.xsd   
  17.         ">  
  18.     <aop:aspectj-autoproxy proxy-target-class="true"/>    
  19.     <context:annotation-config />  
  20.     <context:component-scan base-package="com" />  
  21.     <tx:annotation-driven transaction-manager="transactionManager" />   
  22.     <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">  
  23.         <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver">  
  24.         </property>  
  25.         <property name="url"  
  26.             value="jdbc:sqlserver://localhost:1433;databaseName=CITYU_DEV_TEST">  
  27.         </property>  
  28.         <property name="username" value="sa"></property>  
  29.         <property name="password" value="asl12345"></property>  
  30.     </bean>  
  31.     <bean id="sessionFactory"  
  32.         class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean"  
  33.         p:dataSource-ref="dataSource" p:packagesToScan="com.pojo"  
  34.         >  
  35.         <property name="hibernateProperties">  
  36.             <props>  
  37.                 <prop key="hibernate.dialect">  
  38.                     org.hibernate.dialect.SQLServerDialect  
  39.                 </prop>  
  40.             </props>  
  41.         </property>  
  42.     </bean>  
  43.     <bean id="transactionManager"    
  44.         class="org.springframework.orm.hibernate3.HibernateTransactionManager">    
  45.         <property name="sessionFactory" ref="sessionFactory" />    
  46.     </bean>  
  47. </beans>  


DAO: 
Java程式碼  收藏程式碼
  1. package com.dao.impl;  
  2. import java.util.List;  
  3. import org.hibernate.SessionFactory;  
  4. import org.springframework.beans.factory.annotation.Autowired;  
  5. import org.springframework.orm.hibernate3.support.HibernateDaoSupport;  
  6. import org.springframework.stereotype.Repository;  
  7. import com.dao.IDAO_TEST_TABLE;  
  8. import com.pojo.TestTable;  
  9. @Repository("DAO_TEST_TABLE")  
  10. public class DAO_TEST_TABLE extends HibernateDaoSupport implements IDAO_TEST_TABLE {  
  11.     /* (non-Javadoc) 
  12.      * @see com.dao.impl.IDAO_TEST_TABLE#list() 
  13.      */  
  14.     @Autowired  
  15.     public void setSessionFactoryOverride(SessionFactory sessionFactory){  
  16.         super.setSessionFactory(sessionFactory);  
  17.     }  
  18.     @Override  
  19.     public List<TestTable> list(){  
  20.         return getHibernateTemplate().find("from TestTable order by id.userName");  
  21.     }  
  22.     /* (non-Javadoc) 
  23.      * @see com.dao.impl.IDAO_TEST_TABLE#save(com.pojo.TestTable) 
  24.      */  
  25.     @Override  
  26.     public void save(TestTable t){  
  27.         getHibernateTemplate().save(t);  
  28.     }  
  29. }  


Service: 
Java程式碼  收藏程式碼
  1. package com.service.impl;  
  2. import java.util.List;  
  3. import javax.annotation.Resource;  
  4. 相關推薦

    SSH註解-annotation詳細配置

    使用 Spring 2.5 註釋驅動的 IoC 功能 https://www.ibm.com/developerworks/cn/java/j-lo-spring25-ioc/  只是參考.  先根據http://panyongzheng.iteye.com/blog/1103591配置好無註解,

    ssh註解整合

    dialect BE pen intercept 監聽 head oca resource ansi 使用註解的方式,配置文件最少可以精簡到三個,web.xml、applicationContext.xml和struts.xml。Hibernate可以完全交給Spring來

    springmvc.xml(註解和非註解詳細配置)

    註解和非註解的一些配置說明,方便自己以後檢視! 非註解如下: <!--非註解開始 --> <!--非註解的處理器介面卡 --> <!-- 處理器介面卡的配置 所有的處理器介面卡都需要實現HandlerAdapter介面 -->

    ssh註解出現的一些問題

    1、ssh全註解當我們繼承hibernatedaosupport類時出現如下錯誤資訊: Caused by: java.lang.IllegalArgumentException: 'sessionFactory' or 'hibernateTemplate' is req

    ssh註解框架整合

    1、ssh框架開發的應用層級結構 j2ee應用可以分為3層: 1、表示層2、業務邏輯層3、資料服務層ssh將應用分層更加細化(ssh將業務邏輯層劃分了4層): 1、action層(控制層mvc中的c層)2、service層  (業務層mvc中的m層)3、dao層(資料訪問層

    SSH註解搭建

    import java.io.Serializable; import java.util.Set; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import java

    【JavaEE】SSH註解

    1.下載必要核心jar包,並引入到專案 2.需要注意的spring配置檔案,由與需要使用全註解的方式 配置檔案和之前有些許不同 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="htt

    SSH註解式開發

    第一步:引入註解的jar包 struts2-convention-plugin-2.3.16.3.jar struts2的註解 Struts2:替換掉struts.xml檔案 在Action類的上面放上: 替換掉struts.xml裡面的namespace: @Namesp

    註解方式配置SpringMVC

    http 步驟 package 什麽 -1 alt ges con 報錯 1.在J2EE三層的註解: 表現層:@Controller 業務層: @Service 持久層: @Repository 其他: @Component 註解起效需要幾方: 1.需要一個註解 2.直接貼

    註解配置SSM

    新建Maven工程,打包方式 war: 修改pom.xml 檔案增加依賴: <dependencies> <!-- 配置spring-webmvc就不用配spring-context了 --> <dependency> <gro

    Spring依賴注入(構造引數注入、集合,陣列屬性注入、XML自動注入 ,註解配置

    依賴注入 構造引數注入        --> 常用的是方案一和方案二         MyBean類  YouBean類 <?xml version="1.0" encodin

    mybatis spring 註解配置

    pom引入jar包 <!-- mybatis jar start --> <!-- mybatis核心包 --> <dependency> <groupId>org.mybatis<

    Spring MVC通過註解(annotation)配置Bean

    Spring能夠在classpath下自動掃描,偵測和例項化具有特定註解的元件,這在Spring中稱為元件掃描(Component scanning).特定元件的註解包括:    @Component:基本註解,標識了一個受spring管理的元件.      @Reposit

    Spring3+SpingMVC+Hibernate4註解環境配置

    我沒有使用maven,直接使用Eclipse建立動態Web專案,jar包複製在了lib下。這樣做導致我馬上概述的專案既依賴Eclipse和其專案結構,又依賴我複製在lib下的那些jar包版本。jar包下載地址:http://pan.baidu.com/s/1gdARAy3但是

    SSH進階(六)SSSHJ---註解開發

    SSSHJ---全註解開發 SpringMVC、Spring、SpringData、HiberanteJPA、MySQL 之前的文章當中提及過HiberanteJPA它完成的其實就是利用註解的方式將類與表,行和物件,欄位與屬性關聯起來的一種實現,在這裡我們將其與Sprin

    spring 自定義註解annotation+aspect 環繞通知配置對dubbo的consumer監控報警

    背景: 對dubbo 的consumer端進行統一監控,實現consumer的統一異常處理、前置provider服務的可用性校驗(若dubobo服務不可以發簡訊提醒) 思路: (1)自定義annotation,僅作用在類、方法上。減少程式碼耦合性,consumer的

    利用註解實現ssh的一個完整例子

    在一個稍大的專案中,通常會有上百個元件,如果這些元件採用xml的bean定義來配置,顯然會增加配置檔案的體積,查詢以及維護起來也不太方便。個人也不喜歡配置那麼多的xml檔案。下面我們就利用java的註解實現ssh框架,註解相當於一種標記加了註解就等於打上了某種標記,沒加,則

    史上最使用Nexus搭建Maven伺服器詳細配置

    為什麼要搭建nexus私服,原因很簡單,有些公司都不提供外網給專案組人員,因此就不能使用maven訪問遠端的倉庫地址,所以很有必要在局域網裡找一臺有外網許可權的機器,搭建nexus私服,然後開發人員連到這臺私服上,這樣的話就可以通過這臺搭建了nexus私服的電腦訪問mav

    Spring MVC之最簡專案配置(註解)

    Environment: Java 1.8.0_131 maven 3.5.0 InteliJ IDEA 2017.1.4 tomcat 8.5.15 簡介 Spring 的目的在於簡化Java EE應用程式的開發,依賴注

    Spring對註解(Annotation)處理原始碼分析2——解析和注入註解配置的資源

    1.類內部的註解,如:@Autowire、@Value、@Required、@Resource以及EJB和WebSerivce相關的註解,是容器對Bean物件例項化和依賴注入時,通過容器中註冊的Bean後置處理器處理這些註解的。 2.Spring中處理註解的Bean後置處