mybatis实现增删改查xml配置和后端Java编程完整教程
mybatis实现增删改查xml配置和后端编程教程
SqlMapConfig.xml
<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration><environments default="development"><environment id="development"><!-- 使用jdbc事务管理 --><transactionManager type="JDBC"/><!-- 数据库连接池 --><dataSource type="POOLED"><property name="driver" value="com.mysql.jdbc.Driver"/><property name="url" value="jdbc:mysql://localhost:3306/mybatis?characterEncoding=utf-8"/><property name="username" value="root"/><property name="password" value="011220"/></dataSource></environment></environments><mappers><mapper resource="sqlmap/user.xml"/></mappers></configuration>
user.xml
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper namespace="test"><!-- 根据用户id查询用户信息 --><select id="findUserById" parameterType="int" resultType="cn.nwtxxb.mybatis.po.User">select * from user where id = #{id}</select><!-- 根据用户名查询用户信息 --><select id="findUserByUserName" parameterType="java.lang.String" resultType="cn.nwtxxb.mybatis.po.User">select * from user where username like '%${value}%'</select><!-- 添加用户 --><insert id="insertUser" parameterType="cn.nwtxxb.mybatis.po.User"><!-- selectKey将主键返回 --><selectKey keyProperty="id" order="AFTER" resultType="java.lang.Integer">select LAST_INSERT_ID()</selectKey>insert into user (username,birthday,sex,address) values (#{username},#{birthday},#{sex},#{address})</insert><!-- 删除用户 --><delete id="deleteUserById" parameterType="int">delete from user where id=#{id}</delete></mapper>
User.java
package cn.nwtxxb.mybatis.po;import java.util.Date;public class User {private int id;private String username;private String sex;private Date birthday;private String address;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getSex() {return sex;}public void setSex(String sex) {this.sex = sex;}public Date getBirthday() {return birthday;}public void setBirthday(Date birthday) {this.birthday = birthday;}public String getAddress() {return address;}public void setAddress(String address) {this.address = address;}@Overridepublic String toString() {return "User [id=" + id + ", username=" + username + ", sex=" + sex + ", birthday=" + birthday + ", address="+ address + "]";}}
测试类代码:
package cn.nwtxxb.mybatis.test;
import java.io.InputStream;
import java.util.Date;
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;
import cn.nwtxxb.mybatis.po.User;
public class Mybatis_first {//会话工厂private SqlSessionFactory sqlSessionFactory;@Beforepublic void createSqlSessionFactory() throws Exception{//配置文件String resource = "SqlMapConfig.xml";InputStream inputStream = Resources.getResourceAsStream(resource);//使用SqlSessionFactoryBuilder从xml配置文件中创建SqlSessionFactorysqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);}//根据id查询用户信息@Testpublic void testFindUserById(){//数据库会话实例SqlSession sqlSession = null;try {//创建数据库会话实例sqlSessionsqlSession = sqlSessionFactory.openSession();//查询单个记录,根据用户id查询用户信息User user = sqlSession.selectOne("test.findUserById",10);//输出用户信息System.out.println(user);} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}finally{if(sqlSession!=null){sqlSession.close();}}}//根据用户名查询用户信息@Testpublic void testFindUserByUsername(){//数据库会话实例SqlSession sqlSession = null;try {//创建数据库会话实例sqlSessionsqlSession = sqlSessionFactory.openSession();//根据用户名中包含"张"的条件查询用户信息List<User> list = sqlSession.selectList("test.findUserByUserName","张");System.out.println(list.size());} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}finally{if(sqlSession!=null){sqlSession.close();}}}//添加用户信息@Testpublic void testInsert(){//数据库会话实例SqlSession sqlSession = null;try {//创建数据库会话实例sqlSessionsqlSession = sqlSessionFactory.openSession();//添加用户信息User user = new User();user.setUsername("张磊");user.setSex("1");user.setAddress("襄城");user.setBirthday(new Date());sqlSession.insert("test.insertUser",user);//提交事务sqlSession.commit();} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}finally{if(sqlSession!=null){sqlSession.close();}}}//删除用户@Testpublic void testDelete(){//数据库会话实例SqlSession sqlSession = null;try {//创建数据库会话实例sqlSessionsqlSession = sqlSessionFactory.openSession();sqlSession.delete("test.deleteUserById",26);sqlSession.commit();} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}finally{if(sqlSession!=null){sqlSession.close();}}}
}
login4j.properties
# Global logging configuration
log4j.rootLogger=DEBUG,stdout
# Console output...
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n
mybatis实现增删改查xml配置和后端Java编程完整教程相关推荐
- Spring+SpringMVC+Mybatis实现增删改查--(五)SSM修改员工页面搭建
Spring+SpringMVC+Mybatis实现增删改查--(五)SSM修改员工页面搭建 修改员工: 1.在index.jsp页面点击"编辑"弹出编辑对话框 2.去数据库查询部 ...
- MyBatis的增删改查操作
MyBatis的增删改查操作 简单实现一下MyBatis的增删改查,并且在控制台输出结果. 文章目录 MyBatis的增删改查操作 MyBatis的简单入门 一.查询操作 二.增加操作 三.修改操作 ...
- MyBatis实现增删改查功能(总)
文章目录 MyBatis实现增删改查功能(总) 一.创建数据库.表.数据 二.MyBatis的Maven项目创建 三.MyBatis的Maven模块创建 四.配置jar包pom.xml 五.MyBat ...
- Mybatis实现增删改查
文章目录 Mybatis实现增删改查 一.mybatis的配置 1.1 添加相应的jar包 1.2 配置mybatis.xml文件 1.3 创建数据库 1.4 创建实体类 1.5 创建接口实现的方法 ...
- idea使用mybatis写增删改查
idea应用mybatis写增删改查 entity层 private Integer id;private String userCode;private String userName;privat ...
- 如何 增删改查 XML文件中的元素
如何 增删改查 XML文件中的元素 students.xml 文件如下: <?xml version="1.0" encoding="UTF-8" sta ...
- 3. mysql的注解驱动的三种方式_上手spring boot项目(三)之spring boot整合mybatis进行增删改查的三种方式。...
1.引入依赖 org.springframework.boot spring-boot-starter-web org.mybatis.spring.boot mybatis-spring-boot- ...
- springboot+springm vc+mybatis实现增删改查案例!
大家好,我是雄雄,欢迎关注微信公众号[雄雄的小课堂]. 前言 最近这几天都在看关于springboot的内容,每天新会获得点新收获,并且都总结发在公众号中:最后经过不懈努力,不断查找相关网页,解决各种 ...
- Mybaits:凡人修仙秘籍——第二话:MyBatis 的增删改查
目录 一.创建用户.角色和权限表 二.创建实体类 三.使用XML方式 四.select用法--单表查询 1.配置UserMapper 2.写出对应的接口类 3.关于userMa ...
最新文章
- 在django中按照时间范围查询数据库
- MYSQL水平拆分与垂直拆分
- 【线性规划与网络流24题】孤岛营救问题 分层图
- linux挂载wondiws目录,linux cifs自动挂载windows硬盘或文件夹
- 前端vue的get和post请求
- Linux 目录详细说明
- Java VisualVM无法检测到本地java程序 的 解决办法
- 小程序的侵权“生死局”
- 拒绝996,选对框架很关键!看这里。。。。。。
- Mac如何解压rar,zip等各种格式文件
- python递归函数基例_函数和代码复用 --Python
- java实现非对称加密算法
- 新中大软件显示无法连接服务器,新中大服务器数据库未能连接
- 数据库系统和文件系统的区别
- JAVA计算机毕业设计在线教学质量评价系统Mybatis+系统+数据库+调试部署
- 免费的ASP.NET空间和SQLServer2008 Express
- 高德地图小程序步行路线显示_微信小程序 高德地图路线规划实现过程详解
- BZOJ 4892: [Tjoi2017]DNA(SA+RMQ / SAM)
- matlab中不能找到ccs,搭建matlab连接ccs生成28335代码的环境(路径不在C盘)
- 搜狗网址导航 php,sogou 搜狗网址导航的源码,将整站仿了下来,完美无错,纯净,精仿 面绝对 全免费 WEB(ASP,PHP,...) 238万源代码下载- www.pudn.com...
热门文章
- 【机器学习基础】在机器学习项目中该如何选择优化器
- 【Python基础】科学计算库Scipy简易入门
- Wireshark对HTTPS数据的解密
- oracle控制文件的损坏或完全丢失的恢复办法
- webpack entry和output配置属性
- [公告][重要]Senparc.Weixin v4.9.0 Senparc.Weixin.MP v14.3.104更新说明
- thinkphp phpexcel导出
- String和Date、Timestamp之间的转换
- Linux系统下Apache与Tomcat整合
- 装好了ubuntu,w2k却无法启动了,:(