Mybatis 传入CLOB,BLOB参数

CLOB大文本存字符串

BLOB图片存字节数组

public class Student {

	private Integer id;
	private String name;
	private Integer age;
	private byte[] pic;
	private String remark;
}
	public int insertStudent(Student student);
	<insert id="insertStudent" parameterType="Student" flushCache="true">
		insert into t_student values(null,#{name},#{age},#{pic},#{remark});
	</insert>
	public void testInsertStudent(){
		logger.info("添加学生");
		Student student=new Student();
		student.setName("张三4");
		student.setAge(14);
		student.setRemark("很长的本文...");
		byte []pic=null;
		try{
			File file=new File("c://boy.jpg");
			InputStream inputStream=new FileInputStream(file);
			pic=new byte[inputStream.available()];
			inputStream.read(pic);
			inputStream.close();
		}catch(Exception e){
			e.printStackTrace();
		}
		student.setPic(pic);
		studentMapper.insertStudent(student);
		sqlSession.commit();
	}

从数据库读取Blob

public void testGetStudentById(){
		logger.info("通过ID查找学生");
		Student student=studentMapper.getStudentById(4);
		System.out.println(student);
		byte []pic=student.getPic();
		try{
			File file=new File("d://boy2.jpg");
			OutputStream outputStream=new FileOutputStream(file);
			outputStream.write(pic);
			outputStream.close();
		}catch(Exception e){
			e.printStackTrace();
		}
	}

猜你喜欢

转载自blog.csdn.net/qq_35029061/article/details/81836636