JAVA MyBatis入门学习过程记录

2025-05-29 0 83

一、Mybatis

1、mybatis-config.xml

?

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

<!-- 外部引入db-->

<properties resource="db.properties"/>

<settings>

<!-- 配置日志文件-->

<!-- <setting name="logImpl" value="STDOUT_LOGGING"/>-->

<setting name="logImpl" value="log4j"/>

<!-- 开启A_NAME==>aName-->

<setting name="mapUnderscoreToCamelCase" valie="true"

</settings>

<!-- 减少类型-->

<typeAliases> <typeAlias type="com.wang.pojo.User" alias="User"/>

</typeAliases>

<environments default="development">

<environment id="development">

<transactionManager type="JDBC"/>

<dataSource type="POOLED">

<property name="driver" value="${driver}"/>

<property name="url" value="${url}"/>

<property name="username" value="${username}"/>

<property name="password" value="${password}"/>

</dataSource>

</environment>

</environments>

<mappers>

<mapper resource="com/wang/dao/UserMapper.xml"/>

</mappers>

</configuration>

2、Mapper.xml

?

1

2

3

4

5

6

7

8

9
<?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.wang.dao.UserDao">

<select id="getUserList" resultType="User">

select * from mybatis.user

</select>

</mapper>

3、db.properties

?

1

2

3

4
driver=com.mysql.jdbc.Driver

url=jdbc:mysql://localhost:3306/mybatis

username=root

password=123456

4、MybatisUtils工具类

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23
package com.wang.utils;

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;

public class MybatisUtils {

private static SqlSessionFactory sqlSessionFactory;

static {

InputStream inputStream = null;

try {

String resource = "mybatis-config.xml";

inputStream = Resources.getResourceAsStream(resource);

sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);

} catch (IOException e) {

e.printStackTrace();

}

}

public static SqlSession getsqlsession() {

return sqlSessionFactory.openSession();

}

}

5、多对一AND多对一:

在Mapper.xml中配置

association 对象 多对一

collection 集合 一对多

从用参数解释:

  • javaType java类型
  • ofType 泛型约束类型

6、使用注解开发

可在接口中使用注解进行开发,省去Mapper.xml

?

1

2
@Select("select * from mybatis.User")

List<User> getUserList();

?

1

2

3

4
在mybatis-config.xml中配置

<mappers>

<mapper class="com.wang.Dao.UserMapper"

</mappers>

7、自定义缓存:ehcache

8、mybatis 其他工具

mybatis Hepler:https://pagehelper.github.io/

二、MAVEN资源导出错误解决

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20
<build>

<resources>

<resource>

<directory>src/main/resources</directory>

<includes>

<include>**/*.properties</include>

<include>**/*.xml</include>

</includes>

<filtering>true</filtering>

</resource>

<resource>

<directory>src/main/java</directory>

<includes>

<include>**/*.properties</include>

<include>**/*.xml</include>

</includes>

<filtering>true</filtering>

</resource>

</resources>

</build>

三、常用依赖导入

?

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

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72
<!--导入依赖-->

<dependencies>

<!-- mysql-->

<dependency>

<groupId>mysql</groupId>

<artifactId>mysql-connector-java</artifactId>

<version>5.1.49</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.13</version>

</dependency>

<!-- lombok-->

<dependency>

<groupId>org.projectlombok</groupId>

<artifactId>lombok</artifactId>

<version>1.18.20</version>

</dependency>

<!-- servlet and jsp-->

<dependency>

<groupId>org.mortbay.jetty</groupId>

<artifactId>servlet-api-2.5</artifactId>

<version>6.1.7</version>

</dependency>

<dependency>

<groupId>javax.servlet.jsp</groupId>

<artifactId>jsp-api</artifactId>

<version>2.1</version>

</dependency>

<!-- standard-->

<dependency>

<groupId>org.apache.karaf.assemblies.features</groupId>

<artifactId>standard</artifactId>

<version>2.4.4</version>

</dependency>

<dependency>

<groupId>taglibs</groupId>

<artifactId>standard</artifactId>

<version>1.1.2</version>

</dependency>

<!-- jstl-->

<dependency>

<groupId>javax.servlet.jsp.jstl</groupId>

<artifactId>jstl-api</artifactId>

<version>1.2</version>

</dependency>

<dependency>

<groupId>org.glassfish.web</groupId>

<artifactId>jstl-impl</artifactId>

<version>1.2</version>

</dependency>

<!-- fastjson-->

<dependency>

<groupId>com.alibaba</groupId>

<artifactId>fastjson</artifactId>

<version>1.2.76</version>

</dependency>

<!--Log4j-->

<dependency>

<groupId>log4j</groupId>

<artifactId>log4j</artifactId>

<version>1.2.17</version>

</dependency>

</dependencies>

四、LOG4J

1、log4j.properties 配置文件

?

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

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72
<!--导入依赖-->

<dependencies>

<!-- mysql-->

<dependency>

<groupId>mysql</groupId>

<artifactId>mysql-connector-java</artifactId>

<version>5.1.49</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.13</version>

</dependency>

<!-- lombok-->

<dependency>

<groupId>org.projectlombok</groupId>

<artifactId>lombok</artifactId>

<version>1.18.20</version>

</dependency>

<!-- servlet and jsp-->

<dependency>

<groupId>org.mortbay.jetty</groupId>

<artifactId>servlet-api-2.5</artifactId>

<version>6.1.7</version>

</dependency>

<dependency>

<groupId>javax.servlet.jsp</groupId>

<artifactId>jsp-api</artifactId>

<version>2.1</version>

</dependency>

<!-- standard-->

<dependency>

<groupId>org.apache.karaf.assemblies.features</groupId>

<artifactId>standard</artifactId>

<version>2.4.4</version>

</dependency>

<dependency>

<groupId>taglibs</groupId>

<artifactId>standard</artifactId>

<version>1.1.2</version>

</dependency>

<!-- jstl-->

<dependency>

<groupId>javax.servlet.jsp.jstl</groupId>

<artifactId>jstl-api</artifactId>

<version>1.2</version>

</dependency>

<dependency>

<groupId>org.glassfish.web</groupId>

<artifactId>jstl-impl</artifactId>

<version>1.2</version>

</dependency>

<!-- fastjson-->

<dependency>

<groupId>com.alibaba</groupId>

<artifactId>fastjson</artifactId>

<version>1.2.76</version>

</dependency>

<!--Log4j-->

<dependency>

<groupId>log4j</groupId>

<artifactId>log4j</artifactId>

<version>1.2.17</version>

</dependency>

</dependencies>

2、log4j 在mybatis-config.xml的配置

?

1

2

3
<settings>

<setting name="logImpl" value="LOG4J"/>

</settings>

3、使用场景

在具体类中引入

?

1

2

3
Logger logger = Logger.getLogger(UserDaoTest.class);

logger.error();

logger.debug();

好用的插件:

1、lombok

常用注解:

  • @Data 自动生成geter seter
  • @AllArgsConstructor 生成有参构造函数
  • @NoArgsConstructor 生成无参构造函数

=“logImpl” value=“LOG4J”/>

?

1

2

3

4

5

6

7

8
## 3、使用场景

- 在具体类中引入

```java

Logger logger = Logger.getLogger(UserDaoTest.class);

logger.error();

logger.debug();

常用注解:

  • @Data 自动生成geter seter
  • @AllArgsConstructor 生成有参构造函数
  • @NoArgsConstructor 生成无参构造函数

总结

本篇文章就到这里了,希望能够给大家带来帮助,也希望您能够能够多多关注快网idc的更多内容!

原文链接:https://blog.csdn.net/weixin_50738670/article/details/117933388

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 JAVA MyBatis入门学习过程记录 https://www.kuaiidc.com/106715.html

相关文章

发表评论
暂无评论