springboot 整合 flowable 流程引擎
阿新 • • 發佈:2021-08-13
-
junit
-
mybatis
-
mysq資料庫
-
Spring相關的
-
aop織入
-
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.16</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.2</version> </dependency> <!--Spring架構 免費的開源的容器 輕量級的、非入侵式的 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.2.0.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>5.2.0.RELEASE</version> </dependency> <dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> <version>1.9.4</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>2.0.2</version> </dependency>
2、編寫配置檔案
3、測試
-
編寫實體類
-
編寫核心配置檔案
-
編寫介面
-
編寫Mapper.xml
-
測試
-
-
sqlSessionFactory
-
sqlSessionTemplate
(前三步都是配置檔案)
<?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:aop="http://www.springframework.org/schema/aop" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd"> <import resource="spring-dao.xml"/> </beans>
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核心配置檔案--> <configuration> <typeAliases> <typeAlias type="com.ly.pojo.User" alias="User"/> </typeAliases> <!--每一個Mapper.xml都需要在Mybatis核心配置檔案中註冊--> </configuration>
spring-dao.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" xmlns:aop="http://www.springframework.org/schema/aop" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd"> <!--DataSource:使用Spring的資料來源替換mybatis的配置 --> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="com.mysql.cj.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/mybatistext?useSSL=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT"/> <property name="username" value="root"/> <property name="password" value="ly0825"/> </bean> <!--sqlSessionFactory--> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource"/> <!--繫結mybatis配置檔案--> <property name="configLocation" value="classpath:mybatis-config.xml"/> <property name="mapperLocations" value="classpath:com/ly/mapper/*.xml"/> </bean> <!--SqlSessionTemplate:就是我們使用的sqlSession--> <bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate"> <constructor-arg index="0" ref="sqlSessionFactory"/> </bean> <bean id="userMapper" class="com.ly.mapper.UserMapperImpl"> <property name="sqlSession" ref="sqlSession"/> </bean> </beans>
4.需要給介面加實現類
UserMapperImpl.java
package com.ly.mapper; import com.ly.pojo.User; import org.mybatis.spring.SqlSessionTemplate; import java.util.List; public class UserMapperImpl implements UserMapper{ //我們原來所有的操作,都是用sqlSession來執行,現在都使用SqlSessionTemplate private SqlSessionTemplate sqlSession; public void setSqlSession(SqlSessionTemplate sqlSession) { this.sqlSession = sqlSession; } public List<User> getUserList() { UserMapper mapper = sqlSession.getMapper(UserMapper.class); return mapper.getUserList(); } }
UserMapper.java(介面)
package com.ly.mapper; import com.ly.pojo.User; import java.util.List; public interface UserMapper { //獲取全部使用者 public List<User> getUserList(); }
UserMapper.xml
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.ly.mapper.UserMapper"> <!--id裡面是呼叫介面的方法,resultType是返回的結果型別--> <select id="getUserList" resultType="User"> select * from user </select> <!--<insert id="insertUser" parameterType="User"> insert into user values(#{id},#{name},#{pwd}) </insert> <update id="updateUser" parameterType="User"> update user set `name` = #{name},pwd =#{pwd} where id = #{id} </update> <delete id="deleteUser" parameterType="int"> delete from user where id=#{id} </delete>--> </mapper>
User.java【實體類】
package com.ly.pojo;
import lombok.Data;
@Data
public class User {
private int id;
private String name;
private String pwd;
}
package com.ly.mapper; import com.ly.pojo.User; import org.apache.ibatis.session.SqlSession; import org.mybatis.spring.support.SqlSessionDaoSupport; import java.util.List; //mybatis plus 精簡版 不需要在配置檔案中配置sqlSession,介面實現類不需要注入sqlSession // 但是需要繼承SqlSessionDaoSupport,需要注入sqlSessionFactory,將其交給父類,讓其給我們生成sqlSession,我們只需要呼叫getSqlSession方法 public class UserMapperImplTwo extends SqlSessionDaoSupport implements UserMapper{ public List<User> getUserList() { SqlSession sqlSession = getSqlSession(); UserMapper mapper = sqlSession.getMapper(UserMapper.class); List<User> userList = mapper.getUserList(); return userList; } }