快速学习

第2章 MyBatis HelloWorld

2.1 开发环境的准备

导入MyBatis框架的jar包、Mysql驱动包、log4j的jar包

myBatis-3.4.1.jar

mysql-connector-java-5.1.37-bin.jar

log4j.jar

1

2

3

导入log4j 的配置文件

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

<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">

 <appender name="STDOUT" class="org.apache.log4j.ConsoleAppender">

   <param name="Encoding" value="UTF-8" />

   <layout class="org.apache.log4j.PatternLayout">

    <param name="ConversionPattern" value="%-5p %d{MM-dd HH:mm:ss,SSS} %m  (%F:%L) \n" />

   </layout>

 </appender>

 <logger name="java.sql">

   <level value="debug" />

    </logger>

 <logger name="org.apache.ibatis">

   <level value="info" />

 </logger>

 <root>

   <level value="debug" />

   <appender-ref ref="STDOUT" />

 </root>

</log4j:configuration>

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

2.2 创建测试表

-- 创建库

CREATE DATABASE test_mybatis;

-- 使用库

USE test_mybatis;

-- 创建表

CREATE TABLE tbl_employee(

   id INT(11) PRIMARY KEY AUTO_INCREMENT,

   last_name VARCHAR(50),

   email VARCHAR(50),

   gender CHAR(1)

);

1

2

3

4

5

6

7

8

9

10

11

2.3 创建javaBean

public class Employee {

private Integer id ; 

private String lastName; 

private String email ;

private String gender ;

public Integer getId() {

return id;

}

public void setId(Integer id) {

this.id = id;

}

public String getLastName() {

return lastName;

}

public void setLastName(String lastName) {

this.lastName = lastName;

}

public String getEmail() {

return email;

}

public void setEmail(String email) {

this.email = email;

}

public String getGender() {

return gender;

}

public void setGender(String gender) {

this.gender = gender;

}

@Override

public String toString() {

return "Employee [id=" + id + ", lastName=" + lastName + ", email=" + email + ", gender=" + gender + "]";

}

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

2.3 创建MyBatis的全局配置文件

参考MyBatis的官网手册

<?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>

<!-- 数据库连接环境的配置 -->

<environments default="development">

<environment id="development">

<transactionManager type="JDBC" />

<dataSource type="POOLED">

<property name="driver" value="com.mysql.jdbc.Driver" />

<property name="url" value="jdbc:mysql://localhost:3306/mybatis_1129" />

<property name="username" value="root" />

<property name="password" value="1234" />

</dataSource>

</environment>

</environments>

<!-- 引入SQL映射文件,Mapper映射文件 -->

<mappers>

<mapper resource="EmployeeMapper.xml" />

</mappers>

</configuration>

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

2.4 创建Mybatis的sql映射文件

参考MyBatis的官方手册

<?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="suibian">

<select id="selectEmployee" resultType="com.atguigu.myabtis.helloWorld.Employee">

select id ,last_name lastName ,email ,gender from tbl_employee where id = #{id}

<!-- select * from tbl_employee  where id = #{id} -->

</select>

</mapper>

1

2

3

4

5

6

7

8

9

10

11

2.5 测试

参考MyBatis的官方手册

@Test

public void test() throws Exception {

String resource = "mybatis-config.xml";

InputStream inputStream = Resources.getResourceAsStream(resource);

SqlSessionFactory sqlSessionFactory = 

new SqlSessionFactoryBuilder().build(inputStream);

System.out.println(sqlSessionFactory);

SqlSession session  = sqlSessionFactory.openSession();

try {

Employee employee = 

session.selectOne("suibian.selectEmployee", 1001);

System.out.println(employee);

} finally {

session.close();

}

}

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

2.6 Mapper接口开发MyBatis HelloWorld

编写Mapper接口

public interface EmployeeMapper {

public Employee getEmployeeById(Integer id )

完成两个绑定

①Mapper接口与Mapper映射文件的绑定在Mppper映射文件中的标签中的namespace中必须指定Mapper接口的全类名

②Mapper映射文件中的增删改查标签的id必须指定成Mapper接口中的方法名.

获取Mapp

猜你喜欢

转载自www.cnblogs.com/jebuxhw/p/12295691.html