-
創建一個普通的Maven項目
- 命名要使用好在哪一個包下面
- 還有要注意的是Mybatis中的依賴這個一定要注意
- 下面的代碼放在項目下面的pom.xml中,同時還有別的依賴
<!-- 導入依賴--> <dependencies> <!--mysql驅動--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.47</version> </dependency> <!--mybatis--> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.2</version> </dependency> <!--junit--> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency> </dependencies>
<!--在build中配置resources,來防止我們資源導出失敗的問題--> <build> <resources> <resource> <directory>src/main/resources</directory> <!-- 這個可以吧resources去了,這樣target中會出現mapper-config.xml--> <excludes> <exclude>**/*.properties</exclude> <exclude>**/*.xml</exclude> </excludes> <filtering>false</filtering> </resource> <resource> <directory>src/main/java</directory> <includes> <include>**/*.properties</include> <include>**/*.xml</include> </includes> <filtering>false</filtering> </resource> </resources> </build> <!--這個是防止報錯的,主要是因爲約定大於配置,那麼可能在target中不會出現xml文件,所以需要以上的配置-->
-
刪除項目中的src
-
創建一個普通的Maven模塊(一般來說這個時候不需要再在這個模塊的pom.xml加入以來了,因爲夫項目中已經有了,但是導入依賴最好)
-
這個模塊中有關於java和resources的一些東西
-
java中含有以下的東西
-
pojo(實體類,主要和數據庫中的表相對應)
- 這個裏面有屬性和set,get方法
-
dao
-
接口(UserDao,這就是一個接口之類的東西)
-
接口裏面寫的一些方法都是之後對數據庫操作的一些方法
import com.kuang.pojo.User; import java.util.List; public interface UserDao { //這個方法就是對數據庫操作的方法 List<User> getListUser(); }
-
-
UserMapper.xml(這個要在resourecs中進行配置,要不然會報錯)
<?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"> <!--namespace=綁定一個對應的Dao接口,一般來說就是我們用的com.kuang.dao裏面弄的接口 這個就是在和上面的接口相對應,一定要注意 --> <mapper namespace="com.kuang.dao.UserDao"> <!--select查詢語句--> <select id="getListUser" resultType="com.kuang.pojo.User"> /*定義sql*/ select * from mybatis.user </select> </mapper>
-
-
MabaisUtils(這個主要是放着關於調用的一些實體類,這個很重要,基本上也不會有太大變化)
import org.apache.ibatis.io.Resources; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder; import java.io.IOException; import java.io.InputStream; //sqlSessionFactory--->SessionFactory,主要是返回Factory的工廠,這個是個主要的東西,通過工廠進行調用 public class MyBatisUtils { private static SqlSessionFactory sqlSessionFactory; static { try{ //使用mybatis第一步、獲取sqlSessionFactory對象 String resource = "mybatis-config.xml"; InputStream inputStream = Resources.getResourceAsStream(resource); sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); }catch(IOException e) { e.printStackTrace(); } } //既然有了 SqlSessionFactory,顧名思義,我們就可以從中獲得 SqlSession 的實例了。 // SqlSession 完全包含了面向數據庫執行 SQL 命令所需的所有方法。 // 你可以通過 SqlSession 實例來直接執行已映射的 SQL 語句。 public static SqlSession getSqlSession(){ return sqlSessionFactory.openSession(); } }
-
-
resources中包含以下的東西(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> <!--environments配置環境組--> <!--default默認環境--> <environments default="development"> <!--environment單個環境--> <environment id="development"> <!--transactionManager配置事務管理器--> <transactionManager type="JDBC"/> <!--配置連接池--> <dataSource type="POOLED"> <property name="driver" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/mybatis?useSSL=true&useUnicode=true&characterEncoding=UTF-8"/> <property name="username" value="root"/> <property name="password" value="123456"/> </dataSource> </environment> </environments> <mappers> <mapper resource="com/kuang/dao/UserMapper.xml"/> </mappers> </configuration>
<!-- 一定要注意這個,將Dao層中UserMapper.xml在這個核心配置配置一下,要不然會報錯--> <mappers> <mapper resource="com/kuang/dao/UserMapper.xml"/> </mappers>
-
可能會報錯的問題
-
測試方面的代碼
package com.kuang.dao; import com.kuang.Utils.MybatisUtils; import com.kuang.pojo.User; import org.apache.ibatis.session.SqlSession; import org.junit.Test; import java.util.List; public class test { @Test public void test(){ //獲取msql工廠 SqlSession sqlSession = MybatisUtils.getSqlSession(); //方式一:獲取UserDao這個方法,拿到UserDao這個接口 UserDao mapper = sqlSession.getMapper(UserDao.class); List<User> userList = mapper.getUserList(); for(User user: userList){ System.out.println(userList); } //最後一步,關閉sqlSession sqlSession.close(); } }
Idea中創建Mybatis的步驟(模板,防止以後忘記)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.