万户网络网站建设网页设计常用代码
news/
2025/9/28 0:32:15/
文章来源:
万户网络网站建设,网页设计常用代码,公司部门分类,wordpress xml文件分割器十七、MyBatis的注解式开发
mybatis中也提供了注解式开发方式#xff0c;采用注解可以减少Sql映射文件的配置。 当然#xff0c;使用注解式开发的话#xff0c;sql语句是写在java程序中的#xff0c;这种方式也会给sql语句的维护带来成本。 官方是这么说的#xff1a; 使…十七、MyBatis的注解式开发
mybatis中也提供了注解式开发方式采用注解可以减少Sql映射文件的配置。 当然使用注解式开发的话sql语句是写在java程序中的这种方式也会给sql语句的维护带来成本。 官方是这么说的 使用注解来映射简单语句会使代码显得更加简洁但对于稍微复杂一点的语句Java 注解不仅力不从心还会让你本就复杂的 SQL 语句更加混乱不堪。 因此如果你需要做一些很复杂的操作最好用 XML 来映射语句。 使用注解编写复杂的SQL是这样的
原则简单sql可以注解。复杂sql使用xml。
模块名mybatis-013-annotation
打包方式jar
依赖mybatismysql驱动junitlogback
配置文件jdbc.properties、mybatis-config.xml、logback.xml
pojocom.study.mybatis.pojo.Car
mapper接口com.study.mybatis.mapper.CarMapper
17.1 Insert
package com.study.mybatis.mapper;import com.study.mybatis.pojo.Car;
import org.apache.ibatis.annotations.Insert;public interface CarMapper {Insert(valueinsert into t_car values(null,#{carNum},#{brand},#{guidePrice},#{produceTime},#{carType}))int insert(Car car);
}
package com.study.mybatis.test;import com.study.mybatis.mapper.CarMapper;
import com.study.mybatis.pojo.Car;
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 org.junit.Test;public class AnnotationTest {Testpublic void testInsert() throws Exception{SqlSessionFactory sqlSessionFactory new SqlSessionFactoryBuilder().build(Resources.getResourceAsStream(mybatis-config.xml));SqlSession sqlSession sqlSessionFactory.openSession();CarMapper mapper sqlSession.getMapper(CarMapper.class);Car car new Car(null, 1112, 卡罗拉, 30.0, 2000-10-10, 燃油车);int count mapper.insert(car);System.out.println(插入了几条记录 count);sqlSession.commit();sqlSession.close();}
}
17.2 Delete
Delete(delete from t_car where id #{id})
int deleteById(Long id);Test
public void testDelete() throws Exception{SqlSessionFactory sqlSessionFactory new SqlSessionFactoryBuilder().build(Resources.getResourceAsStream(mybatis-config.xml));SqlSession sqlSession sqlSessionFactory.openSession();CarMapper mapper sqlSession.getMapper(CarMapper.class);mapper.deleteById(89L);sqlSession.commit();sqlSession.close();
}17.3 Update
Update(update t_car set car_num#{carNum},brand#{brand},guide_price#{guidePrice},produce_time#{produceTime},car_type#{carType} where id#{id})
int update(Car car);Test
public void testUpdate() throws Exception{SqlSessionFactory sqlSessionFactory new SqlSessionFactoryBuilder().build(Resources.getResourceAsStream(mybatis-config.xml));SqlSession sqlSession sqlSessionFactory.openSession();CarMapper mapper sqlSession.getMapper(CarMapper.class);Car car new Car(88L,1001, 凯美瑞, 30.0,2000-11-11, 新能源);mapper.update(car);sqlSession.commit();sqlSession.close();
}17.4 Select
Select(select * from t_car where id #{id})
Results({Result(column id, property id, id true),Result(column car_num, property carNum),Result(column brand, property brand),Result(column guide_price, property guidePrice),Result(column produce_time, property produceTime),Result(column car_type, property carType)
})
Car selectById(Long id);Test
public void testSelectById() throws Exception{SqlSessionFactory sqlSessionFactory new SqlSessionFactoryBuilder().build(Resources.getResourceAsStream(mybatis-config.xml));SqlSession sqlSession sqlSessionFactory.openSession();CarMapper carMapper sqlSession.getMapper(CarMapper.class);Car car carMapper.selectById(88L);System.out.println(car);
}执行结果
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/920125.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!