为您找到搜索结果:7355个
thinkphp实现sql like模糊查询实例
目前使用thinkphp框架进行项目开发的人越来越多了,由于其封装性较好,导致了很多纯PHP开发的部分不易上手,本文实例即以like模糊查询为例对此加以说明。这里主要通过举例来说明用法:ThinkPHP可以支持直接使用字符串作为查询条件,但是大多数情况推荐使用索引数组或者对象来作为查询条件,因为会更加安全。一、使用字符串作为查询条件这是最传统的方式,但是安全性不高,例如:代码如下:1$User =M("User"); //实例化User对象2 $User->where('type=1ANDstatus=1')->select();最后生成的SQL语句是代码如下:1SELECT * FROM think_user WHERE type=1 AND status=1如果进行多字段查询,那么字段之间的默认逻辑关系是逻辑与AND,但是用下面的规则可以更改默认的逻辑判断,通过使用_logic定义查询逻辑:代码如下:1$User =M(&qu...
php+redis实现超时取消订单功能
业务场景:秒杀案例秒杀业务逻辑:多个用户同时抢单,通过mysql行锁抢到的用户进入待支付页面(倒计时)。当用户没有支付订单超时时则取消该订单并归还库存。应用thinkphp+redis+workerman(可以自定义命令常驻)1、thinkphp安装workerman。这里就过了,thinkphp手册去找。2、安装好redis及扩展。用宝塔的直接搞就完了,过。3、生产者:用户创建订单向redis插入一条订单数据。$redis=newRedis();$redis->connect('127.0.0.1',6379);//$redis->auth('密码');//redis有密码就加/***seckill_time为列队名称*time()+$seckill['pay_time']为到期时间戳*$newSeckillOrder->id为订单id,可以json字符串存储*/$redis->zAdd('seckill_time',time()+$seckill['pay_time'],$newSeckillOrder->id);4、消费者:这里我们需要一个常驻内存一...
.NET 中利用 NPOI 实现图片插入
pictureData.Position = 0;var p = XWPFDocument.Paragraphs[paragraphIndex];var run = p.CreateRun();run.AddPicture(pictureData, (int)pictureType, "", Units.PixelToEMU(width), Units.PixelToEMU(height));pictureData:Stream类型,为了保险设置Position为0,否则如果不是从0开始的,则Word中显示:无法显示该图片。pictureType:NPOI.XWPF.UserModel.PictureType类型。第3个参数文件名,可以为空。width、height:传入的是像素,但是AddPicture不用像素,所以需要转换一下Units命名空间是 NPOI.Util。1EMU(英制公制单位)=1/36000mm(word.docx变为...
C# WinForm 利用 SplitContainer 实现两个控件随窗口大小变化而均匀变化
C#WinForm的控件,有两个属性:Anchor:默认是Top、Left,如果我们把四个方向都勾上,则其父控件缩放大小时,其自身也随着缩放大小。Dock:如果我们选择为Fill,其效果和Anchor四个方向都勾上一样。两个属性只能使用一个。但是假如我有两个TextBox时:如果是纵向排列,则高度上,只能有一个TextBox自动。如果是横向排列,则宽度上,只能有一个 TextBox 自动。我们希望两个都自动成比例缩放,比如不管窗口多大,大家各占50%。可使用 SplitContainer它有两个面板,对SplitContainer使用Dock=Fill,然后调整两个面板的大小,然后往面板中拖入各自的TextBox,也是Dock=Fill。Orientation为Vertial表示拆分器竖着的,内容左右排列。Orientation为Horizontal表示拆分器横着的,内容上下排列。在窗口大小变化时,拆分器是按比例拆分的,实现了自动按比例大小。...
C# ToString-巧妙实现正号输出
C#ToString-如何对Nullable的数字用ToString格式化C#ToString-自动识别百分比C#ToString-参数零长度字符串与null区别C#ToString-Decimal如何使用ToString实现逗号分隔符、小数四舍五入C#ToString-数字ToString四舍五入是哪种四舍五入?C#ToString-中#并不“待见”0C#ToString-小心“;”部分分隔符C#ToString-巧妙实现正号输出m.ToString("+0.00;-0.00;0.00")关于分号,请参见本连载的前一节。C#ToString-如何对Nullable的数字用ToString格式化C#ToString-自动识别百分比C#ToString-参数零长度字符串与null区别C#ToString-Decimal如何使用ToString实现逗号分隔符、小数四舍五入C#ToString-数字ToString四舍五入是哪种四舍五入?C#ToString-中#并不“待见”0C#ToString-小心“;”部分分隔符C#ToString-巧妙实现正号输出...
VC# 中自定义控件实现最小大、最大化、关闭、标题栏拖拽
桌面版程序中,默认的窗体样式不好看,想要自定义?先把窗体FrameBorderStyle设置为None,这样边框、标题栏都不存在了。// 最小化private void _minimize_Click(object sender, EventArgs e){WindowState = FormWindowState.Minimized;}// 最大化和还原private void _maximum_Click(object sender, EventArgs e){if (WindowState != FormWindowState.Maximized){WindowState = FormWindowState.Maximized;}else{WindowState = FormWindowState.Normal;}}// 关闭private void&n...
盘古 + Lucene 实现 .NET 分词 + 全文检索-Stopword、字典配置
盘古+Lucene实现.NET分词+全文检索-盘古分词盘古+Lucene实现.NET分词+全文检索-全文检索盘古+Lucene实现.NET分词+全文检索-更新、删除全文文档盘古+Lucene实现.NET分词+全文检索-Stopword、字典配置Stopword默认情况下:“的”、“了”、“有”、“无”……这些高频词都会被当作词来检索、高亮,如何避免呢?在Dictionaries中打开Stopword.txt,将这些词追加进行,一行一个。这里可以追加标点符号、字、词,多个字的词也是可以的,比如:好了。追加之后,保存,不需要做其他操作,会即时生效(只是首次加载会慢一点)。字典配置使用DictManage.exe打开Dictionaries中的Dict.dct来维护分词。下载盘古分词工具。要说明两点:一是修改了分词,要保存。二是要重新用IndexWriter写入索引。盘古+Lucene实现.NET分词+全文检索-盘古分词盘古+Lucene实现.NET分词+全文检索-全文检索盘古+Lucene实现.NET分词+全文检索-更新、删除全文文档盘古+Lucene实现.NET分词+全文检索-Stopw...
.NET WinForm AllowDrop、DragEnter、DragDrop 实现文件拖拽响应
使用.NET开发WinForm应用程序时,如果想要实现某一控件,响应拖拽文件,则需要三步。第一步、将这个控件的AllowDrop设置为true。第二步、为这个控件设置DragEnter事件。privatevoid_list_DragEnter(objectsender,DragEventArgse){if(e.Data.GetDataPresent(DataFormats.FileDrop)){e.Effect=DragDropEffects.Link;}else{e.Effect=DragDropEffects.None;}}也就是说,如果拖过来的是文件,则响应之。第三步、为这个控件设置DragDrop事件。privatevoid_list_DragDrop(objectsender,DragEventArgse){Arrayarray=(Array)e.Data.GetData(DataFormats.FileDrop);foreach(variteminarray){stringfilePath=item.ToString();}} ...
盘古 + Lucene 实现 .NET 分词 + 全文检索-更新、删除全文文档
盘古+Lucene实现.NET分词+全文检索-盘古分词盘古+Lucene实现.NET分词+全文检索-全文检索盘古+Lucene实现.NET分词+全文检索-更新、删除全文文档盘古+Lucene实现.NET分词+全文检索-Stopword、字典配置前面讲了全文检索的添加和检索,但是其中的文档如何更新、删除呢?我们本节讲一下删除,更新可以自行摸索,或者按照“删除+添加”=“更新”的思路也是可以的。写入文档的时候,要指定一个标识字段:doc.Add(newField("id",id.ToString(),Field.Store.YES,Field.Index.NOT_ANALYZED));其中第四个参数Field.Index.NOT_ANALYZED表示用于检索,但是并不是全文检索,相当于硬匹配。删除时:writer.DeleteDocuments(newTerm("id",id.ToString()));原理是搜索到与id匹配的,就将其删除,如果我们不做硬匹配,也可以像全文检索一样,凡是全文匹配的都删除。注意:字段名称的大小写是敏感的。盘古+Lucene实现.NET分词+全文检索-盘古分词盘...
实现的两个接口中有相同的方法,会不会冲突?
不会。publicinterfaceI1{voidDo();}publicinterfaceI2{voidDo();}publicclassC:I1,I2{publicvoidDo(){}}如上,没问题。...
盘古 + Lucene 实现 .NET 分词 + 全文检索-全文检索
盘古+Lucene实现.NET分词+全文检索-盘古分词盘古+Lucene实现.NET分词+全文检索-全文检索盘古+Lucene实现.NET分词+全文检索-更新、删除全文文档盘古+Lucene实现.NET分词+全文检索-Stopword、字典配置在本连载前一节中,我们提到了有个下载地址,这里面还有两个重要DLL:Lucene.Net.dll、PanGu.Lucene.Analyzer.dll,是用于全文检索的,PanGu.Lucene.Analyzer是盘古针对Lucene写的分析器,我们也可以不用它的,比如可以用自带的:newStandardAnalyzer(Lucene.Net.Util.Version.LUCENE_29)。盘古的文档中也提到了具体使用方法,但是它使用的一些方法是Lucene抛弃的方法,本文使用的是Lucene推荐的方法。先还是照前一节的操作添加并引用DLL。创建索引要使用全文检索,我们得把我们的文章加入索引。//索引目录Lucene.Net.Store.Directorydir=FSDirectory.Open(newDirectoryInfo("D:\itpow...
盘古 + Lucene 实现 .NET 分词 + 全文检索-盘古分词
盘古+Lucene实现.NET分词+全文检索-盘古分词盘古+Lucene实现.NET分词+全文检索-全文检索盘古+Lucene实现.NET分词+全文检索-更新、删除全文文档盘古+Lucene实现.NET分词+全文检索-Stopword、字典配置盘古分词是一款优秀的分词组件,项目地址:http://pangusegment.codeplex.com/。其downloads页面详细列出了源代码下载、编译下载、说明文档下载。注意,其右边还有个“V2.001版本字典”下载,这个是需要的。本地下载盘古。盘古提供的说明文档说得比较清楚,所以本文只是说些最基础的使用方法。一、拖入几个文件在VisualStudio 中,将 PanGu.dll、PanGu.HighLight.dll、PanGu.xml、Dictionaries 拖入。二、修改路径默认配置的Dictionaries 路径是在执行文件的上一级目录,可是我们在VisualStudio 中是拖到同级目录的,所以需要修改。在PanGu.xml 中修改 DictionaryPa...
C# 如何实现千位分隔符(三位分隔)
intm=123456789;MessageBox.Show(m.ToString("N"));如上代码,显示为:123,456,789.00,倒是实现了千位分隔,只是又冒出了小数。怎么去掉小数呢?用N0:intm=123456789;MessageBox.Show(m.ToString("N0"));...
C# ToString-Decimal 如何使用 ToString 实现逗号分隔符、小数四舍五入
C#ToString-如何对Nullable的数字用ToString格式化C#ToString-自动识别百分比C#ToString-参数零长度字符串与null区别C#ToString-Decimal如何使用ToString实现逗号分隔符、小数四舍五入C#ToString-数字ToString四舍五入是哪种四舍五入?C#ToString-中#并不“待见”0C#ToString-小心“;”部分分隔符C#ToString-巧妙实现正号输出如将12345.6789显示为12,345.68,使用如下代码:decimal d = 12345.6789m;d.ToString("N");// 或者用自定义的格式 d.ToString("0,0.00");,但这个没有 "N" 好,因为如果纯小数遇到 "0,0.00" 前面也会显示两个 0,比如:00.00,这明显不符合我们日常习惯。如果想保留三位小数呢?d.ToString...
VC# Delete 键实现列表框选择项删除
针对KeyDown事件,循环:若当前项选择了则删除;否则i++。privatevoid_filePaths_KeyDown(objectsender,KeyEventArgse){//Delete键删除if(e.KeyCode==Keys.Delete){inti=0;while(i<_filePaths.Items.Count){if(_filePaths.Items[i].Selected){_filePaths.Items.RemoveAt(i);}else{i++;}}}}您可能会说:这多复杂啊,用_filePaths.SelectedItems.Clear();且不是一句代码就删除了。错了,_filePaths.SelectedItems.Clear();表示从选中项中删除,并不是删除选中项。真拗口,从选中项中删除,说白了,它的作用就是清除选择,相当于“全不选”。...