MyBatis(增删改查)
1、工程中引入包:
mybatis-3.2.7、mysql-connector-java-5.1.22-bin
2、添加配置文件:
<?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><typeAliases> <typeAlias alias="Person" type="com.example.mdemo.model.Person"/></typeAliases> <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/demo01" /><property name="username" value="root"/><property name="password" value="root"/></dataSource></environment></environments><mappers><mapper resource="com/example/mdemo/model/Person.xml"/></mappers> </configuration>
3、定义模型和接口JAVA类,如下:
public class Person {private String FirstName;private String LastName;private int Age;public String getFirstName() {return FirstName;}public void setFirstName(String firstName) {FirstName = firstName;}public String getLastName() {return LastName;}public void setLastName(String lastName) {LastName = lastName;}public int getAge() {return Age;}public void setAge(int age) {Age = age;} }
public interface IPersonOperation {public Person selectPersonsByFirstName(String FirstName);public List<Person> selectPersons(String FirstName);public void addPerson(Person person);public void updatePerson(Person person);public void deletePerson(String FirstName);}
4、配置对应的xml文件:
<?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.example.mdemo.service.IPersonOperation"><select id="selectPersonsByFirstName" parameterType="String" resultType="Person">select * from `persons` where FirstName = #{FirstName} limit 1</select><select id="selectPersons" parameterType="string" resultMap="resultListPersons">select * from persons where FirstName like #{FirstName}</select><resultMap type="Person" id="resultListPersons"><result column="FirstName" property="FirstName" /><result column="LastName" property="LastName" /><result column="Age" property="Age" /></resultMap><insert id="addPerson" parameterType="Person"> insert into persons(FirstName,LastName,Age) values(#{FirstName},#{LastName},#{Age}) </insert><update id="updatePerson" parameterType="Person" >update persons set FirstName=#{FirstName},LastName=#{LastName},Age=#{Age} where FirstName=#{FirstName}</update><delete id="deletePerson" parameterType="String">delete from persons where FirstName=#{FirstName}</delete></mapper>
5、测试使用如下:
public class Test {private static SqlSessionFactory sqlSessionFactory;private static Reader reader; static{try{reader = Resources.getResourceAsReader("config/Configuration.xml");sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);}catch(Exception e){e.printStackTrace();}}public static SqlSessionFactory getSession(){return sqlSessionFactory;}public static void main(String[] args) {SqlSession session = sqlSessionFactory.openSession();/* try {Person user = (Person) session.selectOne("com.example.mdemo.model.PersonMapper.selectPersonsByFirstName", "FPPAU");System.out.println(user.getFirstName());System.out.println(user.getLastName());System.out.println(user.getAge());} finally {session.close();}*/try{IPersonOperation personOperation = session.getMapper(IPersonOperation.class);Person person = personOperation.selectPersonsByFirstName("FPPAU");System.out.println(person.getFirstName());System.out.println(person.getLastName());System.out.println(person.getAge());List<Person> persons = personOperation.selectPersons("FPPAU");for(Person p:persons){System.out.println(p.getFirstName());System.out.println(p.getLastName());System.out.println(p.getAge());}System.out.println(persons.size());Person pp = new Person();pp.setFirstName("Xu");pp.setLastName("OK");pp.setAge(40);personOperation.addPerson(pp);session.commit();Person ppp = new Person();ppp.setFirstName("Xu");ppp.setLastName("OK");ppp.setAge(20);personOperation.updatePerson(ppp);session.commit();personOperation.deletePerson("FPPAU");session.commit();session.commit();}finally{session.close();} } }
转载于:https://www.cnblogs.com/Fredric-2013/p/5141360.html
MyBatis(增删改查)相关推荐
- Mybatis——增删改查(CRUD)操作
java学习--Mybatis CRUD操作 mybatis是一个可以自定义SQL.存储过程和高级映射的持久层框架.上面这个定义是在百度上抄的,简单来说,Mybatis简化了我们对数据库的一系列操作, ...
- SSM框架——Mybatis增删改查
目录 目录 环境配置 增删改查的实现 查询全部 查询单个ID 添加用户 修改用户 删除用户 增删改查-使用注解开发 思路流程:搭建环境-->导入Mybatis--->编写代码---> ...
- Mybatis增删改查
增删改查基本上就是一个操作,一模一样的,首先是UserMpper接口: package com.ftz.Demo.dao;import com.ftz.Demo.po.User;import java ...
- Mybatis 详细的创建流程及创建第一个Mybatis增删改查程序 CRUD
1.idea新建Maven项目Mybatis-study 将项目里的src文件夹删掉 依次将此项目作为父项目 2.在Mybatis-study中新建模块mybatis-01 在myba ...
- Mybatis——增删改查CLUD
一.CRUD 1.namespace namespace中的包名和 Dao/Mapper 接口中的包名一致 2.select 选择查询语句: id:就是对应的namespace中的方法名: resul ...
- springboot整合mybatis增删改查(三):mybatis逆向工程
上一篇已经把项目基本框架完善,接下来就是利用Mybatis Generator逆向工程进行mybatis的整合. 我们在创建项目开始的时候已经勾选web,mybatis,sql等,但是这些依赖还是不够 ...
- mybatis增删改查快速实现!!!
Mybatis 简介 ** 1.什么是Mybatis ** MyBatis是一款优秀的基于java的持久层框架,它内部 封装了jdbc,使开发者只需要关注sql语句本身. 参考文档 :https:// ...
- java 基础做增删改查教学_Java Mybatis 增删改查 简单使用 入门 简版
一些基础问题的解决 数据库对应的表 初始数据 项目结构 pom.xml xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ...
- mybatis 增删改查、批量插入和删除以及自动生成uuid主键和分页
Mapper接口: public int update(Admin admin); public Admin selectByUserName(String account); public List ...
- MyBatis 增删改查
MyBatis 学习记录 MyBatis 特性 MyBatis 是支持定制化 SQL.存储过程以及高级映射的优秀的持久层框架 MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果 ...
最新文章
- scrum敏捷开发工具实践分享
- Codeforces Beta Round #14 (Div. 2)【未完结】
- EMF的一些总结(2)——关于EMF的序列化
- 怎么取消自动格式化_iPhone自动扣费怎么取消?App Store、微信、支付宝关闭自动扣费教程...
- blender 3d打印_使用Blender和Python 3D打印连衣裙
- 阅读linux内核代码的工具-- Source Insight
- IDEA+Maven搭建JavaWeb项目
- 使用TSMaster从零打造车辆控制器HIL实时仿真系列3-脱离RT的车辆模型的实时仿真
- python如何计算等额本息还款_等额本息还款方式计算
- java实现多图片打包下载(附前后端代码)
- python文件重命名加日期_Python文件创建日期和Critiqu的重命名请求
- 郑军学长-解决SVN访问慢[密]
- 设置.env.development无效
- 搜狗拼音输入法2015 v7.4m 官方版​
- 计算机桌面右下角的图标不见了,电脑右下角图标不见了怎么办 系统托盘图标消失了解决方法...
- 约租车管理办法近期公布 数量或受地方政府管控
- W5500+网口开发板资料。硬件原理图
- 应届生应聘java需要掌握的技能
- html跳转微信app,微信开放标签:微信网页H5跳转微信小程序、APP
- mysql注释乱码问题_mysql注释是中文乱码怎么办
热门文章
- 【Linux开发】linux设备驱动归纳总结(七):2.内核定时器
- Strong Consistency, 强一致性技术概述
- 软件开发基本原则(一)—— 策略和因素 (转)
- 用ajax控件作的高级搜索
- CentOS7性能监控系统安装
- 【转】Linux查看物理CPU个数、核数、逻辑CPU个数
- 【平台兼容性】jeecg3.7 兼容weblogic 部署改造方案
- 我的spark学习之路(三):利用spark做回归分析
- 15.用PHP写出显示客户端IP与服务器IP的代码,如何防止用户使用代理的情况?[添加更多详情]...
- Comparable接口与Comparator接口