- Mybatis源码解析
我是嘻哈大哥
1.编写一个小demo导入mybatis源码,demo目录结构如下:源码的pom文件中需要加入以下依赖:mysqlmysql-connector-java5.1.38UserMapper.javapublicinterfaceUserMapper{UserselectById(Stringid);}User.javapublicclassUser{privateStringid;privateSt
- Mybatis源码解析:kafka消费者消费不到消息
前端陈萨龙
程序员java经验分享面试
Kafka源码篇——Kafka快速入门1.1Kafka简介1.2以Kafka为中心的解决方案1.3Kafka核心概念1.4搭建Kafka源码环境Kafka源码篇——生产者2.1KafkaProducer使用示例2.2KafkaProducer分析2.3RecordAccumulator分析2.4Sender分析Kafka源码篇——消费者3.1KafkaConsumer使用示例3.2传递保证语义(D
- myBatis源码解析-反射篇(4)
联旺
1property包-主要对类的属性进行操作的工具包1.1PropertyCopier包利用反射类Filed进行属性复制复制代码//该类作用将sourceBean与destinationBean相同属性名的属性进行值复制publicclassPropertyCopier{//属性复制publicstaticvoidcopyBeanProperties(Classtype,ObjectsourceB
- Mybatis源码解析:从基础到源码统统帮你搞定,使用指南
m0_56037919
程序员android
个人背景如标题所示,我的个人背景非常简单,Java开发经验1年半,学历普通,2本本科毕业,毕业后出来就一直在Crud,在公司每天重复的工作对我的技术提升并没有什么帮助,但小镇出来的我也深知自我努力的重要性,想要改变“命运”,没有背景没有资本的人,只能通过勤奋获得。幸运女神往往会眷顾努力的人,所以当好运降临到我头上,我并不诧异,目前拿到了美团30K的offer,下文也不说废话,主要分享我这次“美团面
- Mybatis源码解析7:拦截器Interceptor
hao9e
mybatisjavasql
Mybatis源码解析7:拦截器Interceptor1.项目结构2.源码分析2.1解析plugins标签2.2创建对象Configuration#newStatementHandler2.3注册插件InterceptorChain#pluginAll2.4拦截器包装Plugin#wrap2.4.1解析Intercepts和SignaturePlugin#getSignatureMap2.4.2拦
- Mybatis源码解析6:Mapper执行流程2-三个Handler
hao9e
mybatissqljava
Mybatis源码解析6:Mapper执行流程2-三个Handler1.项目结构2.源码分析2.1StatementHandler分析BaseStatementHandler#prepare2.2ParameterHandler分析DefaultParameterHandler#setParameters2.3ResultSetHandler分析1.项目结构2.源码分析之前已经对SimpleExe
- Mybatis代理对象是如何生成的
softshow1026
mybatisjava开发语言
Mybatis源码解析-mapper代理对象的生成,你有想过吗,我们讲到了mybatis操作数据库的流程:先创建SqlSessionFactory,然后创建SqlSession,然后再创建获取mapper代理对象,最后利用mapper代理对象完成数据库的操作;Mapper代理对象的创建,利用的是JDK的动态代理,InvocationHandler是MapperProxy,后续Mapper代理对象方
- Spring-Mybatis源码解析--手写代码实现Spring整合Mybatis
拽着尾巴的鱼儿
Spring框架篇源码解析篇db数据库springmybatisjava
文章目录前言一、引入:二、准备工作:2.1引入依赖2.2数据源的文件:2.1数据源:2.3业务文件:三、整合的实现:3.1xxxMapper接口的扫描:3.2xxxMapper接口代理对象的生成:3.2SqlSessionFactory的定义:四、Spring整合Mybatis对比:4.1扫描路径定义:4.2bean的生成:五、扩展:5.1`SqlSessionFactory`和`SqlSessi
- Spring-Mybatis源码解析--Mybatis配置文件解析
拽着尾巴的鱼儿
源码解析篇Spring框架篇db数据库springmybatisjava
文章目录前言一、准备工作1.1依赖准备:1.2配置文件准备:1.3代码准备:二、配置文件加载:2.1SqlSessionFactoryBuilder().build(reader)2.2parser.parse():三、执行sql:总结前言Spring整合Mybatis后,如何对其配置文件进行加载和解析,如何进行数据的CRUD。一、准备工作1.1依赖准备:com.baomidoumybatis-p
- Mybatis源码解析三——反射模块(Reflector)
天道酬巧
Mybatis源码探究
反射模块(Reflector)Mybatis源码解析一——搭建阅读环境Mybatis源码解析二——解析器模块(parsing)Mybatis源码解析三——反射模块(Reflector)文章目录反射模块(Reflector)前言一、reflector包结构二、reflector测试类结构三、ReflectorFactory3.1DefaultReflectorFactory四、Reflector4.
- Mybatis源码解析:c和java语法
始飞龙
程序员面试后端java
头条二面二轮技术面,17:00~20:25,晚饭时间hr小姐姐还特贴心的带我体验了一把传说中的头条餐厅,不超过半小时聊项目,画项目架构图,画一个用户从发起请求到接收到响应中间经过哪些服务每个服务做什么事情的流程图讲项目中的难点、挑战,你是如何解决的redis中有几种类型&各自底层怎么实现的&项目中哪个地方用了什么类型,怎么使用的redis如何实现分布式锁,zk如何实现分布式锁,两者的区别。如果se
- 3.MyBatis源码解析-CRUD执行流程--阿呆中二
阿呆中二
MyBatis
CRUD执行流程MyBatisCRUD执行流程与我联系MyBatis本文是对mybatis3.x源码深度解析与最佳实践学习的总结,包括XML文件解析流程、SqlSession构建流程、CRUD执行流程、MyBatis扩展点,以及针对面试题进行源码分析。mybatis3.x源码深度解析与最佳实践下载:https://download.csdn.net/download/u013425841/1281
- 5.MyBatis源码解析-MyBatis面试题--阿呆中二
阿呆中二
MyBatisjavamybatisspring
MyBatis面试题MyBatisMyBatis面试题MyBatis一级缓存和二级缓存?MyBatis有几种执行器和区别?Dao接口的工作原理是什么?Dao接口里的方法,参数不同时,方法能重载吗?Mybatis是如何进行分页的?分页插件的原理是什么?Mybatis是否支持延迟加载?如果支持,它的实现原理是什么?与我联系MyBatis本文是对mybatis3.x源码深度解析与最佳实践学习的总结,包括
- myBatis延迟加载空指针异常 Error creating lazy proxy. Cause: java.lang.NullPointerException
辣条委员会会长
javaweb
jar包版本问题。。之前用的mybatis-3.4.6然后换成mybatis-3.5.1后异常解决
- MyBatis源码解析 - 解析器模块
程序猿扬克尔
MyBatis源码解析-解析器模块1.前言在MyBatis中涉及多个xml文件,解析这些xml文件自然离不开解析器。本文就来分析一下解析器模块。2.准备工作xml常见的解析方式分为以下三种:DOM(DocumentObjectModel)解析方式SAX(SimpleAPIforXML)解析方式StAX(StreamingAPIforXML)解析方式-JDK6.0版本开始,JDK开始支持详细的解析x
- mybatis源码解析九之整个加载流程解析
Nuan_Feng
mybatis源码解析
文章目录加载Reader构造SqlSessionFactory获取DocumentConfiguration初始化解析Xnode解析Attributes解析占位符解析标签内容解析Configuration解析properties解析settings解析typeAliases解析plugins解析objectFactory解析environments解析databaseIdProvider解析typ
- mybatis 执行流程,mybatis源码解析,推荐收藏
zhangkaixuan456
sql优化mybatisjavaspring
目录概要获取Mapper接口(getMapper)Mapper接口和映射文件是何时关联的sql执行流程分析参数映射结果集映射工作流程图总结MyBatis可能很多人都一直在用,但是MyBatis的SQL执行流程可能并不是所有人都清楚了,那么既然进来了,通读本文你将收获如下:1、Mapper接口和映射文件是如何进行绑定的2、MyBatis中SQL语句的执行流程3、自定义MyBatis中的参数设置处理器
- MyBatis的基础用法
火鼬
一、引入MyBatis所需的jar包jar包的下载路径为:https://github.com/mybatis/mybatis-3/releases/tag/mybatis-3.4.6若是Maven项目,则在pom.xml中加入以下内容:org.mybatismybatis3.4.6提醒:不要忘记添加数据库的依赖包二、添加MyBatis的核心配置文件Configuration.xml,内容如下(建
- Mybatis源码解析(八):Mapper代理原理
冬天vs不冷
mybatismybatisjava
Mybatis源码系列文章手写源码(了解源码整体流程及重要组件)Mybatis源码解析(一):环境搭建Mybatis源码解析(二):全局配置文件的解析Mybatis源码解析(三):映射配置文件的解析Mybatis源码解析(四):sql语句及#{}、${}的解析Mybatis源码解析(五):SqlSession会话的创建Mybatis源码解析(六):缓存执行器操作流程Mybatis源码解析(七):查
- Mybatis源码解析:JavaBean与xml互转的方法详解
web苍南县
程序员后端java面试
}}###2、简单类型 (1)单实体类转换packagecom.guor.demo.beanToXml;importjava.util.Date;importjavax.xml.bind.annotation.XmlAccessType;importjavax.xml.bind.annotation.XmlAccessorType;importjavax.xml.bind.annotation.X
- Mybatis源码解析(三)------SqlSession
小小的人儿居然已存在
#mybaitsmybatistomcatjava
Mybatis源码解析(三)------SqlSession序言SqlSession接口SqlSession的实现类DefaultSqlSessionSelect获取Statement查询序言Mybatis里面的核心就是SqlSession这个接口,前面我们已经研究了Mybatis的配置过程和Mapper的注册过程,在本篇文章中我们就来研究SqlSession。/***TheprimaryJava
- MyBatis源码解析
Javaesandyou
缓存数据库javaMyBatis源码程序人生
MyBatis执行流程:1.ExecutorExecutor是MyBatis的核心接口之一,其中定义了数据库操作的基本方法。在实际应用中经常涉及的SqISession接口的功能,都是基于Executor接口实现的。BaseExecutor是一个实现了Executor接口的抽象类,它实现了Executor接口的大部分方法。BaseExecutor中主要提供了缓存管理和事务管理的基本功能,继承Base
- MyBatis源码解析&手写持久层框架
Allen-xs
源码分析mybatis
1.手写持久层框架1.1JDBC操作数据库_问题分析JDBCAPI允许应用程序访问任何形式的表格数据,特别是存储在关系数据库中的数据代码示例:publicstaticvoidmain(String[]args){Connectionconnection=null;PreparedStatementpreparedStatement=null;ResultSetresultSet=null;try{
- MyBatis源码解析 - 反射模块
janker0718
MyBatis源码解析-反射模块1.前言该模块位于org.apache.ibatis.reflection包中,MyBatis在进行参数处理、结果映射等操作时,会涉及大量的反射操作。Java中的反射虽然功能强大,但是代码编写起来比较复杂且容易出错,为了简化反射操作的相关代码,MyBatis提供了专门的反射模块,它对常见的反射操作做了进一步封装,提供了更加简洁方便的反射API。本节就来为读者介绍该模
- MyBatis源码解析(二)——执行流程
爱看雲的雲
MyBatis源码解析mybatisjavamysql
目录前言1、MyBatis执行SQL入口1.1、Sql会话工厂——SqlSessionFactory1.2、Sql会话——SqlSession1.3、执行器——Executor1.3.1、缓存执行器——CachingExecutor1.3.2、基础执行器——BatchExecutor2、MyBatis获取结果集2.1、StatementHandler2.1.1、RoutingStatementHa
- MyBatis源码解析 - 类型转换模块
janker0718
MyBatis源码解析-类型转换模块前言JDBC数据类型与Java语言中的数据类型并不是完全对应的,所以在PreparedStatement为SQL语句绑定参数时,需要从Java类型转换成JDBC类型,而从结果集中获取数据时,则需要从JDBC类型转换成Java类型。MyBatis使用类型处理器完成上述两种转换,如图所示。在MyBatis中使用JdbeType这个枚举类型代表JIDBC中的数据类型,
- 最近翻了翻mybatis初始化部分的源码,和大家分享一下阅读源码的过程和乐趣
指针指指针
框架源码mybatisjavamysql
mybatis源码解析1.初始化过程静态代码块读取主配文件static{Stringconfig="mybatis-config.xml";try{//第一步加载主配文件InputStreamresourceAsStream=Resources.getResourceAsStream(config);//第二步解析主配文件构建sqlSession工厂sqlSessionFactory=newSql
- 【Mybatis源码解析】深入了解<select>等标签的实现流程(一)
涝山道士
javaMybatisjavamybatis
前言以前只知道select标签的个别属性用法,并不了解其实现流程与原理,正巧,最近在学习Cache一二级缓存,看到与select标签相关的属性,就借此机会把这篇文章写了出来。此外,之所以以select为视角,是因为其他几个标签的源码流程与select大致相当,而且select在实际开发中使用更为频繁。本文思路:1.先了解select标签各个属性作用2.从mapper.xml中加载select标签的
- Mybatis源码解析:sql参数处理,原来可以这么简单-1,java项目技术栈
m0_64383449
程序员面试java后端
//XNode.getBodyDataprivateStringgetBodyData(Nodechild){//判断节点的类型if(child.getNodeType()==Node.CDATA_SECTION_NODE||child.getNodeType()==Node.TEXT_NODE){Stringdata=((CharacterData)child).getData();data=P
- Mybatis源码解析(九):插件机制
冬天vs不冷
mybatismybatisjava数据库
Mybatis源码系列文章手写源码(了解源码整体流程及重要组件)Mybatis源码解析(一):环境搭建Mybatis源码解析(二):全局配置文件的解析Mybatis源码解析(三):映射配置文件的解析Mybatis源码解析(四):sql语句及#{}、${}的解析Mybatis源码解析(五):SqlSession会话的创建Mybatis源码解析(六):缓存执行器操作流程Mybatis源码解析(七):查
- eclipse maven
IXHONG
eclipse
eclipse中使用maven插件的时候,运行run as maven build的时候报错
-Dmaven.multiModuleProjectDirectory system propery is not set. Check $M2_HOME environment variable and mvn script match.
可以设一个环境变量M2_HOME指
- timer cancel方法的一个小实例
alleni123
多线程timer
package com.lj.timer;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;
public class MyTimer extends TimerTask
{
private int a;
private Timer timer;
pub
- MySQL数据库在Linux下的安装
ducklsl
mysql
1.建好一个专门放置MySQL的目录
/mysql/db数据库目录
/mysql/data数据库数据文件目录
2.配置用户,添加专门的MySQL管理用户
>groupadd mysql ----添加用户组
>useradd -g mysql mysql ----在mysql用户组中添加一个mysql用户
3.配置,生成并安装MySQL
>cmake -D
- spring------>>cvc-elt.1: Cannot find the declaration of element
Array_06
springbean
将--------
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3
- maven发布第三方jar的一些问题
cugfy
maven
maven中发布 第三方jar到nexus仓库使用的是 deploy:deploy-file命令
有许多参数,具体可查看
http://maven.apache.org/plugins/maven-deploy-plugin/deploy-file-mojo.html
以下是一个例子:
mvn deploy:deploy-file -DgroupId=xpp3
- MYSQL下载及安装
357029540
mysql
好久没有去安装过MYSQL,今天自己在安装完MYSQL过后用navicat for mysql去厕测试链接的时候出现了10061的问题,因为的的MYSQL是最新版本为5.6.24,所以下载的文件夹里没有my.ini文件,所以在网上找了很多方法还是没有找到怎么解决问题,最后看到了一篇百度经验里有这个的介绍,按照其步骤也完成了安装,在这里给大家分享下这个链接的地址
- ios TableView cell的布局
张亚雄
tableview
cell.imageView.image = [UIImage imageNamed:[imageArray objectAtIndex:[indexPath row]]];
CGSize itemSize = CGSizeMake(60, 50);
&nbs
- Java编码转义
adminjun
java编码转义
import java.io.UnsupportedEncodingException;
/**
* 转换字符串的编码
*/
public class ChangeCharset {
/** 7位ASCII字符,也叫作ISO646-US、Unicode字符集的基本拉丁块 */
public static final Strin
- Tomcat 配置和spring
aijuans
spring
简介
Tomcat启动时,先找系统变量CATALINA_BASE,如果没有,则找CATALINA_HOME。然后找这个变量所指的目录下的conf文件夹,从中读取配置文件。最重要的配置文件:server.xml 。要配置tomcat,基本上了解server.xml,context.xml和web.xml。
Server.xml -- tomcat主
- Java打印当前目录下的所有子目录和文件
ayaoxinchao
递归File
其实这个没啥技术含量,大湿们不要操笑哦,只是做一个简单的记录,简单用了一下递归算法。
import java.io.File;
/**
* @author Perlin
* @date 2014-6-30
*/
public class PrintDirectory {
public static void printDirectory(File f
- linux安装mysql出现libs报冲突解决
BigBird2012
linux
linux安装mysql出现libs报冲突解决
安装mysql出现
file /usr/share/mysql/ukrainian/errmsg.sys from install of MySQL-server-5.5.33-1.linux2.6.i386 conflicts with file from package mysql-libs-5.1.61-4.el6.i686
- jedis连接池使用实例
bijian1013
redisjedis连接池jedis
实例代码:
package com.bijian.study;
import java.util.ArrayList;
import java.util.List;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoo
- 关于朋友
bingyingao
朋友兴趣爱好维持
成为朋友的必要条件:
志相同,道不合,可以成为朋友。譬如马云、周星驰一个是商人,一个是影星,可谓道不同,但都很有梦想,都要在各自领域里做到最好,当他们遇到一起,互相欣赏,可以畅谈两个小时。
志不同,道相合,也可以成为朋友。譬如有时候看到两个一个成绩很好每次考试争做第一,一个成绩很差的同学是好朋友。他们志向不相同,但他
- 【Spark七十九】Spark RDD API一
bit1129
spark
aggregate
package spark.examples.rddapi
import org.apache.spark.{SparkConf, SparkContext}
//测试RDD的aggregate方法
object AggregateTest {
def main(args: Array[String]) {
val conf = new Spar
- ktap 0.1 released
bookjovi
kerneltracing
Dear,
I'm pleased to announce that ktap release v0.1, this is the first official
release of ktap project, it is expected that this release is not fully
functional or very stable and we welcome bu
- 能保存Properties文件注释的Properties工具类
BrokenDreams
properties
今天遇到一个小需求:由于java.util.Properties读取属性文件时会忽略注释,当写回去的时候,注释都没了。恰好一个项目中的配置文件会在部署后被某个Java程序修改一下,但修改了之后注释全没了,可能会给以后的参数调整带来困难。所以要解决这个问题。
&nb
- 读《研磨设计模式》-代码笔记-外观模式-Facade
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
/*
* 百度百科的定义:
* Facade(外观)模式为子系统中的各类(或结构与方法)提供一个简明一致的界面,
* 隐藏子系统的复杂性,使子系统更加容易使用。他是为子系统中的一组接口所提供的一个一致的界面
*
* 可简单地
- After Effects教程收集
cherishLC
After Effects
1、中文入门
http://study.163.com/course/courseMain.htm?courseId=730009
2、videocopilot英文入门教程(中文字幕)
http://www.youku.com/playlist_show/id_17893193.html
英文原址:
http://www.videocopilot.net/basic/
素
- Linux Apache 安装过程
crabdave
apache
Linux Apache 安装过程
下载新版本:
apr-1.4.2.tar.gz(下载网站:http://apr.apache.org/download.cgi)
apr-util-1.3.9.tar.gz(下载网站:http://apr.apache.org/download.cgi)
httpd-2.2.15.tar.gz(下载网站:http://httpd.apac
- Shell学习 之 变量赋值和引用
daizj
shell变量引用赋值
本文转自:http://www.cnblogs.com/papam/articles/1548679.html
Shell编程中,使用变量无需事先声明,同时变量名的命名须遵循如下规则:
首个字符必须为字母(a-z,A-Z)
中间不能有空格,可以使用下划线(_)
不能使用标点符号
不能使用bash里的关键字(可用help命令查看保留关键字)
需要给变量赋值时,可以这么写:
- Java SE 第一讲(Java SE入门、JDK的下载与安装、第一个Java程序、Java程序的编译与执行)
dcj3sjt126com
javajdk
Java SE 第一讲:
Java SE:Java Standard Edition
Java ME: Java Mobile Edition
Java EE:Java Enterprise Edition
Java是由Sun公司推出的(今年初被Oracle公司收购)。
收购价格:74亿美金
J2SE、J2ME、J2EE
JDK:Java Development
- YII给用户登录加上验证码
dcj3sjt126com
yii
1、在SiteController中添加如下代码:
/**
* Declares class-based actions.
*/
public function actions() {
return array(
// captcha action renders the CAPTCHA image displ
- Lucene使用说明
dyy_gusi
Lucenesearch分词器
Lucene使用说明
1、lucene简介
1.1、什么是lucene
Lucene是一个全文搜索框架,而不是应用产品。因此它并不像baidu或者googleDesktop那种拿来就能用,它只是提供了一种工具让你能实现这些产品和功能。
1.2、lucene能做什么
要回答这个问题,先要了解lucene的本质。实际
- 学习编程并不难,做到以下几点即可!
gcq511120594
数据结构编程算法
不论你是想自己设计游戏,还是开发iPhone或安卓手机上的应用,还是仅仅为了娱乐,学习编程语言都是一条必经之路。编程语言种类繁多,用途各 异,然而一旦掌握其中之一,其他的也就迎刃而解。作为初学者,你可能要先从Java或HTML开始学,一旦掌握了一门编程语言,你就发挥无穷的想象,开发 各种神奇的软件啦。
1、确定目标
学习编程语言既充满乐趣,又充满挑战。有些花费多年时间学习一门编程语言的大学生到
- Java面试十问之三:Java与C++内存回收机制的差别
HNUlanwei
javaC++finalize()堆栈内存回收
大家知道, Java 除了那 8 种基本类型以外,其他都是对象类型(又称为引用类型)的数据。 JVM 会把程序创建的对象存放在堆空间中,那什么又是堆空间呢?其实,堆( Heap)是一个运行时的数据存储区,从它可以分配大小各异的空间。一般,运行时的数据存储区有堆( Heap)和堆栈( Stack),所以要先看它们里面可以分配哪些类型的对象实体,然后才知道如何均衡使用这两种存储区。一般来说,栈中存放的
- 第二章 Nginx+Lua开发入门
jinnianshilongnian
nginxlua
Nginx入门
本文目的是学习Nginx+Lua开发,对于Nginx基本知识可以参考如下文章:
nginx启动、关闭、重启
http://www.cnblogs.com/derekchen/archive/2011/02/17/1957209.html
agentzh 的 Nginx 教程
http://openresty.org/download/agentzh-nginx-tutor
- MongoDB windows安装 基本命令
liyonghui160com
windows安装
安装目录:
D:\MongoDB\
新建目录
D:\MongoDB\data\db
4.启动进城:
cd D:\MongoDB\bin
mongod -dbpath D:\MongoDB\data\db
&n
- Linux下通过源码编译安装程序
pda158
linux
一、程序的组成部分 Linux下程序大都是由以下几部分组成: 二进制文件:也就是可以运行的程序文件 库文件:就是通常我们见到的lib目录下的文件 配置文件:这个不必多说,都知道 帮助文档:通常是我们在linux下用man命令查看的命令的文档
二、linux下程序的存放目录 linux程序的存放目录大致有三个地方: /etc, /b
- WEB开发编程的职业生涯4个阶段
shw3588
编程Web工作生活
觉得自己什么都会
2007年从学校毕业,凭借自己原创的ASP毕业设计,以为自己很厉害似的,信心满满去东莞找工作,找面试成功率确实很高,只是工资不高,但依旧无法磨灭那过分的自信,那时候什么考勤系统、什么OA系统、什么ERP,什么都觉得有信心,这样的生涯大概持续了约一年。
根本不是自己想的那样
2008年开始接触很多工作相关的东西,发现太多东西自己根本不会,都需要去学,不管是asp还是js,
- 遭遇jsonp同域下变作post请求的坑
vb2005xu
jsonp同域post
今天迁移一个站点时遇到一个坑爹问题,同一个jsonp接口在跨域时都能调用成功,但是在同域下调用虽然成功,但是数据却有问题. 此处贴出我的后端代码片段
$mi_id = htmlspecialchars(trim($_GET['mi_id ']));
$mi_cv = htmlspecialchars(trim($_GET['mi_cv ']));
贴出我前端代码片段:
$.aj