mybatis实现增删改查_动力节点Java学院整理

网友投稿 229 2023-04-09


mybatis实现增删改查_动力节点Java学院整理

所需要用到的其他工具或技术:

项目管理工具 : Maven

测试运行工具 : Junit

数据库 : Derby

Maven Dependencies:

org.mybatis

mybatis

3.2.7

junit

junit

4.9

test

org.apache.derby

derby

10.10.2.0

org.apache.derby

derbyclient

10.10.2.0

SQL 建表及数据插入(沿用前两节中的数据库表及数据):

CREATE TABLE USER_TEST_TB(

ID INT PRIMARY KEY,

USERNAME VARCHAR(20) NOT NULL,

PASSWORD VARCHAR(20) NOT NULL,

NICKNAME VARCHAR(20) NOT NULL

);

INSERT INTO USER_TEST_TB VALUES(1,'1st','111','Jack');

INSERT INTO USER_TEST_TB VALUES(2,'2nd','222','Rose');

INSERT INTO USER_TEST_TB VALUES(3,'3rd','333','Will');

Mybatis配置文件 src/main/resource源目录下

test-mybatis-configuration.xml

PUBLIC "-//mybatis.org//DTD Config 3.0//EN"

"http://mybatis.org/dtd/mybatis-3-config.dtd">

value="jdbc:derby://localhost:1527/bjpowernode;create=true" />

User.java对象类(src/main/java/com/bjpowernode/practice目录下)

package com.bjpowernode.practice;

public class User

{

private Integer id;

private String username;

private String password;

private String nickname;

public Integer getId()

{

return id;

}

public void setId(Integer id)

{

this.id = id;

}

public String getUsername()

{

return username;

}

public void setUsername(String username)

{

this.username = username;

}

public String getPassword()

{

return password;

}

public void setPassword(String password)

{

this.password = password;

}

public String getNickname()

{

return nickname;

}

public void setNickname(String nickname)

{

this.nickname = nickname;

}

}

UserMapper.xml  Mapper文件(src/main/java/com.bjpowernode.practice目录下)

PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"

"http://mybatis.org/dtd/mybatis-3-mapper.dtd">

select *

from USER_TEST_TB

insert into

USER_TEST_TB

values(#{id},#{username},#{password},#{nickname})

update USER_TEST_TB set

USERNAME = #{username},

PASSWORD = #{password},

NICKNAME = #{nickname}

where ID = #{id}

delete from USER_TEST_TB WHERE ID=#{id}

UserMapper.java Mapper类(src/main/java/com.bjpowernode.practice目录下)

package com.bjpowernode.practice;

import java.util.List;

public interface UserMapper

{

public List getUser();

public void insertUser(User user);

public void updateUser(User user);

public void deleteUser(int userId);

}

测试类TestMyBatis.java(src/test/java/OeOyipCQcom.bjpowernode.practice目录下)

package com.bjpowernode.practice;

import java.io.InputStream;

import java.text.MessageFormat;

import java.util.List;

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 TestMyBatis

{

private String source;

private InputStream inputStream;

private SqlSessionFactory sqlSessionFactory;

@Before

public void setUp()

{

/**

* 准备Mybatis运行环境

*/

source = "test-mybatis-configuration.xml";

inputStream = TestMyBatis.class.getClassLoader().getResourceAsStream(source);

sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);

}

@Test

public void testGet()

{

try

{

// 获取Session连接

SqlSession session = sOeOyipCQqlSessionFactory.openSession();

// 获取Mapper

UserMapper userMapper = session.getMapper(UserMapper.class);

// 显示User信息

System.out.println("Test Get start...");

this.printUsers(userMapper.getUser());

System.out.println("Test Get finished...");

}

catch (Exception e)

{

e.printStackTrace();

}

}

@Test

public void testInsert()

{

try

{

// 获取Session连接

SqlSession session = sqlSessionFactory.openSession();

// 获取Mapper

UserMapper userMapper = session.getMapper(UserMapper.class);

System.out.println("Test insert start...");

// 显示插入之前User信息

System.out.println("Before insert");

this.printUsers(userMapper.getUser());

// 执行插入

userMapper.insertUser(this.mockUser("FREU_INS_USER", "BJPOWERNODE_INS_PASS", "BJPOWERNODE_INS_NICK"));

// 提交事务

session.commit();

// 显示插入之后User信息

System.out.println("\r\nAfter insert");

this.printUsers(userMapper.getUser());

System.out.println("Test insert finished...");

}

catch (Exception e)

{

e.printStackTrace();

}

}

@Test

public void testUpdate()

{

try

{

// 获取Session连接

SqlSession session = sqlSessionFactory.openSession();

// 获取Mapper

UserMapper userMapper = session.getMapper(UserMapper.class);

System.out.println("Test update start...");

// 显示更新之前User信息

System.out.println("Before update");

this.printUsers(userMapper.getUser());

// 执行更新

userMapper.updateUser(this.mockUser("FREU_UPD_USER", "BJPOWERNODE_UPD_PASS", "BJPOWERNODE_UPD_NICK"));

// 提交事务

session.commit();

// 显示更新之后User信息

System.out.println("\r\nAfter update");

this.printUsers(userMapper.getUser());

System.out.println("Test update finished...");

}

catch (Exception e)

{

e.printStackTrace();

}

}

@Test

public void testDelete()

{

try

{

// 获取Session连接

SqlSession session = sqlSessionFactory.openSession();

// 获取Mapper

UserMapper userMapperOeOyipCQ = session.getMapper(UserMapper.class);

System.out.println("Test delete start...");

// 显示删除之前User信息

System.out.println("Before delete");

this.printUsers(userMapper.getUser());

// 执行删除

userMapper.deleteUser(this.mockUser(null, null, null).getId());

// 提交事务

session.commit();

// 显示删除之后User信息

System.out.println("\r\nAfter delete");

this.printUsers(userMapper.getUser());

System.out.println("Test delete finished...");

}

catch (Exception e)

{

e.printStackTrace();

}

}

/**

*

* 组装一个User对象

*

* @return

*/

public User mockUser(String username, String password, String nickname)

{

User user = new User();

user.setId(10);

user.setUsername(username);

user.setPassword(password);

user.setNickname(nickname);

return user;

}

/**

*

* 打印用户信息到控制台

*

* @param users

*/

private void printUsers(final List users)

{

int count = 0;

for (User user : users)

{

System.out.println(MessageFormat.format("==User[{0}]=================", ++count));

System.out.println("User Id: " + user.getId());

System.out.println("User UserName: " + user.getUsername());

System.out.println("User Password: " + user.getPassword());

System.out.println("User nickname: " + user.getNickname());

}

}

}

总结

以上所述是给大家介绍的mybatis实现增删改查_动力节点Java学院整理,希望对大家有所帮助,如果大家有任何疑问请给我留言,会及时回复大家的。在此也非常感谢大家对我们网站的支持!

value="jdbc:derby://localhost:1527/bjpowernode;create=true" />

User.java对象类(src/main/java/com/bjpowernode/practice目录下)

package com.bjpowernode.practice;

public class User

{

private Integer id;

private String username;

private String password;

private String nickname;

public Integer getId()

{

return id;

}

public void setId(Integer id)

{

this.id = id;

}

public String getUsername()

{

return username;

}

public void setUsername(String username)

{

this.username = username;

}

public String getPassword()

{

return password;

}

public void setPassword(String password)

{

this.password = password;

}

public String getNickname()

{

return nickname;

}

public void setNickname(String nickname)

{

this.nickname = nickname;

}

}

UserMapper.xml  Mapper文件(src/main/java/com.bjpowernode.practice目录下)

PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"

"http://mybatis.org/dtd/mybatis-3-mapper.dtd">

select *

from USER_TEST_TB

insert into

USER_TEST_TB

values(#{id},#{username},#{password},#{nickname})

update USER_TEST_TB set

USERNAME = #{username},

PASSWORD = #{password},

NICKNAME = #{nickname}

where ID = #{id}

delete from USER_TEST_TB WHERE ID=#{id}

User.java对象类(src/main/java/com/bjpowernode/practice目录下)

package com.bjpowernode.practice;

public class User

{

private Integer id;

private String username;

private String password;

private String nickname;

public Integer getId()

{

return id;

}

public void setId(Integer id)

{

this.id = id;

}

public String getUsername()

{

return username;

}

public void setUsername(String username)

{

this.username = username;

}

public String getPassword()

{

return password;

}

public void setPassword(String password)

{

this.password = password;

}

public String getNickname()

{

return nickname;

}

public void setNickname(String nickname)

{

this.nickname = nickname;

}

}

UserMapper.xml  Mapper文件(src/main/java/com.bjpowernode.practice目录下)

PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"

"http://mybatis.org/dtd/mybatis-3-mapper.dtd">

select *

from USER_TEST_TB

insert into

USER_TEST_TB

values(#{id},#{username},#{password},#{nickname})

update USER_TEST_TB set

USERNAME = #{username},

PASSWORD = #{password},

NICKNAME = #{nickname}

where ID = #{id}

delete from USER_TEST_TB WHERE ID=#{id}

UserMapper.java Mapper类(src/main/java/com.bjpowernode.practice目录下)

package com.bjpowernode.practice;

import java.util.List;

public interface UserMapper

{

public List getUser();

public void insertUser(User user);

public void updateUser(User user);

public void deleteUser(int userId);

}

测试类TestMyBatis.java(src/test/java/OeOyipCQcom.bjpowernode.practice目录下)

package com.bjpowernode.practice;

import java.io.InputStream;

import java.text.MessageFormat;

import java.util.List;

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 TestMyBatis

{

private String source;

private InputStream inputStream;

private SqlSessionFactory sqlSessionFactory;

@Before

public void setUp()

{

/**

* 准备Mybatis运行环境

*/

source = "test-mybatis-configuration.xml";

inputStream = TestMyBatis.class.getClassLoader().getResourceAsStream(source);

sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);

}

@Test

public void testGet()

{

try

{

// 获取Session连接

SqlSession session = sOeOyipCQqlSessionFactory.openSession();

// 获取Mapper

UserMapper userMapper = session.getMapper(UserMapper.class);

// 显示User信息

System.out.println("Test Get start...");

this.printUsers(userMapper.getUser());

System.out.println("Test Get finished...");

}

catch (Exception e)

{

e.printStackTrace();

}

}

@Test

public void testInsert()

{

try

{

// 获取Session连接

SqlSession session = sqlSessionFactory.openSession();

// 获取Mapper

UserMapper userMapper = session.getMapper(UserMapper.class);

System.out.println("Test insert start...");

// 显示插入之前User信息

System.out.println("Before insert");

this.printUsers(userMapper.getUser());

// 执行插入

userMapper.insertUser(this.mockUser("FREU_INS_USER", "BJPOWERNODE_INS_PASS", "BJPOWERNODE_INS_NICK"));

// 提交事务

session.commit();

// 显示插入之后User信息

System.out.println("\r\nAfter insert");

this.printUsers(userMapper.getUser());

System.out.println("Test insert finished...");

}

catch (Exception e)

{

e.printStackTrace();

}

}

@Test

public void testUpdate()

{

try

{

// 获取Session连接

SqlSession session = sqlSessionFactory.openSession();

// 获取Mapper

UserMapper userMapper = session.getMapper(UserMapper.class);

System.out.println("Test update start...");

// 显示更新之前User信息

System.out.println("Before update");

this.printUsers(userMapper.getUser());

// 执行更新

userMapper.updateUser(this.mockUser("FREU_UPD_USER", "BJPOWERNODE_UPD_PASS", "BJPOWERNODE_UPD_NICK"));

// 提交事务

session.commit();

// 显示更新之后User信息

System.out.println("\r\nAfter update");

this.printUsers(userMapper.getUser());

System.out.println("Test update finished...");

}

catch (Exception e)

{

e.printStackTrace();

}

}

@Test

public void testDelete()

{

try

{

// 获取Session连接

SqlSession session = sqlSessionFactory.openSession();

// 获取Mapper

UserMapper userMapperOeOyipCQ = session.getMapper(UserMapper.class);

System.out.println("Test delete start...");

// 显示删除之前User信息

System.out.println("Before delete");

this.printUsers(userMapper.getUser());

// 执行删除

userMapper.deleteUser(this.mockUser(null, null, null).getId());

// 提交事务

session.commit();

// 显示删除之后User信息

System.out.println("\r\nAfter delete");

this.printUsers(userMapper.getUser());

System.out.println("Test delete finished...");

}

catch (Exception e)

{

e.printStackTrace();

}

}

/**

*

* 组装一个User对象

*

* @return

*/

public User mockUser(String username, String password, String nickname)

{

User user = new User();

user.setId(10);

user.setUsername(username);

user.setPassword(password);

user.setNickname(nickname);

return user;

}

/**

*

* 打印用户信息到控制台

*

* @param users

*/

private void printUsers(final List users)

{

int count = 0;

for (User user : users)

{

System.out.println(MessageFormat.format("==User[{0}]=================", ++count));

System.out.println("User Id: " + user.getId());

System.out.println("User UserName: " + user.getUsername());

System.out.println("User Password: " + user.getPassword());

System.out.println("User nickname: " + user.getNickname());

}

}

}

总结

以上所述是给大家介绍的mybatis实现增删改查_动力节点Java学院整理,希望对大家有所帮助,如果大家有任何疑问请给我留言,会及时回复大家的。在此也非常感谢大家对我们网站的支持!


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:解决Spring Boot 在localhost域奇怪的404问题(Mac book pro)
下一篇:Java图片中显示当前时间的方法 原创
相关文章

 发表评论

暂时没有评论,来抢沙发吧~