First, create a database my, and insert a table in the user database, and then insert a row in the user table, as follows:
create database my; use my; create table user( id int(10) auto_increment, name varchar(64), level varchar(256), phone varchar(256), primary key(id) ); insert into user(id,name,level,phone) values(1,'a','a','1234555666');
Second, create mybatis configuration file config.xml, the configuration file code is as follows:
<?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="User" type="com.zk.model.User" /> </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://localhost:3306/my"/> <property name="username" value="root"/> <property name="password" value="123456"/> </dataSource> </environment> </environments> <mappers> <!-- // power by http://www.yiibai.com --> <mapper resource="com/zk/model/UserMapper.xml" /> </mappers> </configuration>
Again, create a IUser.java Interface
com.zk.dao Package; Import java.util.List; Import com.zk.model.User; public interface IUser { // increase public void the addUser (the User User); // delete public void deleteUser (int ID); / / update public void updateUser (the user the user); // delete public the user selectUser (int userid); // View all users public List <the user> selectAllUser (); }
Create an entity class User.java
package com.zk.model; public class User { private int id; private String name; private String level; private String phone; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getLevel() { return level; } public void setLevel(String level) { this.level = level; } public String getPhone() { return phone; } public void setPhone(String phone) { this.phone = phone; } @Override public String toString() { return "User [id=" + id + ", name=" + name + ", level=" + level + ", phone=" + phone + "]"; } }
Then, in the configuration file UserMapper.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.zk.dao.IUser">
<insert id="addUser" parameterType="User">
Insert into user(id,name,level,phone) values(#{id},#{name},#{level},#{phone}); </insert> <delete id="deleteUser" parameterType="User"> delete from user where id=#{id}; </delete> <update id="updateUser" parameterType="User"> update user set name=#{name},level=#{level},phone=#{phone} where id=#{id}; </update> <select id="selectUser" parameterType="User" resultType="com.zk.model.User"> Select * from user where id=#{id}; </select> <select id="selectAllUser" resultType="com.zk.model.User"> Select * from user; </select> </mapper>
Finally, build a Main.java, implement database CRUD functions:
package MainApp; 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 com.zk.dao.IUser; import com.zk.model.User; public class Main { private static SqlSessionFactory sqlsessionfactory; private static Reader reader; static{ try { reader=Resources.getResourceAsReader("config/config.xml"); sqlsessionfactory=new SqlSessionFactoryBuilder().build(reader); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public SqlSessionFactory getSqlSessionFactory() { return sqlsessionfactory; } public static void main(String[]args) { //Insert(); //delete(); //update(); select(1); } public static void Insert(){ //获取session连接 SqlSession session=sqlsessionfactory.openSession(); //获取mapper IUser usermap=session.getMapper(IUser.class); //执行插入 User user1=new User(); user1.setId(1); user1.setLevel("a"); user1.setName("a"); user1.setPhone("19832321123"); usermap.addUser(user1); //提交事务 // Get insertion information Session.commit (); selectAllUser (); } public static void Delete () { // get the session connecting the SqlSession sqlSessionFactory.openSession session = (); // get Mapper IUser userMap = session.getMapper (IUser. class); // delete usermap.deleteUser (. 1); Session.commit (); selectAllUser (); } public static void Update () { // Get session connecting the SqlSession sqlSessionFactory.openSession session = (); // Get mapper userMap = session.getMapper IUser (IUser.class); selectAllUser (); the User the User = usermap.selectUser (1); user.setName("c"); // delete usermap.updateUser (user); session.commit(); selectAllUser(); } public static void select(int id){ //获取session连接 SqlSession session=sqlsessionfactory.openSession(); //获取mapper IUser usermap=session.getMapper(IUser.class); //selectAllUser(); User user = usermap.selectUser(id); //执行查询 System.out.println(user.toString()); session.commit(); //selectAllUser(); } private static void selectAllUser() { // TODO Auto-generated method stub SqlSession session=sqlsessionfactory.openSession(); IUser user=session.getMapper(IUser.class); printUser(user.selectAllUser()); } private static void printUser(final List<User> users) { // TODO Auto-generated method stub int count = 0; for (User user : users) { System.out.println("User Id: " + user.getId()); System.out.println("User Name: " + user.getName()); System.out.println("User Dept: " + user.getLevel()); System.out.println("User Website: " + user.getPhone()); } } }
This completes the additions and deletions to change search database.
Program structure as shown below: