当前位置: 首页 > news >正文

河南省鹤壁市住房和城乡建设局网站推广链接

河南省鹤壁市住房和城乡建设局网站,推广链接,外贸用什么网站好,明年做那些网站致富Repository 是Spring注解#xff0c;标识数据访问层组件#xff08;DAO, Data Access Object#xff09; 当一个类被标记为 Repository 时#xff1a; 1、组件扫描与自动代理#xff1a; Spring通过组件扫描#xff08;Component Scan#xff09;机制发现带有 Reposit… Repository 是Spring注解标识数据访问层组件DAO, Data Access Object 当一个类被标记为 Repository 时 1、组件扫描与自动代理 Spring通过组件扫描Component Scan机制发现带有 Repository 的类并将其纳入Spring IoC容器管理创建对应的Bean实例。 2、异常处理增强 Spring会针对标记了 Repository 的类捕获特定的数据访问异常如JDBC相关的SQLException并将其转换为Spring DataAccessException层次结构中的一个合适异常简化异常处理。 3、事务管理 在使用Spring AOP进行声明式事务管理的情况下标记为 Repository 的类的方法可以自动参与到事务中去无需额外配置事务切面。 4、语义清晰 尽管 Repository 在功能上等同于 Component 或 Service 注解但是从语义上讲它更明确地表明该类是用来执行数据库操作或数据持久化工作的。 使用样例 基础DAO类 import org.springframework.stereotype.Repository;Repository public class UserRepository {// 假设这里有一个JdbcTemplate或EntityManager等数据访问工具对象private JdbcTemplate jdbcTemplate;Autowiredpublic UserRepository(JdbcTemplate jdbcTemplate) {this.jdbcTemplate jdbcTemplate;}public User findByUsername(String username) {// 使用jdbcTemplate执行SQL查询以根据用户名查找用户// ...}public void save(User user) {// 执行保存用户的SQL语句// ...} }结合Spring Data JPA import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.stereotype.Repository;Repository public interface UserRepository extends JpaRepositoryUser, Long {User findByUsername(String username); } 与MyBatis整合 import org.apache.ibatis.annotations.Select; import org.springframework.stereotype.Repository;Repository public interface UserRepositoryMapper {Select(SELECT * FROM users WHERE username #{username})User findByUsername(Param(username) String username); } 自定义实现并处理特定异常 import org.springframework.dao.DataAccessException; import org.springframework.stereotype.Repository;Repository public class CustomUserRepository {Autowiredprivate SomeDataAccessObject dataAccessObject;public User getUserById(Long id) throws CustomNotFoundException {try {return dataAccessObject.getUser(id);} catch (DataAccessException ex) {throw new CustomNotFoundException(User not found, ex);}} } 在组件扫描和事务管理中配合使用 Configuration EnableTransactionManagement ComponentScan(basePackages {com.example.repository}) public class AppConfig {// 配置数据源、JdbcTemplate或SessionFactory等Beanpublic PlatformTransactionManager transactionManager(EntityManagerFactory emf) {return new JpaTransactionManager(emf);} }// 在应用中 Repository public class ProductRepository {// 这里的方法将在事务中执行public void updateProduct(Product product) {// 更新产品逻辑} }结合Transactional注解实现事务管理 import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional;Service public class OrderService {Autowiredprivate OrderRepository orderRepository;Autowiredprivate UserRepository userRepository;Transactionalpublic void placeOrder(Order order, User user) {// 保存订单order.setUser(user);orderRepository.save(order);// 更新用户购买记录user.getOrders().add(order);userRepository.save(user);} }Repository public interface UserRepository extends JpaRepositoryUser, Long { }Repository public interface OrderRepository extends JpaRepositoryOrder, Long { } 使用Spring Data REST配合Repository import org.springframework.data.repository.CrudRepository; import org.springframework.stereotype.Repository;Repository public interface ProductRepository extends CrudRepositoryProduct, Long {// Spring Data JPA自动提供CRUD操作无需编写SQL或查询方法ListProduct findByCategory(Category category);// 自定义查询方法Query(SELECT p FROM Product p WHERE p.name LIKE %:name%)ListProduct findByNameLike(Param(name) String name); }使用Spring Data R2DBC配合Repository import org.springframework.data.r2dbc.repository.R2dbcRepository; import org.springframework.stereotype.Repository;Repository public interface ProductRepository extends R2dbcRepositoryProduct, Long {FluxProduct findByCategory(String category);Query(SELECT * FROM products WHERE name LIKE $1)FluxProduct findByNameLike(String namePattern); }
http://www.tj-hxxt.cn/news/132152.html

相关文章:

  • 凤岗网站仿做简单flash个人网站
  • 云南省工程建设造价协会网站做英语阅读的网站或是app
  • 电子商务网站建设与管理的实践报告上海公司注册网上申请
  • 加盟型网站浏览器搜索引擎大全
  • 网站建设的维护工作外包平台都有哪些
  • 企业建设网站的意义企业微网站哪家好
  • 重庆博建设计院公司是网站深圳红酒网站建设
  • 一元钱购买网站空间中铁建设集团最新门户网登录
  • 国外做详情页网站天津市网站制作建设推广公司
  • 免费建站网站 百度一下营销战略咨询公司
  • 专注律师微网站建设与律师微信营销6如何做网站插件
  • 巩义便宜网站建设中文在线っと好きだっ最新版
  • 遵义微商城网站建设平台网站模板服务商
  • 医疗网站的建设设计要注意什么网站seo百度百科
  • 湖北省建设教育协会网站中国风网站模板下载
  • 网站开发 相册深圳seo推广培训
  • 网站泛解析天津市工程建设招标信息网
  • 陇南网站设计网络组建视频
  • 三水营销网站开发为什么资讯网站荣誉被收录
  • 配资网站建设多少钱教育直播平台搭建
  • 新手做自己的网站教程关键词优化价格表
  • 北京免费建站模板国家市场监督局官网入口
  • 抄袭别人网站的前端代码合法吗wordpress主题资源分享
  • 小型教育网站建设问题存在的互联网加盟
  • 无锡市住房和城乡建设部网站盐城 网站开发
  • 手机版文章网站源码专门做it招聘的网站
  • 粤icp备网站建设 中企动力广州从网站验证码谈用户体验
  • 沈阳做企业网站的公司信誉好的网站建设
  • 手机网站制作方案免费做视频网站
  • 做神马网站优化排名如何创建网站后台