- 1.如何配置开发环境(JDK、Maven、IDEA)搭建SpringBoot项目
yjx012
javamavenintellij-ideaspringboot
搭建SpringBoot项目的开发环境主要包括安装和配置JDK、Maven和IDEA(IntelliJIDEA)。以下是详细的步骤和注意事项。1.安装JDK1.1下载JDKDownloadIntelliJIDEA–TheLeadingJavaandKotlinIDE1.2安装JDK下载后,按照安装向导完成安装。安装过程中请记住安装路径,通常为C:\ProgramFiles\Java\jdk-11或
- 【工具使用】小白入门idea插件开发
问道飞鱼
开发工具知识intellij-ideajavaide
文章目录开发流程**一、开发环境准备****二、创建插件项目****三、插件核心配置(plugin.xml)****四、编写插件功能****1.实现Action(动作)****2.使用扩展点(Extensions)****3.界面开发****五、调试与运行****六、打包与发布****1.生成JAR包****2.发布到JetBrains插件市场****3.本地安装****七、核心概念与API***
- idea 配置并运行python
鬼龙寺
intellij-ideapythonjavaide开发语言
我整理的一些关于【CI】的项目学习资料(附讲解~~)和大家一起分享、学习一下:https://d.51cto.com/xltfov使用IntelliJIDEA配置并运行Python项目在当今的编程世界中,选择合适的集成开发环境(IDE)对提高开发效率至关重要。IntelliJIDEA是一款强大的IDE,它不仅支持Java,还通过插件扩展支持Python等其他编程语言。本篇文章将指导读者如何在Int
- IDEA项目能正常启动 但是get/set 方法都是爆红
TFHoney
intellij-ideajava
问题背景:项目中也引入了lombok的依赖,@Data注解也标注在实体类上了,但所有的get和set方法爆红,项目也可以正常启动问题原因:没有安装lombok插件问题解决:只需在idea上:file—>settings—>plugins---->搜索lombok的插件,install安装即可或者去官网下载,选择链接附上(Lombok-IntelliJIDEsPlugin|Marketplace),
- servlet到底是什么东西
一勺菠萝丶
Java
一直对servlet是个什么有些疑惑,不清楚到底是什么,在知乎上看到一段感觉不错,记录下来本以为servlet是很复杂的东西,事实上,servlet就是一个Java接口,interface!打开idea,ctrl+shift+n,搜索servlet,就可以看到是一个只有5个方法的interface!所以,网络协议、http什么的,servlet根本不管!也管不着!那servlet是干嘛的?很简单,
- DeepSeek 部署与集成实战教程
挖掘机技术我最强
AIjava人工智能
《零基础部署DeepSeek全栈指南:从API接入到高并发优化(含避坑实录)》一、本地开发环境部署(Windows/Mac)1.前置条件准备Java环境:JDK17+(推荐AzulZulu)#验证安装java-versionjavac-versionIDE配置:IntelliJIDEA安装以下插件.envfilessupport(环境变量管理)HTTPClient(API调试)Docker(容器化
- idea常用快捷键(不全,只记录自己喜欢用的快捷键)
风吹一城沙
编程工具操作intellij-ideajavaide
idea快捷键=eclipse快捷键Ctrl+N(Ctrl+Shift+N)快速定位文件Ctrl+Alt+T将选定的代码块添加包裹代码,例如:if…else,try…catch等,很全Ctrl+W按单词从小到大范围选取词块,选取变量非常方便Ctrl+/单行注释与反注释Ctrl+Shift+/多行注释与反注释F2/Shift+F2在错误语句中上下快速定位跳转Shift+F6文件重命名=F2Ctrl+
- IDEA快捷键总结
sq0723
代码开发工具集群环境搭建IDEA快捷键
//代码导入******1、ctrl+alt+s设置菜单2、Ctrl+d复制行或者已选代码块3、Alt+/代码自动补全4、Alt+insert自动生成构造方法等5、Ctrl+shift+回车自动补全结尾6、Ctrl+j自动代码生成模板,例如psvm,sout等7、Alt+回车导包或者修正已经导入的包///代码编辑**8、Ctrl+alt+l格式化代码9、Ctrl+alt+i代码自动缩进10、Ctr
- IDEA-快捷键积累
Mr.Debug
快捷键intellijidea
文章目录前言一、使用步骤1.debug常用2.查找前言windows系统自己idea的debug快捷键记录。一、使用步骤1.debug常用alt+F10跳转到正在执行的行2.查找Alt+F7查找类或方法在哪被使用Ctrl+H查看类的继承关系,例如HashMap的父类是AbstractMap,子类则有一大堆。Ctrl+F12当前类中查找一个方法快捷键例如在String类中查找contains方法。第
- IDEA快捷键大全
aabond
javaintellij-ideajavaintellijideakeymap
一、IDEA常用快捷键可通过IDEA菜单栏Help->KeymapReference查看二、查看快捷键功能和修改三、常用快捷键以下是我在工作和学习中会用到的快捷键注:以下快捷键后加*表示十分常用3.1ALT快捷键含义ALT+7显示当前类结构ALT+Delete安全删除ALT+Enter*显示智能操作列表ALT+F1选择当前类在多种视图中择一显示ALT+F7查看类/方法/属性/参数等的使用情况ALT
- IDEA中常用快捷键
以码令天下
后端JAVAjava开发语言
IDEA中的快捷键在IDEA中快速生成if(变量==null):ifn在IDEA中快速生成main方法:psvm在IDEA中快速生成Sytem.out.println():sout删除一行:Ctrl+yIDEA是自动保存的对于目录:左箭头关闭,右箭头打开IDEA中任何窗口的关闭:Esc窗口的变大、变小:shift+Ctrl+F12或者Alt+1切换窗口:Alt+左/右箭头快速运行:Ctrl+shi
- Intellij IDEA快捷键大全汇总
harryptter
javajavaintellijidea
转载自:http://www.jb51.net/softjc/261714.htmlAlt+回车导入包,自动修正Ctrl+N查找类Ctrl+Shift+N查找文件Ctrl+Alt+L格式化代码Ctrl+Alt+O优化导入的类和包Alt+Insert生成代码(如get,set方法,构造函数等)Ctrl+E或者Alt+Shift+C最近更改的代码Ctrl+R替换文本Ctrl+F查找文本Ctrl+Shi
- IDEA常用快捷键使用
Tony_chenph
IDEA快捷使用intellij-ideajavaide
目录1、自动导包、自动删包2、if条件判断快捷键3、for循环快捷键4、while循环快速生成快捷键5、var快速生成变量6、return7、输出8、异常try{}catch9、集合操作1、自动导包、自动删包2、if条件判断快捷键booleanflag=true;//flag.if回车if(flag){}//flag.else回车if(!flag){}3、for循环快捷键//fori回车快速生成f
- Maven下载&安装&IDEA使用Maven&Java在pom.xml配置教程
C_V_Better
java开发工具idemavenjavaintellij-idea
一、Maven简介Maven是一个强大的项目管理和构建工具,主要用于Java项目的构建、依赖管理和文档生成等。它通过一个统一的XML文件(pom.xml)来管理项目的整个生命周期,包括编译、测试、打包、发布等环节。二、Maven下载与安装(一)下载访问Maven官方网站,点击导航栏中的"Download"按钮。找到适合你操作系统的版本下载链接,通常可以直接选择二进制压缩包(如:apache-mav
- com.google.common.collect.ImmutableList$SerializedForm
xiejunna
androidAndroidStudio
今天AndroidStudio安装了个2021版本的,gradle用了7.3.3,创建项目后控制台总是有这样一个错误:Unabletoloadclass'com.google.common.collect.ImmutableList$SerializedForm'.Thisisanunexpectederror.Pleasefileabugcontainingtheidea.logfile.各种百
- npm : 无法加载文件 ,因为在此系统上禁止运行脚本和npm的语句无法被idea识别的问题以及解决方案
谁爱我都不爱,我爱J
web学习npm前端node.js
问题一npm:无法加载文件,因为在此系统上禁止运行脚本:当Terminal的shellpath为C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe时可能会出现这种情况。该情况是由于powershell的类别问题,可以通过以下步骤解决:用管理员的身份运行powershell:输入命令,修改计算机的执行策略:set-ExecutionPo
- 【开发工具】开发一个类postman的idea插件
问道飞鱼
开发工具知识postmanintellij-idealua
类postman的idea插件开发开发过程1.环境准备2.创建插件项目3.项目结构4.编写`plugin.xml`5.创建ToolWindow6.设计UI7.处理HTTP请求8.构建和运行插件9.测试插件10.打包和发布总结相关文献开发过程开发一个类似Postman的IntelliJIDEA插件涉及多个步骤,包括插件项目初始化、UI设计、HTTP请求处理、响应展示等。以下是一个简化的开发过程和代码
- Flutter目录及开发结构
倾云鹤
Flutter#Flutter小技巧flutter
一、前言首先先看一下flutter自带的目录文件或目录说明.dart_tool记录了一些dart工具库所在的位置和信息.ideaandroidstudio是基于idea开发的,.idea记录了项目的一些文件的变更记录androidAndroid项目文件夹iosiOS项目文件夹liblib文件夹内存放我们的dart语言代码test用于存放我们的测试代码.gitignoregit忽略配置文件.meta
- 【推荐】爽,在 IDE 中做 LeetCode 题目的插件
ideleetcode
大家好,我是V哥。今天给大家推荐一款神器插件,废话不多说,马上开整。leetcode-editor是一个可以在IDE中做LeetCode题目的插件仓库,以下是对该仓库的详细介绍:来看一下这个神器是啥基本信息名称:LeetcodeEditor支持平台:理论上支持IntelliJIDEA、PhpStorm、WebStorm、PyCharm、RubyMine、AppCode、CLion、GoLand、D
- 有人泼冷水:为什么 AI 基础设施创业如此艰难?
人工智能
最近,AdeptAI宣布被亚马逊收购,这印证了JOHNHWANG(前AWS生成式AI架构师,摩根士丹利交易主管)对未来的判断。于是他写了这篇文章,表达了对AI基础设施这个领域创业的隐忧。认为“AI基础设施创业公司是一个陷阱式(tarpitidea)的想法”,尤指那些“风险投资阶段”的企业。Tarpitidea是指那些表面上看起来合理,但在现实或严谨的思考中无法成立的创业想法。他认为大多数AI基础设
- 本地部署DeepSeek 集成 idea拥有专属高效 AI 助手
LCG元
大模型intellij-idea人工智能java
目录本地部署DeepSeek安装Ollama下载DeepSeek模型运行DeepSeek模型集成DeepSeek到IntelliJIDEA安装CodeGPT插件配置DeepSeek信息使用DeepSeek✍️相关问答DeepSeek在不同参数版本下的性能差异有哪些?如何使用DeepSeek进行代码生成和问题解决?脑图要在本地部署DeepSeek并将其集成到IntelliJIDEA中,需要安装必要的
- 22_设计方案(第三章-技术路线)
珞圻-Health
信息化项目验收文档体系政务大数据人工智能
3.7技术路线3.7.1开发及设计工具(1)开发工具IntellijIDEA2020、visualstudiocode1.51、GIT,mvn、jekins、Jemeter、LoadRunner、Sonar。(2)设计工具数据库设计工具:Powerdesigner。接口设计工具:YAPI。原型设计工具:Axure、墨刀、蓝湖。3.7.2后台框架3.7.2.1基础框架系统采用以微服务的思想,拆分冗余
- intellij idea篇
IT逐梦人
intellij-ideajavaide
intellijidea2023.1.7中使用git拉取远端代码提示错误error:unabletoreadaskpassresponsefrom'C:\Users\ASUS\.IntelliJIdea2019.1\system\tmp\intellij-git-askpass.bat'bash:/dev/tty:Nosuchdeviceoraddress并弹框提示错误“无法定位程序输入点”原因:
- \compile-server“): CreateProcess error=2, 系统找不到指定的文件。
读过两年书
异常与错误javaandroid服务器
以下的问题:Cannotrunprogram"E:\work_file_3\jdk\jdk_17.0.11\install\bin\java.exe"(indirectory"C:\Users\xxxxx\AppData\Local\JetBrains\IntelliJIdea2023.3\compile-server"):CreateProcesserror=2,系统找不到指定的文件。解决方法:
- 2021-04-30 VSC++:EAN13条形码校验。
智者知已应修善业
c++算法经验分享c语言
voidEAN13条形码校验(){//缘由https://bbs.csdn.net/topics/3991705046901234567892691234567890269234567899996901028075763stringt="";inta=0,q=0;std::cin>>t;while(++a<13)q+=(t[a-1]-'0')*((a%2)?1:3);if((((10-q%10)%
- IDEA配置JSTL
阿俊仔(摸鱼版)
intellij-ideajavatomcat
IDEA配置JSTL下载JSTL官网下载地址:https://tomcat.apache.org翻到下面找到:点击,download下载下面内容:(就Impl和Spec)配置JSTL将两个下好的jar包放在lib文件夹下ctrl+shift+alt+s打开ProjectStructure左侧找到Modules->右侧选择Dependences->点击➕号Library->点击java->选中WEB
- 利用IDEA将Java.class文件反编译为Java文件:原理、实践与深度解析
.猫的树
Java反编译IDEA技巧逆向工程
文章目录引言:当.class文件遇到源代码缺失第一章:反编译技术基础认知1.1Java编译执行原理1.2反编译的本质1.3法律与道德边界第二章:IDEA内置反编译工具详解2.1环境准备2.2三步完成基础反编译2.3高级反编译技巧2.3.1调试模式反编译2.3.2Lambda表达式处理2.3.3泛型类型恢复第三章:Fernflower反编译引擎深度配置3.1引擎参数调优3.2多文件批量反编译3.3结
- SpringBoot速成(二)
噗运特
springboot后端java
SpringBoot速成(一)-CSDN博客前提:有SSM,数据库,前端基础,使用企业版IDEA用书:SpringBoot+Vue全栈开发实战(关注+私信发电子版)说明:代码块中是每章知识点总结(几十页浓缩成几句话)2.基础配置(涉及HTTP,HTTPS,I/O,Rest控制器)当大家用的各种配置版本不同,要进行版本统一时,不再用spring-boot-starter-parent,用depend
- Idea 插件 Quickly-Code-Toolkit
little-jenney
java开发springbootintellij-ideajavaide
使用说明(一)全局设置PagingWrapperSetting(分页设置)功能:主要用于在方法写入时,为返回参数提供分页包装类。设置方式:需准确填写分页包装类的全限定名,例如:com...Page。返回参数示例:publicPagetestMethod(){}ViewWrapperSetting(返回前端页面参数包装设置)功能:主要用于方法写入环节,作为返回前端页面参数的包装类。设置方式:设置为返
- [Android Studio]SQLScout插件安装破解
weixin_33755847
移动开发数据库开发工具
以下内容为原创,欢迎转载,转载请注明来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/5972138.html[AndroidStudio]SQLScout插件安装破解0.写在前面想当初很长一段时间内不想用AndroidStudio而喜欢用IntellijIDEA(旗舰版)其中一个原因就是因为IntellijIDEA(旗舰版)自带DatabaseExp
- java杨辉三角
3213213333332132
java基础
package com.algorithm;
/**
* @Description 杨辉三角
* @author FuJianyong
* 2015-1-22上午10:10:59
*/
public class YangHui {
public static void main(String[] args) {
//初始化二维数组长度
int[][] y
- 《大话重构》之大布局的辛酸历史
白糖_
重构
《大话重构》中提到“大布局你伤不起”,如果企图重构一个陈旧的大型系统是有非常大的风险,重构不是想象中那么简单。我目前所在公司正好对产品做了一次“大布局重构”,下面我就分享这个“大布局”项目经验给大家。
背景
公司专注于企业级管理产品软件,企业有大中小之分,在2000年初公司用JSP/Servlet开发了一套针对中
- 电驴链接在线视频播放源码
dubinwei
源码电驴播放器视频ed2k
本项目是个搜索电驴(ed2k)链接的应用,借助于磁力视频播放器(官网:
http://loveandroid.duapp.com/ 开放平台),可以实现在线播放视频,也可以用迅雷或者其他下载工具下载。
项目源码:
http://git.oschina.net/svo/Emule,动态更新。也可从附件中下载。
项目源码依赖于两个库项目,库项目一链接:
http://git.oschina.
- Javascript中函数的toString()方法
周凡杨
JavaScriptjstoStringfunctionobject
简述
The toString() method returns a string representing the source code of the function.
简译之,Javascript的toString()方法返回一个代表函数源代码的字符串。
句法
function.
- struts处理自定义异常
g21121
struts
很多时候我们会用到自定义异常来表示特定的错误情况,自定义异常比较简单,只要分清是运行时异常还是非运行时异常即可,运行时异常不需要捕获,继承自RuntimeException,是由容器自己抛出,例如空指针异常。
非运行时异常继承自Exception,在抛出后需要捕获,例如文件未找到异常。
此处我们用的是非运行时异常,首先定义一个异常LoginException:
/**
* 类描述:登录相
- Linux中find常见用法示例
510888780
linux
Linux中find常见用法示例
·find path -option [ -print ] [ -exec -ok command ] {} \;
find命令的参数;
- SpringMVC的各种参数绑定方式
Harry642
springMVC绑定表单
1. 基本数据类型(以int为例,其他类似):
Controller代码:
@RequestMapping("saysth.do")
public void test(int count) {
}
表单代码:
<form action="saysth.do" method="post&q
- Java 获取Oracle ROWID
aijuans
javaoracle
A ROWID is an identification tag unique for each row of an Oracle Database table. The ROWID can be thought of as a virtual column, containing the ID for each row.
The oracle.sql.ROWID class i
- java获取方法的参数名
antlove
javajdkparametermethodreflect
reflect.ClassInformationUtil.java
package reflect;
import javassist.ClassPool;
import javassist.CtClass;
import javassist.CtMethod;
import javassist.Modifier;
import javassist.bytecode.CodeAtt
- JAVA正则表达式匹配 查找 替换 提取操作
百合不是茶
java正则表达式替换提取查找
正则表达式的查找;主要是用到String类中的split();
String str;
str.split();方法中传入按照什么规则截取,返回一个String数组
常见的截取规则:
str.split("\\.")按照.来截取
str.
- Java中equals()与hashCode()方法详解
bijian1013
javasetequals()hashCode()
一.equals()方法详解
equals()方法在object类中定义如下:
public boolean equals(Object obj) {
return (this == obj);
}
很明显是对两个对象的地址值进行的比较(即比较引用是否相同)。但是我们知道,String 、Math、I
- 精通Oracle10编程SQL(4)使用SQL语句
bijian1013
oracle数据库plsql
--工资级别表
create table SALGRADE
(
GRADE NUMBER(10),
LOSAL NUMBER(10,2),
HISAL NUMBER(10,2)
)
insert into SALGRADE values(1,0,100);
insert into SALGRADE values(2,100,200);
inser
- 【Nginx二】Nginx作为静态文件HTTP服务器
bit1129
HTTP服务器
Nginx作为静态文件HTTP服务器
在本地系统中创建/data/www目录,存放html文件(包括index.html)
创建/data/images目录,存放imags图片
在主配置文件中添加http指令
http {
server {
listen 80;
server_name
- kafka获得最新partition offset
blackproof
kafkapartitionoffset最新
kafka获得partition下标,需要用到kafka的simpleconsumer
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.
- centos 7安装docker两种方式
ronin47
第一种是采用yum 方式
yum install -y docker
 
- java-60-在O(1)时间删除链表结点
bylijinnan
java
public class DeleteNode_O1_Time {
/**
* Q 60 在O(1)时间删除链表结点
* 给定链表的头指针和一个结点指针(!!),在O(1)时间删除该结点
*
* Assume the list is:
* head->...->nodeToDelete->mNode->nNode->..
- nginx利用proxy_cache来缓存文件
cfyme
cache
user zhangy users;
worker_processes 10;
error_log /var/vlogs/nginx_error.log crit;
pid /var/vlogs/nginx.pid;
#Specifies the value for ma
- [JWFD开源工作流]JWFD嵌入式语法分析器负号的使用问题
comsci
嵌入式
假如我们需要用JWFD的语法分析模块定义一个带负号的方程式,直接在方程式之前添加负号是不正确的,而必须这样做:
string str01 = "a=3.14;b=2.71;c=0;c-((a*a)+(b*b))"
定义一个0整数c,然后用这个整数c去
- 如何集成支付宝官方文档
dai_lm
android
官方文档下载地址
https://b.alipay.com/order/productDetail.htm?productId=2012120700377310&tabId=4#ps-tabinfo-hash
集成的必要条件
1. 需要有自己的Server接收支付宝的消息
2. 需要先制作app,然后提交支付宝审核,通过后才能集成
调试的时候估计会真的扣款,请注意
- 应该在什么时候使用Hadoop
datamachine
hadoop
原帖地址:http://blog.chinaunix.net/uid-301743-id-3925358.html
存档,某些观点与我不谋而合,过度技术化不可取,且hadoop并非万能。
--------------------------------------------万能的分割线--------------------------------
有人问我,“你在大数据和Hado
- 在GridView中对于有外键的字段使用关联模型进行搜索和排序
dcj3sjt126com
yii
在GridView中使用关联模型进行搜索和排序
首先我们有两个模型它们直接有关联:
class Author extends CActiveRecord {
...
}
class Post extends CActiveRecord {
...
function relations() {
return array(
'
- 使用NSString 的格式化大全
dcj3sjt126com
Objective-C
格式定义The format specifiers supported by the NSString formatting methods and CFString formatting functions follow the IEEE printf specification; the specifiers are summarized in Table 1. Note that you c
- 使用activeX插件对象object滚动有重影
蕃薯耀
activeX插件滚动有重影
使用activeX插件对象object滚动有重影 <object style="width:0;" id="abc" classid="CLSID:D3E3970F-2927-9680-BBB4-5D0889909DF6" codebase="activex/OAX339.CAB#
- SpringMVC4零配置
hanqunfeng
springmvc4
基于Servlet3.0规范和SpringMVC4注解式配置方式,实现零xml配置,弄了个小demo,供交流讨论。
项目说明如下:
1.db.sql是项目中用到的表,数据库使用的是oracle11g
2.该项目使用mvn进行管理,私服为自搭建nexus,项目只用到一个第三方 jar,就是oracle的驱动;
3.默认项目为零配置启动,如果需要更改启动方式,请
- 《开源框架那点事儿16》:缓存相关代码的演变
j2eetop
开源框架
问题引入
上次我参与某个大型项目的优化工作,由于系统要求有比较高的TPS,因此就免不了要使用缓冲。
该项目中用的缓冲比较多,有MemCache,有Redis,有的还需要提供二级缓冲,也就是说应用服务器这层也可以设置一些缓冲。
当然去看相关实现代代码的时候,大致是下面的样子。
[java]
view plain
copy
print
?
public vo
- AngularJS浅析
kvhur
JavaScript
概念
AngularJS is a structural framework for dynamic web apps.
了解更多详情请见原文链接:http://www.gbtags.com/gb/share/5726.htm
Directive
扩展html,给html添加声明语句,以便实现自己的需求。对于页面中html元素以ng为前缀的属性名称,ng是angular的命名空间
- 架构师之jdk的bug排查(一)---------------split的点号陷阱
nannan408
split
1.前言.
jdk1.6的lang包的split方法是有bug的,它不能有效识别A.b.c这种类型,导致截取长度始终是0.而对于其他字符,则无此问题.不知道官方有没有修复这个bug.
2.代码
String[] paths = "object.object2.prop11".split("'");
System.ou
- 如何对10亿数据量级的mongoDB作高效的全表扫描
quentinXXZ
mongodb
本文链接:
http://quentinXXZ.iteye.com/blog/2149440
一、正常情况下,不应该有这种需求
首先,大家应该有个概念,标题中的这个问题,在大多情况下是一个伪命题,不应该被提出来。要知道,对于一般较大数据量的数据库,全表查询,这种操作一般情况下是不应该出现的,在做正常查询的时候,如果是范围查询,你至少应该要加上limit。
说一下,
- C语言算法之水仙花数
qiufeihu
c算法
/**
* 水仙花数
*/
#include <stdio.h>
#define N 10
int main()
{
int x,y,z;
for(x=1;x<=N;x++)
for(y=0;y<=N;y++)
for(z=0;z<=N;z++)
if(x*100+y*10+z == x*x*x
- JSP指令
wyzuomumu
jsp
jsp指令的一般语法格式: <%@ 指令名 属性 =”值 ” %>
常用的三种指令: page,include,taglib
page指令语法形式: <%@ page 属性 1=”值 1” 属性 2=”值 2”%>
include指令语法形式: <%@include file=”relative url”%> (jsp可以通过 include