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

威海市网站建设wordpress展示模板

威海市网站建设,wordpress展示模板,无锡房产网,如何编辑网站目录 1. 常用易混淆注解解释1.1 Resource和Autowired注解的区别1.2 PathVariable和RequestParam注解的区别 2. Mybatis-Plus高级特性2.1 强大的通用CRUD接口2.2 代码生成器 3. IDEA实用快捷键4. 前后端联调关键点4.1 代码示例4.2 联调要点4.3 调试技巧 1. 常用易混淆注解解释 …

目录

  • 1. 常用易混淆注解解释
    • 1.1 @Resource和@Autowired注解的区别
    • 1.2 @PathVariable和@RequestParam注解的区别
  • 2. Mybatis-Plus高级特性
    • 2.1 强大的通用CRUD接口
    • 2.2 代码生成器
  • 3. IDEA实用快捷键
  • 4. 前后端联调关键点
    • 4.1 代码示例
    • 4.2 联调要点
    • 4.3 调试技巧

1. 常用易混淆注解解释

1.1 @Resource和@Autowired注解的区别

在Spring框架中,@Resource@Autowired都是用于依赖注入的注解,但有以下关键区别:

特性@Autowired@Resource
来源Spring框架Java标准(JSR-250)
注入方式默认按类型(byType)默认按名称(byName)
必需性默认必须(可设required=false)非必须
指定名称需配合@Qualifier直接使用name属性
构造函数注入支持不支持
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import javax.annotation.Resource;// 服务接口
interface PaymentService {void pay();
}// 实现类1
@Service("wechatPay")
class WechatPay implements PaymentService {public void pay() {System.out.println("微信支付");}
}// 实现类2
@Service("aliPay")
class AliPay implements PaymentService {public void pay() {System.out.println("支付宝支付");}
}// 客户端类
@Service
class ShoppingCart {/* 最常用场景对比 */// 1. 按类型注入(默认方式)@Autowired  // Spring方式:存在多个实现时会报错private PaymentService typeInjectedService;@Resource   // Java标准方式:会退化成按名称注入(变量名作为bean名称)private PaymentService resourceInjectedService;// 2. 按名称注入(解决多个实现问题)@Autowired@Qualifier("wechatPay")  // Spring方式:需要两个注解private PaymentService qualifiedService;@Resource(name = "aliPay")  // Java标准方式:一个注解搞定private PaymentService namedResourceService;// 3. 构造函数注入(推荐方式)private final PaymentService constructorInjected;@Autowired  // 唯一支持构造器注入的方式(Spring 4.3+可省略)public ShoppingCart(PaymentService constructorInjected) {this.constructorInjected = constructorInjected;}/* 实际使用示例 */public void checkout(int paymentType) {switch(paymentType) {case 1:qualifiedService.pay();    // 明确使用微信支付break;case 2:namedResourceService.pay(); // 明确使用支付宝break;default:constructorInjected.pay(); // 使用默认注入的实现}}
}

1.2 @PathVariable和@RequestParam注解的区别

这两个注解都用于从HTTP请求中获取参数,但使用场景不同:

特性@PathVariable@RequestParam
参数位置URL路径部分URL查询字符串
示例URL/user/{id}/user?id=123
是否必需默认必需可选(可设required=false)
多值处理不支持支持(数组/集合)
// @PathVariable 示例
@GetMapping("/users/{userId}")
public User getUser(@PathVariable String userId) {// ...
}// @RequestParam 示例
@GetMapping("/users")
public User getUser(@RequestParam(required = false) String name) {// ...
}

2. Mybatis-Plus高级特性

Mybatis-Plus在Mybatis基础上提供了诸多便利功能:

2.1 强大的通用CRUD接口

内置通用Mapper,无需编写简单SQL

分类方法示例说明
插入insert(T entity)插入一条记录
删除deleteById(Serializable id)根据ID删除
deleteBatchIds()批量删除(根据ID集合)
更新updateById(T entity)根据ID更新
update(entity, wrapper)根据条件更新
查询selectById()根据ID查询
selectOne()查询一条记录(结果多条会报错)
selectList()查询列表
selectCount()查询总数
分页selectPage()分页查询

2.2 代码生成器

一键生成Entity、Mapper、Service等

在这里插入图片描述

3. IDEA实用快捷键

功能Windows快捷键
全局搜索Double Shift
当前文件查找Ctrl+F
在所有文件/模块/文件夹查找Ctrl+Alt+F
代码格式化Ctrl+Alt+L
重写方法Ctrl+O
重写/实现方法Ctrl+I
AI智能补全Tab
输入表达式后使用此后缀快速生成变量.var

4. 前后端联调关键点

4.1 代码示例

// 正确示例 - 参数名与后端一致
methods: {deleteInterviewer(interviewerId) {...}).then(() => {var params = {interviewerId: interviewerId}
deleteInterviewer: function(params) {return instance({url: '/interviewer/delete',method: 'delete',params: params})
}

后端接口:

@DeleteMapping("/delete")
public Result delete(@RequestParam String interviewerId) {// 参数名必须与前端一致service.delete(interviewerId);return Result.ok();
}

4.2 联调要点

  1. 命名一致性:前后端参数名严格一致
  2. 请求方式匹配
    • GET - 查询
    • POST - 创建
    • PUT - 更新
    • DELETE - 删除
  3. 数据格式
    • 明确约定JSON字段命名风格(驼峰/下划线)
    • 日期格式统一(如yyyy-MM-dd HH:mm:ss)

4.3 调试技巧

使用Postman测试接口

在这里插入图片描述

开启SpringBoot的SQL日志:

mybatis-plus:configuration:log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
http://www.yayakq.cn/news/342026/

相关文章:

  • 网站见建设南宁住房建设部网站
  • 定制网站开发冬天里的白玫瑰湖南长沙seo教育
  • 网站建设与推广综合实训总结品牌建设专家库推荐表
  • 花钱做网站要多少钱个人能网站建设
  • 公司网站公司新闻公关公司服务的特点包括
  • 网络宣传网站建设制作福州免费建站品牌企业
  • 网站后台插件宣传平台
  • 网站 上传文件forpress wordpress wp另类
  • 乐山网站建设培训学校杭州做邮票的公司网站
  • 多用户商城网站建设方案如何建设购物网站
  • 网站空间使用方法asp.net mvc6电商网站开发实践
  • dedecms微电影网站模板成都比较好的装修设计公司
  • 手机网站设计字体多大做平台的网站有哪些内容吗
  • 国外做mg动画的网站大全seo推广多少钱
  • 提供常州网站建设商务网站建设实训报告1500字
  • 网站排版教程互联网网站名字
  • 怎么创建个人的网站柳州城市的城乡建设管理局网站
  • 网站地图html怎么做如何调整网站板块位置
  • 毕业答辩ppt模板免费下载网站济南网站优化公司哪家好
  • 学校网站建设步骤过程深圳企业网站建设哪家好
  • 网站开发应注意什么网络营销今后的发展趋势
  • 仪征市城乡建设局网站如何用html制作网站
  • 网站建站前期准备工作沈阳seo排名优化软件
  • 怎样申请一个网站深圳数码网站建设
  • 仿土豆网站源码wordpress 游客投稿
  • 建设一个网站需要什么安全设备达内学网站开发培训课程
  • 建网站的基本流程怎么做招标公司网站
  • 杏坛网站建设内蒙古两学一做网站
  • 模板建站常规流程石家庄建设项目公示网
  • 碧海蓝天网站wordpress能改什么