Spring及MyBatis框架搭建

1.Spring框架

分層:SUN提供的EE的三層結構:控制層、業務層、數據訪問層(持久層)

struts:web

Hibernate數據訪問

Mybatis:數據訪問層

搭建SSM框架:

1.引入所需jar包

2.配置文件

src下面創建applicationContext.xml

完整的約束

<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:aop="http://www.springframework.org/schema/aop" 
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans 
    http://www.springframework.org/schema/beans/spring-beans-4.3.xsd 
    http://www.springframework.org/schema/mvc 
    http://www.springframework.org/schema/mvc/spring-mvc-4.3.xsd 
    http://www.springframework.org/schema/context 
    http://www.springframework.org/schema/context/spring-context-4.3.xsd 
    http://www.springframework.org/schema/aop 
    http://www.springframework.org/schema/aop/spring-aop-4.3.xsd 
    http://www.springframework.org/schema/tx 
    http://www.springframework.org/schema/tx/spring-tx-4.3.xsd">

Spring的配置文件applicationContext.xml( 配置掃描@Service @@Repository註解時,包名要與自己的相對應

<!-- 配置掃描@Service @@Repository註解 -->
<context:component-scan base-package=“com.zq.service" />

<!--讀取jdbc.properties -->
<context:property-placeholder location="classpath:jdbc.properties" />

<!-- 打開aspectj的註解開發方式 -->
<aop:aspectj-autoproxy />

<!-- 配置數據庫連接 -->
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
	<property name="driverClass" value="${driverClass}"></property>
	<property name="jdbcUrl" value="${jdbcUrl}"></property>
	<property name="user" value="${user}"></property>
	<property name="password" value="${password}"></property>
</bean>

<!-- 配置事務管理器 -->
<bean id="transactionManager"
	class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
	<property name="dataSource" ref="dataSource"></property>
</bean>

<!-- 註冊一下事務管理器的驅動 -->
<tx:annotation-driven transaction-manager="transactionManager" />

 

數據庫連接信息src下面創建jdbc.properties

driverClass=com.mysql.jdbc.Driver

jdbcUrl=jdbc:mysql://localhost:3306/shop

user=root

password=root

springMVC配置文件src下面創建springmvc-config.xml(約束同spring配置文件的約束)

同樣,配置掃描器時,包名也要和自己的相對應

<!-- 配置掃描器 -->

<context:component-scan base-package="com.zq.controller" />

<!-- 註解驅動 -->

<mvc:annotation-driven />

<!--配置靜態資源的訪問映射,此配置中的文件,將不被前端控制器攔截 -->

<mvc:resources location="/js/" mapping="/js/**" />

<mvc:resources location="/css/" mapping="/css/**" />

<mvc:resources location="/images/" mapping="/images/**" />



<!-- 配置視圖解釋器ViewResolver -->

<bean id="jspViewResolver“ class="org.springframework.web.servlet.view.InternalResourceViewResolver">

  <property name="prefix" value="/WEB-INF/jsp/" />

  <property name="suffix" value=".jsp" />

</bean>



<!-- 配置攔截器,先不加 -->

<!-- <mvc:interceptors>

  <mvc:interceptor>

  <mvc:mapping path="/**" />

  <bean class="com.zq.interceptor.LoginInterceptor" />

  </mvc:interceptor>

</mvc:interceptors> -->

配置文件---web.xml

<!-- 配置加載Spring文件的監聽器-->

<context-param>

  <param-name>contextConfigLocation</param-name>

  <param-value>classpath:applicationContext.xml</param-value>

</context-param>

<listener>

  <listener-class>

  org.springframework.web.context.ContextLoaderListener

  </listener-class>

</listener>



<!-- 防止中文亂碼,過濾器 -->

<filter>

  <filter-name>encodingFilter</filter-name>

    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>

    <init-param>

    <param-name>encoding</param-name>

    <param-value>UTF-8</param-value>

    </init-param>

</filter>

<filter-mapping>

    <filter-name>encodingFilter</filter-name>

    <url-pattern>/*</url-pattern>

</filter-mapping>
<servlet>
	<!-- 前端控制器 -->
  	<servlet-name>springmvc</servlet-name>
  	<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  
  	<!-- 初始化加載配置文件 可以不配,不配時,默認加載的springmvc的配置文件,去WEB-INF下面找:servlet的名稱-servlet.xml-->
  	<init-param>
  		<param-name>contextConfigLocation</param-name>
  		<param-value>classpath:springmvc-config.xml</param-value>
  	</init-param>
  
  	<!-- 表示容器一啓動就加載servlet -->
  	<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
	<servlet-name>springmvc</servlet-name>
  	<url-pattern>*.do</url-pattern>
	<!-- /攔截所有的請求,*.do攔截訪問請求地址後綴是.do的 -->
</servlet-mapping>

mybatis    

只負責在xml中寫sql語句,不用知道如何調用的,和dao接口一一對應

在applicationContext.xml中添加mybatis配置

<!-- 配置 MyBatis的工廠 -->

<bean class="org.mybatis.spring.SqlSessionFactoryBean">

  <!-- 數據源 -->

  <property name="dataSource" ref="dataSource" />

  <!-- 配置MyBatis的核心配置文件所在位置 -->

  <property name="configLocation" value="classpath:mybatis-config.xml" />

</bean>

<!-- 接口開發,掃描 com.zq.dao包 ,寫在此包下的接口即可被掃描到 -->

<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">

  <property name="basePackage" value="com.zq.dao" />

</bean>

4、mybatis-mybatis-config.xml

<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"

"http://mybatis.org/dtd/mybatis-3-config.dtd">

<configuration>

  <!-- 別名定義,自動將報下面的類命名別名,首字母小寫 -->

  <typeAliases>

  <package name="com.zq.model" />

  </typeAliases>

</configuration>

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章