MyBatis的数据库操作
大学毕业有一段时间了,作为一名没有任何开发工作经验的大专毕业生想找到一份软件开发的工作确实很难,但我运气还算不错,应聘上一份java web开发的工作。作为一名新人,老板给我的第一项任务就是学习人家写好的代码。
结合这段时间自学SSM,现在写下一个关于MyBatis连接数据库的例子(因为是第一次写博,写的不好请大家多多关照!)
在此之前,我先交代下我使用的开发工具:eclipse-jee-neon-3,数据库:MySql 5.1
代码目录如下:
第一步:创建数据库
第二步: 根据数据库创建实体类User.java
1 package com.wx.entity; 2 3 public class User { 4 //ID 5 private Integer id; 6 //姓名 7 private String name; 8 //性别 9 private String sex; 10 //年龄 11 private Integer age; 12 //无参数构造器 13 public User(){ 14 super(); 15 } 16 //有参数构造器 17 public User(String name,String sex,Integer age){ 18 super(); 19 this.name=name; 20 this.sex=sex; 21 this.age=age; 22 } 23 //setter/getter 24 public Integer getId(){ 25 return id; 26 } 27 public void setId(Integer id){ 28 this.id=id; 29 } 30 public String getName(){ 31 return name; 32 } 33 public void setName(String name){ 34 this.name=name; 35 } 36 public String getSex(){ 37 return sex; 38 } 39 public void setSex(String sex){ 40 this.sex=sex; 41 } 42 public Integer getAge(){ 43 return age; 44 } 45 public void setAge(Integer age){ 46 this.age=age; 47 } 48 49 }
第三步:配置实体类与数据库关系的配置文件UserMapper.xml
1 <?xml version="1.0" encoding="UTF-8"?> 2 <!DOCTYPE mapper PUBLIC "-//mybatis.org/DTD Mapper 3.0//EN" 3 "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> 4 <mapper namespace="com.wx.mapper.UserMapper"> 5 <insert id="save" parameterType="com.wx.entity.User" useGeneratedKeys="true"> 6 insert into user(name,sex,age) values(#{name},#{sex},#{age}) 7 </insert> 8 <delete id="deleteById" parameterType="int"> 9 delete from user where id=#{id} 10 </delete> 11 </mapper>
第四部:连接数据库配置mybatis-config.xml
1 <?xml version="1.0" encoding="UTF-8"?> 2 <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" 3 "http://mybatis.org/dtd/mybatis-3-config.dtd"> 4 <!-- XML配置文件包含对MyBatis系统的核心设置 --> 5 <configuration> 6 <!-- 环境配置,即连接的数据库 --> 7 <environments default="mysql"> 8 <environment id="mysql"> 9 <transactionManager type="JDBC" /> 10 <dataSource type="POOLED"> 11 <property name="driver" value="com.mysql.jdbc.Driver" /> 12 <property name="url" value="jdbc:mysql://localhost:3306/FT" /> 13 <!-- ***指代你的数据库的用户名 --> 14 <property name="username" value="***" /> 15 <!-- ***指代你的数据库的用户密码 --> 16 <property name="password" value="***" /> 17 </dataSource> 18 </environment> 19 </environments> 20 <!-- mappers告诉了MyBatis去哪找持久化类的映射文件 --> 21 <mappers> 22 <mapper resource="com/wx/mapper/UserMapper.xml" /> 23 </mappers> 24 </configuration>
第五步:编写测试类
1 package com.wx.test; 2 3 import java.io.InputStream; 4 5 import org.apache.ibatis.io.Resources; 6 import org.apache.ibatis.session.SqlSession; 7 import org.apache.ibatis.session.SqlSessionFactory; 8 import org.apache.ibatis.session.SqlSessionFactoryBuilder; 9 import com.wx.entity.User; 10 11 public class MyBatisTest { 12 public static void main(String[] args) throws Exception{ 13 //读取mybatis-config.xml文件 14 InputStream inputStream=Resources.getResourceAsStream("mybatis-config.xml"); 15 //初始化mybatis,创建SqlSessionFactory类的实例 16 SqlSessionFactory sqlSessionFactory=new SqlSessionFactoryBuilder().build(inputStream); 17 //创建Session实例 18 SqlSession session=sqlSessionFactory.openSession(); 19 //创建User对象 20 User user=new User("root","男",20); 21 //插入数据 22 session.insert("com.wx.mapper.UserMapper.save", user); 23 //删除数据 24 //session.delete("com.wx.mapper.UserMapper.deleteById",1); 25 //提交事务 26 session.commit(); 27 //关闭Session 28 session.close(); 29 } 30 31 }
以上就是全部关于MyBatis对数据库操作的全部代码