所有的ORM框架学习曲线都是先来一个CRUD爽一爽,下面我们就来CRUD一下,所有的配置都是基于上一篇的配置。废话不多说,直接上代码。
<?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.bird.mybatis.bean.userMapper">
<!--CRUD -->
<insert id="insertUser" parameterType="com.bird.mybatis.bean.Users">
insert into users(name, age) values(#{name}, #{age});
</insert>
<delete id="deleteUser" parameterType="int">
delete from users where id = #{id};
</delete>
<update id="updateUser" parameterType="com.bird.mybatis.bean.Users">
update users set name = #{name}, age = #{age} where id = #{id};
</update>
<select id="getUser" parameterType="int" resultType="com.bird.mybatis.bean.Users">
select * from users where id = #{id};
</select>
<select id="getAllUser" resultType="com.bird.mybatis.bean.Users">
select * from users;
</select>
</mapper>
package com.bird.mybatis.bean;
import java.io.IOException;
import java.io.Reader;
import java.util.List;
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 org.junit.Before;
import org.junit.Test;
public class MyTest {
private SqlSessionFactory factory;
@Before
public void init() {
String resource = "conf.xml";
Reader reader = null;
try {
reader = Resources.getResourceAsReader(resource);
} catch (IOException e) {
e.printStackTrace();
}
factory = new SqlSessionFactoryBuilder().build(reader);
}
@Test
public void testAdd() {
//默认是手动的
SqlSession session = factory.openSession();
String statement = "com.bird.mybatis.bean.userMapper.insertUser";
int rows = session.insert(statement, new Users(-1, "哈哈", 29));
//提交
session.commit();
System.out.println(rows);
session.close();
}
@Test
public void testUpdate() {
SqlSession session = factory.openSession();
String statement = "com.bird.mybatis.bean.userMapper.updateUser";
session.update(statement, new Users(4, "呵呵", 29));
session.commit();
session.close();
}
@Test
public void testDelete() {
SqlSession session = factory.openSession();
String statement = "com.bird.mybatis.bean.userMapper.deleteUser";
session.delete(statement, 1);
session.commit();
session.close();
}
@Test
public void testGetAllUser() {
SqlSession session = factory.openSession();
String statement = "com.bird.mybatis.bean.userMapper.getAllUser";
List<Users> list = session.selectList(statement);
System.out.println(list.size());
session.close();
}
}
Ok,so easy, 哪里不会点哪里
分享到:
相关推荐
本资源包含Mybatis基本使用源码(含sql) 包括基于XML配置的基本CRUD操作、Mybatis参数、输出结果封装和主配置文件详细说明。
另一种机制采用xml文件形式实现dao、service、controller层封装,具体业务类只需继承就可实现基本的CRUD操作,整个工程导入即可运行(一个月心算之作,稍贵一点,下载以后大部分资料都不需要看了)
简单易用:通过XML配置文件和注解,MyBatis能够轻松地将SQL语句与Java代码分离,使代码结构更清晰、易于维护。 映射简单:MyBatis提供了简单的映射方式,可以自动将数据库表中的字段映射到Java对象的属性上,降低...
- XML配置文件:8个,用于配置SSM框架中的各种设置,包括控制器、服务、数据库访问等; - CSS样式表:4个,定义了项目的样式和布局; - Map映射文件:4个,用于MyBatis的SQL映射; - JavaScript脚本:4个,实现了...
- XML配置文件:9个,用于配置SSM框架和数据库交互; - Preferences文件:4个,存储项目相关偏好设置; - CSS样式文件:4个,定义了基于Bootstrap的界面风格; - Map配置文件:4个,可能涉及前端路由或资源映射; - ...
v0.2 - 使用MyBatis对表执行CRUD操作——基于XML的实现 v0.3 - 使用MyBatis对表执行CRUD操作——基于注解的实现 v0.4 - MyBatis数据库的配置单独放在一个properties文件中 v0.5 - 为实体类定义别名,简化sql映射xml...
- 配置XML文件:23个 - Java源文件:14个 - JSP页面:8个 - CSS样式表:8个 - 地图配置文件:8个 - JavaScript脚本:8个 - 配置属性文件:4个 - Git忽略配置:2个 功能特点: 1. 基于Bootstrap的界面设计,...
- XML文件:9个,主要用于配置SSM框架和数据库相关设置。 - JavaScript文件:7个,实现动态交互和数据操作。 - CSS文件:4个,负责页面样式设计和美化。 - Map文件:4个,可能与前端资源的路径映射有关。 - JSP文件...
项目概述:本项目是一个基于SSM(Spring、SpringMVC、MyBatis)框架的CRUD(Create、Read、Update、Delete)操作示例源码,前端采用纯Ajax技术实现数据交互。该项目涉及的主要编程语言为Java,同时融合了JavaScript...
本项目是一个基于SSM(Spring、SpringMVC、MyBatis)框架的Java企业级增删改查(CRUD)系统源码。该系统主要采用Java语言开发,同时整合了CSS、JavaScript等前端技术。 技术构成: - 后端语言:Java - 前端技术:...
Hibernate 增强工具包 - 只做增强不做改变,更加精简持久层CRUD操作;纯正血统(完全继承原生 ...无配置文件(无需编写SQL配置文件(例如:Mybatis的XML),从而简化操作);主从分离(简单配置即可实现主从分离)
(3)Spring容器配置文件:applicationContext.xml: 见resources/applicationContext.xml. (4)SpringMVC配置文件:springmvc.xml: 见resources/springmvc.xml. **3 测试** 写好上述配置文件后,可以在...
:rocket: Code-Generate是一个基于原生Mysql & SpringBoot & Mybatis 的代码生成器,建表之后即可完全解放双手,1秒钟构建CRUD接口以及漂亮的LayUi前端界面,同时支持在不改动任何老代码的情况下拓展新的模板,适合...
代码生成:前后端代码的生成(java、html、xml、sql)支持CRUD下载 。 系统接口:根据业务代码自动生成相关的api接口文档。 服务监控:监视当前系统CPU、内存、磁盘、堆栈等相关信息。 在线构建器:拖动表单元素生成...
│ └─generator.properties 代码生成器,配置文件 │ ├─renren-ui 美食元素后台管理Vue前端项目 ├─takeout_mp uniapp微信小程序项目 ``` ## 项目特点 - 友好的代码结构及注释,便于阅读及二次开发 - 实现...
由于现在前端mmvc框架和后台 no-sql 的流行, json 的使用量激增,要拥抱这种变化,我觉得有必要选择更灵活的持久层框架,而 hibernate 的强关系模型和 mybatis 的 xml 配置文件,降低了这种灵活性。经过大量考察和...
代码生成:前后端代码的生成(java、html、xml、sql)支持CRUD下载 。 系统接口:根据业务代码自动生成相关的api接口文档。 服务监控:监视当前系统CPU、内存、磁盘、堆栈等相关信息。 缓存监控:对系统的缓存查询,...
codetool一个java代码生成工具,支持hibernate,mybatis,jdbc三种数据持久层框架,标准的mvc模式代码该工具按照MVC标准代码结构生成对应的Mapper.xml, Dao接口,Service接口和实现,Controller以及对应的CRUD页面,...
* main项目下是项目的主要实现代码,resources用于存放配置的xml。 * test目录是用于存放测试的Java代码,本例中主要用于测试mapper和service编写是否正确。 * mysql文件已经放在目录下。 * 本系统的搭建环境: ...
security配置简单(初始化一个类即可)满足认证授权基本需求更加贴近日常使用业务场景可选本地session和共享session可选是否支持多端同时登录dubbo、springboot跨服务登录状态传递支持rest模块自动resonse封装(xml、...