1. 程式人生 > >SSM搭建

SSM搭建

需要 模型 整合 上一個 調用 定制 連接數 del soft

發現項目源碼沒有了,只好把搭建時的資料發上來,希望用到的時候還能記得~~~

按照本項目從無到有,起於項目創建,通過JDBC測試數據庫連接,使用myBatis映射數據庫。新建項目,除去JDBC,加入spring framework。

SSM(Spring+SpringMVC+myBatis)整合

1. 基本概念

1.1 Spring

Spring是一個開源框架,輕量級java開發框架。使用IoC(控制反轉)容器將各個對象隔離降耦,後來提出IoC的本質概念injection dependency。

1.2 SpringMVC

MVC全名是Model View Controller, 是模型-視圖-控制器的縮寫。Spring MVC分離了控制器,對象,分派器以及處理程序對象的角色,使得它們更容易進行定制。

1.3 MyBatis

MyBatis 使用簡單的 XML或註解用於配置和原始映射,將接口和 Java 的POJOs(Plain Old Java Objects,普通的 Java對象)映射成數據庫中的記錄。

2. 建立java project,使用JDBC

JDE:myeclipse

DB:Oracle 使用PLSQL連接

Jar包:mysql-connector-java-5.1.34.jar

Ojdbc6.jar

2.1 基本配置

下載jar包,在項目下新建一個lib文件夾,將jar包放入。

右鍵打開properties-Java Build Path-Librareia-Add JARs,選擇這兩個個jar包導入。

2.2 新建table

SQL語句:

2.3 建立JDBC屬性文件(mysql沒有driver這一個參數,ulr也和mysql不同,註意區分)

2.4 根據table建立實體類(User.java)

2.5 DAO接口文件(UserDAO.java)

在這個文件中連接並調用數據庫,主要包括以下步驟:

① 取得JDBC屬性文件中的參數

② 加載JDBC.ORCLE驅動(連接mysql沒有這一句)

③ 分配一個Connection對象,連接數據庫

④ 分配statement對象,從返回的resultset中檢索數據,然後按照順序關閉ResultSet,Statement(preparedStatement), Connection

2.6 運行UserDAO.java

結果:讀取了table內容

3. 使用mybatis

與上一個項目區別:棄用userDAO.java

Jar包:Mybatis-3.2.1.jar,並且導入

3.1 建立Mybatis的配置文件mybatis-config.xml

格式基本都是固定的,幾個標簽的順便不可改變,常用的幾個configuration見我寫的Mybatis相關.doc。

3.2 已經定義好了實體類文件User.java,現在定義操作users表的sql映射文件userMapper.xml

創建一個包,專門存放sql映射文件,新建userMapper.xml

首先需要為這個mapper指定一個唯一的namespace,namespace習慣上設置為包名+sql映射文件名,這樣就能保證namespaces值的唯一性。

3.3 在mybatis-config.xml文件中註冊userMapper.xml文件

<mappers>

<mapper resource = “mybatis/sqltest/userMapper.xml”/>

</mappers>

註意,字符串裏的間斷都是/而不是 . 。

3.4 編寫測試代碼:執行定義的select語句

Main method主要包括以下一個步驟:

a.Mybatis配置文件: String resource = “mybatis-config.xml”;

b.使用類加載器加載mybatis配置文件:

InputStream is = Test1.class.getClassLoader().getResourceAsStream(resource);

c. 構建sqlSession的工廠
             SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(is);
d. 創建能執行映射文件中sql的sqlSession
             SqlSession session = sessionFactory.openSession();
e.執行查詢返回一個唯一user對象的sql, 字符串是userMapper.xml文件中mapper標簽的namespace屬性的值,getUser是select標簽的id屬性值
             User user = session.selectOne("me.gacl.mapping.userMapper.getUser", 1);
3.5   運行,得到結果顯示如下:
4. Spring + mybatis
新建web項目TEMP,去掉userDao和test.java,其余保留。
三大框架的整合有兩個配置文件ApplicationContext.xml, ApplicationContext-mvc.xml和兩個資源文件分別為db.properties,log4j.properties。完整的目錄結構如下:
增加Jar包:spring-core,spring-web,spring-xom,spring-tx,spring-jdbc,spring-webmvc,spring-aop,spring-context-support,spring-test,mybatis-spring,javaee-api,commons-dbcp,jst1,log4j,fastjson,slf4j-api,slf4j-log4j12,Jackson-mapper-asl,commons-fileupload,commons-io,commons-codec
4.1 引入jar包
4.2 Spring和mybatis的整合
  4.2.1 完善JDBC屬性文件
   4.2.2 建立AppllicationContext.xml(spring-mybatis.xml)配置文件
此文件就是用來完成spring和mybatis的整合。主要的功能是啟用註解, 自動掃描,自動諸如,配置數據庫等。

SSM搭建