myb

# 一 本章面试题

##

# 二 回顾上次课程内容

​ 1 Maven 什么

​ 2 作用

​ 3 使用

# 三 本次课程内容详解

## 1 Maven 关联Idea

​ file--->seetings--->maven----->home(安装路径)

​ -------》 user settings files 设置安装路径的config路径

​ ------》 本地仓库 本地仓库路径

​ 本项目全局从本地加载------》seetings--->maven---》runner ------>-DarchetypeCatalog=local

## 2 什么是框架

​ 1 回顾

​ html css js jsp jquery ajax

​ servlet 过滤监听

​ mysql Redis

​ jdbc dbutils

​ dom4j

​ javaweb 单表的增删改查

​ 2 内容介绍

​ 2.1 对比jdbc 和Mybatis

​ 3 半成品

​ 能解决什么问题

​ a 把技术封装起来

​ b 在开发中不考虑技术 专注逻辑业务开发

​ c 框架 位于底层技术和应用程序之间的代码

​ 4 三层架构常用的框架

​ web 处理请求和响应

​ servlet struts(废弃) springMVC(主流)

​ service 业务层

​ spring(整合 业务 不可取代)

​ dao 层 数据接收

​ jdbc dbutils jdbcTemplate hibernate(放弃) mybatis(主流) spring data jpa(趋势)

​ 主流:整合ssm

​ 趋势:springMVC+spring+spring data=spring全家桶

## 3 Mybatis概述

​ 作用于Dao层取代jdbc一个框架

## 4 mybatis快速入门 重点

### 1 添加依赖

```
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.5</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.6</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
</dependencies>
```

### 2 编写pojo对象

```
package cn.lijun.domain;

/**
* @author lijun
* @date 2019/8/2 15:35
*/
public class User {
private Integer id;
private String username;
private String pwd;
private String sex;
private String address;

public Integer getId() {
return id;
}

public void setId(Integer id) {
this.id = id;
}

public String getUsername() {
return username;
}

public void setUsername(String username) {
this.username = username;
}

public String getPwd() {
return pwd;
}

public void setPwd(String pwd) {
this.pwd = pwd;
}

public String getSex() {
return sex;
}

public void setSex(String sex) {
this.sex = sex;
}

public String getAddress() {
return address;
}

public void setAddress(String address) {
this.address = address;
}

@Override
public String toString() {
return "User{" +
"id=" + id +
", username='" + username + '\'' +
", pwd='" + pwd + '\'' +
", sex='" + sex + '\'' +
", address='" + address + '\'' +
'}';
}
}

```

### 3 编写映射文件

```
<?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="cn.lijun.dao.UserDao">
<select id="findAll" resultType="cn.lijun.domain.User">
select * from user
</select>
</mapper>
```

### 4 编写核心配置文件

```
<?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://127.0.0.1:3306/mybatis9502"/>
<property name="username" value="root"/>
<property name="password" value="root"/>
</dataSource>
</environment>
</environments>
<!--关联映射文件-->
<mappers>
<mapper resource="cn/lijun/mapper/UserMapper.xml"/>
</mappers>
</configuration>
```

### 5 测试框架

```
public class TestCustomerFram {
@Test
public void test(){
// 获取配置文件的输入流对象
InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("SalMapConfig.xml");
// 创建SqlSessionFactoryBuilder 对象
SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
//创建SqlSessionFactory对象
SqlSessionFactory sqlSessionFactory = sqlSessionFactoryBuilder.build(inputStream);
// 获取sqlSession对象
SqlSession sqlSession = sqlSessionFactory.openSession();
List list = sqlSession.selectList("cn.lijun.dao.UserDao.findAll");
// 遍历结果
for(Object o:list){
System.out.println(o);
}
sqlSession.close();
}
```

## 5 mybatis增删改查

# 四 本次课程内容总结

# 五 本章内容练习题

# 六 下次课程内容介绍

猜你喜欢

转载自www.cnblogs.com/jiaoyang-9421/p/11290898.html
myb
MYS