1. 程式人生 > >java用全註解實現ssh的一個完整例子

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

在一個稍大的專案中,通常會有上百個元件,如果這些元件採用xml的bean定義來配置,顯然會增加配置檔案的體積,查詢以及維護起來也不太方便。個人也不喜歡配置那麼多的xml檔案。下面我們就利用java的註解實現ssh框架,註解相當於一種標記加了註解就等於打上了某種標記,沒加,則等於沒有某種標記,以後,javac編譯器,開發工具包和其他程式可以用反射來了解你的類以及各種元素上有何種標記,看你有什麼標記,就去幹相應的事,標記可以載入包,類,欄位,方法,方法的引數以及區域性變數上。關於註解在這裡不多說,網上大把資料。

先看看完整的工程目錄吧

1.為了使用註解我們需要配置web.xml檔案,在web-inf目錄下內容如下

  1. <?xmlversion="1.0"encoding="UTF-8"?>
  2. <web-appversion="2.5"
  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_2_5.xsd">
  7.     <!-- 載入spring配置檔案 -->
  8.   <context-param>
  9.         <param-name>contextConfigLocation</param-name>
  10.         <param-value>
  11.             classpath*:applicationContext*.xml  
  12.         </param-value>
  13.     </context-param>
  14.     <listener>
  15.      <listener-class>
  16.          org.springframework.web.context.ContextLoaderListener  
  17.      </listener-class>
  18.  </listener>
  19.  <!-- struts2 的配置 -->
  20.  <filter>
  21.     <filter-name>struts2</filter-name>
  22.     <filter-class>
  23.         org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter  
  24.     </filter-class>
  25.     <init-param>
  26.                <!--  //固定格式-->
  27.                 <param-name>actionPackages</param-name>
  28.                 <param-value>com.ssh</param-value>
  29.     </init-param>
  30.   </filter>
  31.   <filter-mapping>
  32.     <filter-name>struts2</filter-name>
  33.     <url-pattern>/*</url-pattern>
  34.   </filter-mapping>
  35.   <display-name></display-name>
  36.   <welcome-file-list>
  37.     <welcome-file>index.jsp</welcome-file>
  38.   </welcome-file-list>
  39. </web-app>


2.接下來看看spring和hibernate的配置檔案applicationContext.xml

  1. <?xmlversion="1.0"encoding="UTF-8"?>
  2. <beansxmlns="http://www.springframework.org/schema/beans"
  3.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4.     xmlns:context="http://www.springframework.org/schema/context"
  5.     xmlns:aop="http://www.springframework.org/schema/aop"
  6.     xmlns:tx="http://www.springframework.org/schema/tx"
  7.     xsi:schemaLocation="  
  8.             http://www.springframework.org/schema/beans  
  9.             http://www.springframework.org/schema/beans/spring-beans.xsd  
  10.             http://www.springframework.org/schema/context  
  11.             http://www.springframework.org/schema/context/spring-context.xsd  
  12.             http://www.springframework.org/schema/aop  
  13.             http://www.springframework.org/schema/aop/spring-aop.xsd  
  14.             http://www.springframework.org/schema/tx  
  15.             http://www.springframework.org/schema/tx/spring-tx.xsd">
  16.     <!-- 使用 annotation -->
  17.     <context:annotation-config/>
  18.     <!-- 使用 annotation 自動註冊bean,並檢查@Controller, @Service, @Repository註解已被注入 -->
  19.     <context:component-scanbase-package="com.ssh"/>
  20.     <!-- 資料庫配置 -->
  21.     <beanid="dataSource"
  22.         class="org.apache.commons.dbcp.BasicDataSource">
  23.         <propertyname="driverClassName"
  24.             value="com.mysql.jdbc.Driver">
  25.         </property>
  26.         <propertyname="url"
  27.             value="jdbc:mysql://localhost:3306/myssh">
  28.         </property>
  29.         <propertyname="username"value="anan"></property>
  30.         <propertyname="password"value="123456"></property>
  31.     </bean>
  32.     <!-- sessionFactory -->
  33. 相關推薦

    java註解實現ssh一個完整例子

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

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

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

    註解實現ssh例子

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

    java傳送lotus郵件一個完整例子

    import lotus.domino.NotesException;import lotus.domino.Session;import lotus.domino.NotesFactory;import lotus.domino.Database;import lotus.

    SSM框架實現一個echarts的例子一個調百度開發者工具的例子

    response char ons enc styles ping 地理編碼 nco swa   過年後的第一篇Blog,說實話年後的自己好慵懶,一直處於半睡半醒狀態 ̄□ ̄||。年後工作上用了好多新東西,像Spring Boot,Swagger,Jenkins,Maven,

    java正則表示式判斷一個字串是否是車牌號

    public boolean checkCarNumber(String content) { String pattern = "([京津滬渝冀豫雲遼黑湘皖魯新蘇浙贛鄂桂甘晉蒙陝吉閩貴粵青藏川寧瓊]{1}(([A-HJ-Z]{1}[A-HJ-NP-Z0-9]{5})|([A-HJ-

    Java連結串列實現

    上一篇實現了佇列,這一篇我們實現棧。 棧是後入先出的資料結構。 連結串列中插入資料有頭插法和尾插法,本篇我們使用頭插法。 不多說直接上程式碼 連結串列的節點定義和上一篇使用的是同一個,可以參考上一篇。 public class StackImpl<T> { p

    Java連結串列實現佇列

    佇列--先入先出 棧---後入先出 連結串列實現佇列和棧。首先我們需要構建一個連結串列。連結串列有哪幾要素?   1、連結串列本身的value 2、連結串列的next指標,next指標指的還是同樣型別的值。 下邊看程式碼 public class Element&l

    資料庫日期型別dateTime,javaDate接收結果多一個.0

    效果對比 前: 後:   用此方式對日期進行格式化 : DATE_FORMAT(欄位名稱,'%Y-%m-%d %H:%m:%s') 別名   示例: SELECT DATE_FORMAT(bc.`time`,'%Y-%m-%d %H

    C語言實現一個連結串列刪除指定的一個或多個元素

    #include<stdio.h> #include<stdlib.h> typedef struct node{ int data; struct node *next; }LinkList; //建立一個連結串列  LinkL

    windows下Go語言實現一個hello world

    1,下載go編譯器———go編譯器下載地址https://golang.org/dl/ go編譯器下載地址 2,然後點選進行安裝,由於是msi檔案,如果需要.NET元件請自行下載進行安裝

    資料脫敏——基於Java自定義註解實現日誌欄位脫敏

      上文說了資料過敏主要有兩個思路:第一個就是在序列化實體之前先把需要脫敏的欄位進行處理,之後正常序列化;第二個就是在實體序列化的時候,對要脫敏的欄位進行處理。 脫敏實現思路   這裡探討第一種方法,用基於自定義註解的方式實現日誌脫敏。   要對

    遞迴實現判斷一個字串是否是迴文的方法

    迴文:把相同的字串顛倒過來,產生首尾迴環,叫做迴文。 例如:1234321、1221、1。 注意:單個字元也是迴文。 下面給出兩個版本的判斷字串是否是迴文的方法。 方法一:遞迴實現判斷一個字串是

    java陣列模擬實現ArrayList以及一些常用方法實現

    package com.yys.student; /** * Created by yys on 2017/5/4. */ public class SxtArrayList { private Object[] elementDate; private

    Java反射+註解實現自動持久化小例子(程式碼未優化)

    需要實現的功能:根據實體類自動生成Sql語句與引數。 基本思路是:在實體類上標識註解,使用反射讀取註解然後拼接Sql語句。 哦了,開始研究程式碼~ 有請主人公註解:

    java bean通過註解實現校驗

    1、引入需要的jar包 <dependency> <groupId>org.hibernate</groupId> <artifactId&g

    JAVA樹結構實現目錄系統

    1使用 第一個兒子/下一兄弟表示法 來表示樹 樹節點定義如下: private class TreeNode { String data; TreeNode firstChild; TreeNode

    hibernate+註解實現各種關係對映

    本文轉自:http://blog.csdn.net/bigtree_3721/article/details/42343639 基本環境準備     我們先來看看一個具體的JPA工程示例。要執行這個示例,我們需要如下的類庫和軟體安裝配置好:    

    Java面向物件實現加減乘除

    import java.util.Scanner; class MyMath{ public int add(int a,int b){ return a + b; }

    Java自定義註解實現許可權管理

    前言 原始碼 定義許可權註解 @Target(ElementType.METHOD) @Retention(RetentionPolicy.RUNTIME) public @inter