总体思路.根据用户输入的用户名和密码,来判断,和数据库里面存的是不是一样,如果一样就表明登录成功,否则就登录失败. 方案一: 1.select* from 表名 where username="用户输入的用户名" 2.如果存在 reader.Read(),即用户名存在,接着就判断用户输入的密码,和取到的密码(reader.GetString(reader.GetOridinal("密码字段")))是不是一样,如果一样就登录成功,否则就登录失败. 方案二: selec…
1.需求分析:做一个登录的小程序,基于Winform的窗体小程序.基本要求:登录成功:弹框显示登录成功,登录失败就弹框显示失败. 扩展功能:登录次数超过3次,就”锁定“用户,提示登录错误次数过多,不能登录.用户点击之后,就退出程序:登录成功,就把错误字段清零. 这里我们在数据库表中,加一个错误字段,类型为int,初始值设置为0. 相信;这个小程序对于大家来说,是超级简单的.我这里也是来熟悉一下,把基础知识再巩固一下. 2.用到的技术:ADO.NET,存储过程. 3.项目实现: 首先我们新建一个窗…
系列文章列表: scrapy爬虫学习系列一:scrapy爬虫环境的准备:      http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_python_007_scrapy01.html scrapy爬虫学习系列二:scrapy简单爬虫样例学习: http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_python_007_scrapy02.html scrapy爬虫学习系列三:scrapy部署到scrapyh…
DocX学习系列 DocX开源WORD操作组件的学习系列一 : http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_sharp_001_docx1.html DocX开源WORD操作组件的学习系列二 : http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_csharp_005_docx2.html DocX开源WORD操作组件的学习系列三: http://www.cnblogs.com/zhaojiedi…
说明(2018-4-9 20:11:42): 1. 先自定义了一个登录控件,可以输入账号.密码,点击登录.然后在Form1里面拖入这个控件,要求输入账号密码正确时,点击登录,控件显示绿色,否则显示红色. 2. 用事件来把控件里的账号和密码传值给Form1窗体,可以省略委托的定义过程那一行代码(public delegete void MyDel())直接用public event EventHandler MyEve. 3. 与委托的不同在于,事件里有两个参数(object sender, Ev…
RabbitMQ学习系列三:.net 环境下 C#代码订阅 RabbitMQ 消息并处理 http://www.80iter.com/blog/1438251320680361 http://www.80iter.com/blog/1414401059921214 上一篇已经讲了Rabbitmq如何在Windows平台安装 不懂请移步: RabbitMQ学习系列二:.net 环境下 C#代码使用 RabbitMQ 消息队列 一.理论 .net环境下,C#代码订阅RabbitMQ消息队列,本文用e…
原文:.net reactor 学习系列(三)---.net reactor代码自动操作相关保护功能         接上篇,上篇已经学习了界面的各种功能以及各种配置,这篇准备学习下代码控制许可证.         代码控制许可证的意思就是软件经过.net reactor保护后,到期时客户端就需要购买许可证,这时软件开发商就需要生成许可证等操作,这个操作可以由代码控制来达到自动化的效果.当然不仅仅是生成操作,还包扩获取许可证的信息,作废许可证,激活许可证等操作.         在安装目录下..…
目录 MyBatis学习系列一之环境搭建 MyBatis学习系列二——增删改查 MyBatis学习系列三——结合Spring MyBatis在项目中应用一般都要结合Spring,这一章主要把MyBatis结合到Spring框架中. 数据库环境:MySQL 1.源码结构图 引用Jar包: 说明:Spring的Jar包,这里不再详细说明. MyBatis相关的Jar包:mybatis-3.2.8.jar.mybatis-spring-1.1.1.jar MySQL相关的Jar包:mysql-conn…
上一篇已经讲了Rabbitmq如何在Windows平台安装 不懂请移步: RabbitMQ学习系列二:.net 环境下 C#代码使用 RabbitMQ 消息队列 一.理论 .net环境下,C#代码订阅RabbitMQ消息队列,本文用easynetq开源的.net Rabbitmq api来实现,EasyNetQ 是一个易于使用的RabbitMQ的.Net客户端API,本文win服务基于topshelf实现,不懂请移步:windowsSevice程序和topshelf程序创建服务对比 二.项目搭建…
导言 继上篇<用Qt写软件系列二:QIECookieViewer>之后,有一段时间没有更新博客了.这次要写的是一个简单的系统工具,需求来自一个内部项目.功能其实很简单,就是查看当前当前系统中运行的进程信息以及系统中已安装软件信息.说出来也就这么两句话,然而做起来的时候,问题却层出不穷.另外,一直想研究一下Qt中的样式表(Style Sheet)的使用,就这这个机会实践了一下,也算收获颇多. 这一篇主要讲该工具的底层实现.前面也说过,这个小工具总共有有两个功能:查看进程信息和已安装软件信息.因此…
1.简介 在Identity Server4学习系列一和Identity Server4学习系列二之令牌(Token)的概念的基础上,了解了Identity Server4的由来,以及令牌的相关知识,本文开始实战,实现Identity Server4基本的功能. 2.前提 本文基于.Net Core2.1和Indetity Server4 2.3.0,令牌处理包采用IdentityServer4.AccessTokenValidation 2.7.0 3.实战一Identity Server4服…
Redis配置主从 主IP :端口      192.168.0.103 6666 从IP:端口       192.168.0.108 3333 配置从库 (1)安装服务: redis-server --service-install --service-name redisService6666 --port 6666 (2)启动进程: redis-server --service-start --service-name redisService6666 (3)连接redis:redis-…
http://www.topwcftutorials.net/2012/10/wcf-faqs-part3.html WCF Interview Questions – Part 3 This WCF tutorial is part-3 in series of WCF Interview Questions and Answers. Other parts in this series are as follows: 这是WCF问答系列教程中的第三部分,其他部分在下面: WCF Servic…
经过半个月的尝试,终于成功,记录下来备查! 做完之后发现有很多的问题没有解决,请大佬多批评指教! 强烈建议:学习KIVY的查看官方文档 需要用的知识: 1.字典的相关知识 2.kivy的下拉列表(Drop-Down List).textInput.按钮(button).boxLayout 3.pickle模块的load()函数 ps:因为是小白,所以尽量用最简单的东西完成小程序,现在的目的是先让程序跑起来,以后再提升! 我的环境:pycharm.win7 一.我们先把一个kivy运行的必要框架写…
前面的两篇文章中总结了Java NIO中的两大基础组件Buffer和Channel的相关知识点,在NIO中都是通过Channel和Buffer的协作来读写数据的,在这个基础上通过selector来协调多个channel以同时读写数据,本文我们就来学习一下selector. Java NIO中引入了"selector"的概念,一个selector其实是一个Java对象,能够通过诸如连接打开.数据就绪等事件监控多个channel.如此在单个线程中就可以通过一个selector同时处理多个c…
上面梳理了通过注解来隐式的完成了组件的扫描和自动装配,下面来学习下如何通过显式的配置的装配bean 二.通过Java类装配bean 在前面定义了HelloWorldConfig类,并使用@ComponentScan和@Configuration注解,@Configuration注解表明了这个类是一个java配置类,该类用在获取Spring应用上下文时,告诉Spring创建bean的细节,通过@ComponentScan,我们启用了Spring的自动组件扫描,现在就让我们来看如果通过java类来显…
前言 在上一篇中,我们基本上完成了主要功能的实现,剩下的一些导出.进程子模块信息等功能,留到后面再来慢慢实现.这一篇来讲述如何对主界面进行个性化的定制.Qt库提供的只是最基本的组件功能,使用这些组件开发出来的软件基本上个性可言.如果开发的产品只讲究实用性,那么UI体验尚可搁置一边.如果要面向客户推广部署,那么改善一下UI视觉效果对于产品的推广也会有莫大的帮助.闲话不多说.先来对比一下界面个性化定制前后的效果: 先不说界面美化之后,界面有多绚丽.震撼人心.但是,突出产品主题.彰显个性这块倒是不折不…
上篇文章 已经做出了基本的增删改查    但这远远不足以应付实际的项目  今天讲下实际项目中 肯定会有的 排序 刷选  以及分页. 重点想多写点分页的 毕竟这个是任何时候都要有的 而且 我会尽量把这个分页做的复杂下  这样到实际项目时 可以复制过来改改就行了~~ (这里我用的是国产的基于ScottGu的PagedList<T>类和相关方法完善的分页--MVCPager) 是个开源的  带很多demo介绍的分页帮助类  这里说下 建议大家看下源码 这样才能进步 要不然只是个会使用插件的人~  …
一.简介 Redis中的列表相当于C#中的LinkedList,也就是链表,如果你研究过链表这个数据结构,肯定知道.它的插入和删除是非常快的,但是定位却很慢,因为必须遍历所有的元素,才能找到对应的值,所以当你需要对列表进行统计的时候,建立跑后台服务去做,而不是使用Redis去遍历,因为开销很大. Redis中的列表.常用来做异步队列,将需要延后处理的任务对象序列化成字符串,追加到Redis中的列表中,另外开启一个线程,或者后台服务,去消费这个列表进行数据处理. 注:链表其实和我前面的随笔中的链式…
1. 账户与账户安全 账户和组是操作系统的基本概念,linux的组有基本组和附加组之分,一个用户只可以加入到一个基本组中国,但是可以加入到多个附加组中.创建用户时,系统默认会自动创建同名的组,并设置用户加入该基本组中. 1.1 创建账户和组 1. useraddm -c 设置账户描述信息,一般为账户全称 -d 设置账户家目录,默认为/home/用户名 -e 设置账户的失效日期,格式为 YYYY-MM-DD -g 设置账户的基本组 -G 设置账户的附加组,多个附加组中间用逗号隔开 -M 不创建账户…
Flask是一个使用 Python 编写的轻量级 Web 应用框架.其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 .Flask使用 BSD 授权. Flask也被称为 “microframework” ,因为它使用简单的核心,用 extension 增加其他功能.Flask没有默认使用的数据库.窗体验证工具.   以上叙述来自百度百科.   BOSS说接下来的项目要用到Flask,便开始学习. 今天先从简单的登录开始. 1.开发工具用的是 汉化版的pycharm.免…
前言 在上一篇中,我们已经对组件有了更加进一步的认识,从组件的创建构造器到组件的组成,进而到组件的使用,.从组件的基本使用.组件属性,以及自定义事件实现父子通讯和巧妙运用插槽slot分发内容,进一步的认识到组件在Vue中的核心地位. 而今天,我们将对vue中的基本指令进行了解汇总,指令在Vue中是个很重要的功能,在Vue项目中是必不可少的.根据官网的介绍,指令 (Directives) 是带有 v- 前缀的特殊属性.指令的职责是,当表达式的值改变时,将其产生的连带影响,响应式地作用于 DOM.…
1.实体状态 我们通过EF来对数据库进行操作并持久化到数据库,那么EF必然通过EF上下文来维护实体的状态,明确知道每一个状态所对应的操作.也就是说EF通过上下文负责跟踪实体的状态.EF实体状态存在命名空间System.Data.Entity下的EntityState枚举中 1.1.Added Added状态针对添加操作,当标记为此状态时,表名实体被上下文追踪但是不存在数据库中,当调用SaveChange()的时候会插入到数据库中.标记Added状态有两种:一种是间接标记,通过Add方法调用:另一…
合肥程序员群:49313181.    合肥实名程序员群:128131462 (不愿透露姓名和信息者勿加入) Q  Q:408365330     E-Mail:egojit@qq.com 最近比较忙,只能抽节假日去学习和记录自己的学习,这一节我记录自己学习PE头的学习.在这里给大家介绍一本很好的学习PE的书:Windows PE权威指南.上一节我们一起学习DOS头.DOS头很多内容在16位DOS系统下面才会用到.在现在的Win32系统中,这些事冗余. 因此我们关注更多的是PE头而非DOS头.首…
这次我使用ADO.NET来插入一条数据,到数据库中.主用到存储过程.我不想每次都是用SQL文本的形式了,那样始终没有进步--- 下面首先,我把我这次练习要用到的数据库脚本,贴出来: USE master --使用系统数据库 GO IF EXISTS(SELECT * FROM sysdatabases WHERE name=N'DB_MyStudentLife') DROP DATABASE [DB_MyStudentLife]; --如果要创建的数据库存在的话,就删除 GO CREATE DA…
一.ADO.NET基础 程序和数据库交互,要通过ADO.NET进行:通过ADO.NET就能在数据库中执行SQL了.ADO.NET中提供了对不同数据库的统一操作接口(ODBC).另外还有一种操作数据库的接口是JDBC. ADO.NET中通过SqlConnection类创建到SQL Server的链接,Sqlconnection代表一个数据库的链接,ADO.NET中的链接等资源都实现了IDisposable接口. 实现了IDisposable接口的对象,在使用完了,要进行资源的释放.调用Dispos…
由于公司的项目才接触到ABP这个框架,当时就觉得高大上,什么IOC.AOP.ddd各种专业词汇让人激情 澎湃,但在使用过程中碰到了许多坑,可能也许是没有去看源码导致的,但工作确实没有那么多时间让人去慢慢研究.很久之前想手动搭建这个框架了,但是各种理由,你懂的.但是要在技术上得到大的提升就得静的下心去研究,学到大神的思想和精髓,运用到实际中去,才能去体验更开阔的天地. 本文以创建博客为思路,一步步构建整个项目,在摸索中进步,也希望能够帮助到有需要的人. 一.基础架构 第一部分主要是搭建好整个项目的…
前言 本篇主要介绍的是SpringCloud相关知识.微服务架构以及搭建一个高可用的服务注册与发现的服务模块(Eureka). SpringCloud介绍 Spring Cloud是在Spring Boot的基础上构建的,用于简化分布式系统构建的工具集,为开发人员提供快速建立分布式系统中的一些常见的模式. 例如: 配置管理(configuration management),服务发现(service discovery),断路器(circuit breakers),智能路由( intellige…
1 forearch_oracle下批量保存(47) oracle批量插入 不支持values(),(),()方式 1.多个insert放在begin-end里面 begin insert into myemployeee(id,last_name,email,gender,dept_id) values (myemployeee_seq.nextval,#{emp.lastName,jdbcType=VARCHAR},#{emp.email,jdbcType=VARCHAR}, insert…
一.CLR线程池 1.进程和CLR的关系一个进程可以只包含一个CLR,也可以包含多个CLR2.CLR和AppDomain的关系一个CLR可以包含多个AppDomain3.CLR和线程池的关系一个CLR只包含一个线程池所以得出一个CLR下的多个AppDomain共享一个线程池和一个进程下的多个CLR拥有多个线程池的结论.注:多个线程池间的线程池相互不产生影响. 4.CLR和线程池和操作请求队列的关系(1).CLR第一次初始化时,线程池并没有线程,当应用程序调用异步代码执行一个方法时,会将该请求记录…