系列文章目录
提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加
例如:第一章 Python 机器学习入门之pandas的使用第一章
提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
安装idea
1、打开官网:IntelliJ IDEA: The Capable & Ergonomic Java IDE by JetBrains,点击页面中的“DOWNLOAD”
2.根据自己的需要选择下载的IntelliJ IDEA版本,此处我的电脑是Windows7 64 位的,我选择的是Community
3.双击下载安装包
创建maven工程
1.建立Maven项目
点击File->new->Project
按照图中数字顺序点击
输入组织名和项目名之后点击Next
选择maven版本和setting位置 点击Next
至此maven项目就搭建好了 下面开始搭建mybatis框架
搭建mybatis框架
1.打开pom.xml文件,导入以下依赖,完成maven配置mybatis
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.3.0</version>
</dependency>
<!-- mysql驱动包 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.29</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter</artifactId>
<version>RELEASE</version>
<scope>compile</scope>
</dependency>
2将webapp文件夹设置为web项目
点击File->Project Structre->Facets->Web
在main文件夹下创建resources文件夹
创建时点击这个直接变成静态文件夹
在resources文件夹下创建mybatis-config.xml文件
在mybatis-config.xml文件中配置mybatis与数据库交互
代码如下(示例):
<?xml version="1.0" encoding="UTF-8" ?>
<configuration>
<!--1. 配置环境 默认的环境id为mysql -->
<environments default="mysql">
<!-- 1.1.配置id为mysql的数据库环境 -->
<environment id="mysql">
<!-- 使用jdbc的事务管理 -->
<transactionManager type="JDBC" />
<!-- 使用数据库连接池 -->
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306" />
<property name="username" value="root" />
<property name="password" value="x5" />
</dataSource>
</environment>
</environments>
<!--2. 配置mapper的位置 -->
<mappers>
<!-- 可以配置多个mapper -->
<mapper resource="mapper/StudentMapper.xml" />
</mappers>
</configuration>
在po文件夹下创建实体类student
package com.lhx.po;
public class student {
private Integer id;
private String sname;
private String spwd;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getSname() {
return sname;
}
public void setSname(String sname) {
this.sname = sname;
}
public String getSpwd() {
return spwd;
}
public void setSpwd(String spwd) {
this.spwd = spwd;
}
}
创建实体类的mapper文件
在resources文件夹下创建mapper文件
在dao文件夹下创建studentdao接口
输入以下代码
public interface StudentDao {
public List<Student> findById(int id);
}
在mapper文件夹下创建studentMapper.xml文件
输入以下代码
<?xml version="1.0" encoding="UTF-8"?>
<mapper namespace="com.lhx.dao.studentDao">
<!--id ="接口中的方法名" parameterType="传入的参数类型" resultType = "返回实体类对象,使用包.类名"-->
<select id="findById" parameterType="int" resultType="com.lhx.po.student">
select * from tb_student where id = #{id}
</select>
</mapper>
编写测试类
package com.lhx.controller;
import javax.annotation.Resources;
import java.io.IOException;
import java.io.Reader;
public class Test {
@Test
public void StudentFindByIdTest(){
//定义读取文件名
String resources = "mybatis-config.xml";
//创建流
Reader reader=null;
try {
//读取mybatis-config.xml文件到reader对象中
reader= Resources.getResourceAsReader(resources);
} catch (IOException e) {
e.printStackTrace();
}
//初始化mybatis,创建SqlSessionFactory类的实例
SqlSessionFactory sqlMapper=new SqlSessionFactoryBuilder().build(reader);
//创建session实例
SqlSession session=sqlMapper.openSession();
//传入参数查询,返回结果
StudentDao StudentMapper=session.getMapper(StudentDao.class);
List<Student> list=StudentMapper.findById(1);
//输出结果
System.out.println(list);
//关闭session
session.close();
}
}
测试
public class Text {
@Test
public void test1(){
//1.获取SqlSession对象
SqlSession sqlSession = MybatisUtils.getSqlSession();
//2.执行SQL
// 方式一:getMapper
UserMapper userDao = sqlSession.getMapper(UserMapper.class);
List<User> userList = userDao.getUserList();
for (User user : userList) {
System.out.println(user);
}
//关闭sqlSession
sqlSession.close();
}
@Test
public void test2() {
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
User user = new User("sdfs","6765");
mapper.addUser(user);
//增删改一定要提交事务
sqlSession.commit();
//关闭sqlSession
sqlSession.close();
}
@Test
public void test3() {
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
mapper.updateUser(new User("fvsdv","677"));
//增删改一定要提交事务
sqlSession.commit();
//关闭sqlSession
sqlSession.close();
}
@Test
public void test4() {
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
mapper.deleteUser(new User("sd","575"));
//增删改一定要提交事务
sqlSession.commit();
//关闭sqlSession
sqlSession.close();
}
}