博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Mysql利用注解进行开发
阅读量:3892 次
发布时间:2019-05-23

本文共 3424 字,大约阅读时间需要 11 分钟。

  1. dao层代码
import com.baidu.pojo.User;import org.apache.ibatis.annotations.*;import java.util.List;public interface UserDao {
//查询所有用户 @Select("select * from user") List
getUserList(); @Select("select * from user where id = #{id}") User getUserById(@Param("id") int id); @Insert("insert into user(id,name,pwd) values (#{id},#{name},#{pwd})") int insert(User user); @Delete("delete from user where id = #{id}") int deleteUserById(@Param("id") int id); @Update("update user set name = #{name},pwd = #{pwd} where id = #{id}") int updateUser(User user);}
  1. 工具类
package com.baidu.utils;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 java.io.IOException;import java.io.InputStream;//mybatis的工具类,重复的代码的提纯public class MyBatisUtils {
//类变量不需要设置默认值; private static SqlSessionFactory sqlSessionFactory; static {
//在maven中,所有的资源文件一般都放在resources目录下,我们可以直接拿到。 InputStream inputStream = null; try {
String resource = "mybatis-config.xml"; inputStream = Resources.getResourceAsStream(resource); sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); } catch (IOException e) {
e.printStackTrace(); }finally {
if (inputStream != null){
try {
inputStream.close(); } catch (IOException e) {
e.printStackTrace(); } } } } //设置事务自动提交 public static SqlSession getSqlSession(){
return sqlSessionFactory.openSession(true); }}
  1. 测试类
package com.baidu.dao;import com.baidu.pojo.User;import com.baidu.utils.MyBatisUtils;import org.apache.ibatis.session.SqlSession;import org.junit.Test;import java.util.List;public class UserDaoTest {
@Test public void getUserList(){
SqlSession sqlSession = MyBatisUtils.getSqlSession(); UserDao mapper = sqlSession.getMapper(UserDao.class); List
userList = mapper.getUserList(); for (User user : userList) {
System.out.println(user); } sqlSession.close(); } @Test public void getUserById(){
SqlSession sqlSession = MyBatisUtils.getSqlSession(); UserDao mapper = sqlSession.getMapper(UserDao.class); User user = mapper.getUserById(1); sqlSession.close(); System.out.println(user); } @Test public void insert(){
SqlSession sqlSession = MyBatisUtils.getSqlSession(); UserDao mapper = sqlSession.getMapper(UserDao.class); int i = mapper.insert(new User(9, "辛卫东", "12456")); sqlSession.close(); System.out.println(i); } @Test public void deleteById(){
SqlSession sqlSession = MyBatisUtils.getSqlSession(); UserDao mapper = sqlSession.getMapper(UserDao.class); int i = mapper.deleteUserById(9); sqlSession.close(); System.out.println(i); } @Test public void updateById(){
SqlSession sqlSession = MyBatisUtils.getSqlSession(); UserDao mapper = sqlSession.getMapper(UserDao.class); int i = mapper.updateUser(new User(8,"xwd","789460")); sqlSession.close(); System.out.println(i); }}

转载地址:http://ihohn.baihongyu.com/

你可能感兴趣的文章
Top 10 “Yum” installables to be productive as a developer on Red Hat Enterprise Linux
查看>>
[小技巧] Vim 如果去除 “existing swap file” 警告
查看>>
如何在linux下检测内存泄漏
查看>>
十年生聚,Vim 8.0 发布了!
查看>>
【演歌】加賀の女 歌词翻译
查看>>
東京音頭 (东京音头) 歌词翻译
查看>>
Windows 7 下登录界面里 Ctrl + Alt + Del 无法使用
查看>>
惠山赏菊 & 梅园赏桂
查看>>
[小技巧] cat /proc/modules 显示的地址为 0
查看>>
[游戏] chrome 的小彩蛋
查看>>
napi
查看>>
_GNU_SOURCE和__USE_GNU的差别
查看>>
Linux 有了 “DTrace”
查看>>
Linux 系统中僵尸进程
查看>>
一个 2 年 Android 开发者的 18 条忠告
查看>>
标志性文本编辑器 Vim 迎来其 25 周年纪念日
查看>>
[小技巧] chrome 的 vim 插件
查看>>
在 Linux 中查看你的时区
查看>>
[小技巧] [trac] Fix AttributeError: 'NullTranslations' object has no attribute 'add'
查看>>
[小技巧] Mac OS X上键盘的键位重映射
查看>>