MyBatis学习——配置相关xml实现增删改查

配置mybatis的配置文件。mybatis.xml

<?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>
	<settings>
		<setting name="logImpl" value="LOG4J"/>
	</settings>
	<typeAliases>
		<!-- 给一个类起别名 -->
		<typeAlias type="cn.liu.pojo.User" alias="user"/>
		<!-- 给包下所有类起别名 -->
		<package name="cn.liu.pojo"/>
	</typeAliases>
	<environments default="default">
		<environment id="default">
			<transactionManager type="JDBC"></transactionManager>
			<dataSource type="POOLED">
				<property name="driver" value="com.mysql.jdbc.Driver"/>
	       	 	<property name="url" value="jdbc:mysql://127.0.0.1:3306/my01"/>
	        	<property name="username" value="root"/>
	        	<property name="password" value="root"/>
			</dataSource>
		</environment>
	</environments>
	<mappers>
		<mapper resource="cn/liu/mapper/UserMapper.xml"/>
	</mappers>
</configuration>

mapper.xml的sql语句。

<?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="a.b">
    <!-- 1.第一种查询方式 -->
	<select id="selone" parameterType="int" resultType="cn.liu.pojo.User">
		select * from user where uid=#{0}
	</select>
	<select id="sel" parameterType="int" resultType="cn.liu.pojo.User">
		select * from user where uid=#{param1}
	</select>
	<!-- 2.多个参数导入 -->
	<select id="selmap" parameterType="map" resultType="cn.liu.pojo.User">
		select * from user where uid=#{uid} and age=#{age}
	</select>
	<!-- 分页 -->
	<select id="sellimit" parameterType="map" resultType="cn.liu.pojo.User">
		select * from user limit #{page},#{num}
	</select>
	<!-- 用别名 -->
	<select id="seltwo" resultType="user">
		select * from user
	</select>
	<!-- 用别名 -->
	<select id="selthree" resultType="User">
		select * from user
	</select>
	<!-- 新增 -->
	<insert id="ins" parameterType="user">
		insert into user values(#{uid},#{uname},#{age})
	</insert>
	<!-- 更新 -->
	<update id="up" parameterType="user">
		update user set uname=#{uname} where uid=#{uid}
	</update>
	<!-- 删除 -->
	<delete id="de" parameterType="int">
		delete from user where uid=#{0}
	</delete>
</mapper>

测试类:

package cn.liu.test;

import java.io.IOException;
import java.io.InputStream;
import java.util.HashMap;
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 cn.liu.pojo.User;


public class Test {
	public static void main(String[] args) throws IOException{
		//读取xml,转换为流对象
		InputStream is = Resources.getResourceAsStream("mybatis.xml");
		//使用工厂设计模式
		SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(is);
		//生成一个Sqlsession
		SqlSession session = factory.openSession();
		/*
		HashMap<String, Object> map = new HashMap();
		map.put("uid", 1);
		map.put("age", 21);
		User u = session.selectOne("a.b.selmap", map);
		System.out.println(u);
		
		int page = 2;
		int num = 3;
		HashMap<String,Object> map = new HashMap();
		map.put("page", page);
		map.put("num", num);
		List<User> list = session.selectList("a.b.sellimit", map);
		System.out.println(list.toString());
		
		List<User> list = session.selectList("a.b.selthree");
		List<User> list2 = session.selectList("a.b.seltwo");
		System.out.println(list2.toString());
		
		
		User u = new User();
		u.setAge(28);
		u.setUname("李红");
		u.setUid(10);
		int i = session.insert("a.b.ins",u);
		if(i>0){
			System.out.println("新增成功");
		}else{
			System.out.println("新增失败");
		}
		session.commit();
		
		int i = session.delete("a.b.de",10);
		if(i>0){
			System.out.println("删除成功");
		}else{
			System.out.println("删除失败");
		}
		session.commit();
		
		
		User u = new User();
		u.setAge(28);
		u.setUname("龚红");
		u.setUid(8);
		int i = session.update("a.b.up", u);
		if(i>0){
			System.out.println("更新成功");
		}else{
			System.out.println("更新失败");
		}
		*/
		User one = session.selectOne("a.b.selone",8);
		System.out.println(one.toString());
		session.commit();
		
		
		
		
		session.close();
	}
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值