- 建立資料庫
- 基本環境搭建
-
連接配接資料庫
bd.properties
jdbc.driver=com.mysql.jdbc.Driver # mysql8.0+s需要加入一個時區配置: ?serverTimezone=UTC jdbc.url=jdbc:mysql://localhost:3306/ssmbuild jdbc.username=root jdbc.password=Wjy12300.
- 包目錄結構
- mapper
- service
- controller
- pojo
- resources
- mybatis-config.xml (mybatis核心配置
<!-- 1. 配置typeAliea 面向pojo 2. 配置映射到哪個mapper.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> <!-- 日志列印 --> <settings> <setting name="logImpl" value="STDOUT_LOGGING" /> </settings> <!-- 引用别名 --> <typeAliases> <package name="com.qqhru.pojo"/> </typeAliases> <!-- 映射配置 --> <mappers> <package name="com.qqhru.mapper.BookMapper"/> </mappers> </configuration>
- Spring-dao.xml ```xml <!--spring整合mybatis 1. 擷取資料源配置檔案 <context:property-placeholder 2. 指派資料源 <bean class="DriverManagerDataSource" (JdBC連接配接池 3. 根據資料源和sqlSessionFactoryBean 擷取sqlSession對象 4. 根據sqlSession對象建立sqlSessionTemplate對象 5. 為mapperImpl中的對象注入值 6. 設定自動掃描 ma p層包中的類 注冊到spring中 --> <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans https://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd"> <!-- 首先擷取資料源 --> <context:property-placeholder location="classpath:db.properties"/> <!-- 加載資料源 引用配置檔案中的配置--> <bean id="datasource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="${jdbc.driver}"/> <property name="url" value="${jdbc.url}"/> <property name="username" value="${jdbc.username}"/> <property name="password" value="${jdbc.password}"/> </bean> <!-- 在 MyBatis-Spring 中,可使用 SqlSessionFactoryBean來建立 SqlSessionFactory。 要配置這個工廠 bean,隻需要把下面代碼放在 Spring 的 XML 配置檔案中: --> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <!-- 通過資料源擷取sqlSessionFactory對象 --> <property name="dataSource" ref="datasource" /> <!-- 配置全局配置檔案 --> <property name="configLocation" value="classpath:mybatis-config.xml"/> <property name="mapperLocations" value="classpath:com/qqhru/mapper/*.xml"/> </bean> <!--注冊sqlSessionTemplate , 關聯sqlSessionFactory--> <bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate"> <!--利用構造器注入--> <constructor-arg index="0" ref="sqlSessionFactory"/> </bean> <!-- 為dao中sqlSessionTemplate指派--> <bean class="com.qqhru.mapper.impl.BookDaoImpl"> <property name="sqlSessionTemplate" ref="sqlSession"/> </bean> <!-- 自動掃描包中的類 并注冊到Spring中 解釋 :https://www.cnblogs.com/jpfss/p/7799806.html--> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <!-- 注入sqlSessionFactory --> <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/> <!-- 給出需要掃描Dao接口包 --> <property name="basePackage" value="com.qqhru.mapper"/> </bean> </beans>
- spring-service.xml
<!-- 1. 設定自動掃描 service層包中的類 注冊到spring中 2. 注冊<bean class="XxxServiceImpl"> 為service中的的mapper屬性指派 --> <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans https://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd"> <context:component-scan base-package="com.qqhru.service"/> <bean id="bookService" class="com.qqhru.service.Impl.BookServiceImpl"> <property name="bookMapper" ref="bookMapper"/> </bean> </beans>
- springmvc-config.xml (後面還涉及到靜态資源的過濾配置 ) ```xml <!-- 1. 配置視圖解析器 2. 開啟注解支援 3. 設定自動掃描 controller層包中的類 注冊到spring中 4. 靜态資源過濾設定 --> <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc https://www.springframework.org/schema/mvc/spring-mvc.xsd"> <mvc:annotation-driven/> <!-- 靜态資源過濾 --> <mvc:default-servlet-handler/> <!-- 視圖解析器--> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="viewClass" value="org.springframework.web.servlet.view.JstlView" /> <property name="prefix" value="/WEB-INF/pages/" /> <property name="suffix" value=".jsp" /> </bean> <!-- 其實mvc掃描的應該是視圖層 --> <context:component-scan base-package="com.qqhru.controller"/> </beans>
- web.xml
<!-- 1. 配置前端控制器 2. 靜态資源過濾 --> <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1"> <servlet> <servlet-name>dispatcherServlet</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:applactionContext.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>dispatcherServlet</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> <!-- 過濾器--> <filter> <filter-name>characterEncodingFilter</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> <init-param> <param-name>forceEncoding</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>characterEncodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <servlet-mapping> <servlet-name>dispatcherServlet</servlet-name> <url-pattern>*.action</url-pattern> </servlet-mapping> </web-app>
- applactionContext.xml (spring核心配置 ```xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <import resource="springmvc-config.xml"/> <import resource="spring-dao.xml"/> <import resource="spring-service.xml"/> </beans>
- mybatis-config.xml (mybatis核心配置
-