gpt4 book ai didi

JAVA MyBatis入门学习过程记录

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 25 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章JAVA MyBatis入门学习过程记录由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

1、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/ 。

2、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>

3、常用依赖导入

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

4、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 生成无参构造函数

总结

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

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

最后此篇关于JAVA MyBatis入门学习过程记录的文章就讲到这里了,如果你想了解更多关于JAVA MyBatis入门学习过程记录的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com