原理:  假设用户在机器A登陆后,  这时用户再次在机器B登陆,会以当前会话的SessionID作为键,用户id作为值,插入dictionary集合中,集合再保存在application(保存在服务器的全局变量,多用户可以共享)变量中, 同时判断集合中是否有其他值,这里A机器已经登陆,所以会有A机器登陆的键值对,将A机器的键对应值修改为“_offline_”,以表示强制下线,  A机器的页面通过js轮询去查询dictionary集合,发现中SessionID键对应的值被修改为“_offline_…
其实方法有很多的,我这献丑了. 使用理解java 四大作用域. 思路:理解java 四大作用域的关键. 第一个地方登陆: 1.得到请求的SessionId 和 登陆的 用户名 2.把SessionId 存到application里,用户名存到当前session里 ActionContext ac = ActionContext.getContext(); Map<String, Object> applicationMap=ac.getApplication(); Map<String,…
先上帮助类: /// <summary> /// 单点登录帮助类 /// </summary> public class SSOHelper { /// <summary> /// 登录后执行 /// </summary> /// <param name="UserID">用户标识</param> public void LoginRegister(string UserID) { Hashtable hOnlin…
我这里 shiro 并没有集成 springMVC,直接使用 ini 配置文件. shiro.ini [main] # Objects and their properties are defined here, # Such as the securityManager, Realms and anything # else needed to build the SecurityManager authc.loginUrl = /login.jsp authc.successUrl = /w…
程序猿修仙之路--数据结构之你是否真的懂数组?   数据结构 但凡IT江湖侠士,算法与数据结构为必修之课.早有前辈已经明确指出:程序=算法+数据结构  .要想在之后的江湖历练中通关,数据结构必不可少.数据结构与算法相辅相成,亦是阴阳互补之法. 开篇 说道数组,几乎每个IT江湖人士都不陌生,甚至过半人还会很自信觉的它很简单. 的确,在菜菜所知道的编程语言中几乎都会有数组的影子.不过它不仅仅是一种基础的数据类型,更是一种基础的数据结构.如果你觉的对数组足够了解,那能不能回答一下: 数组的本质定义?…
在本节中,您将添加一些类,这些类用于管理数据库中的电影.这些类是ASP.NET MVC 应用程序中的"模型(Model)". 您将使用.NET Framework 数据访问技术Entity Framework,来定义和使用这些模型类.Entity Framework(通常称为 EF) 是支持代码优先 (Code First) 的开发模式.代码优先允许您通过编写简单的类来创建对象模型.(相对于"原始的CLR objects",这也被称为POCO 类)然后, 可以从您的…
ASP.NET  MVC 简单介绍① 只做了重要描述,内容出自菜鸟教程网站内容. 目录 1布局 2HTML 帮助器 3.Razor 语法 4.添加样式 5.Layout 6. Controllers 7.ASP.NET MVC - 视图 Views 文件夹 ASP.NET 文件类型 Index 文件 ASP.NET MVC - SQL 数据库 创建数据库 添加数据库表 添加数据库记录 添加连接字符串 ASP.NET MVC - 模型 MVC 模型 Models 文件夹 添加数据库模型 添加数据库…
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using SportsStore.WebUI.Models; using System.Text; namespace SportsStore.WebUI.HtmlHelpers { /// <summary> /// 分页辅助器 /// </summary> publ…
在本节中,您将添加一些类,这些类用于管理数据库中的电影.这些类是ASP.NET MVC 应用程序中的"模型(Model)". 您将使用.NET Framework 数据访问技术Entity Framework,来定义和使用这些模型类.Entity Framework(通常称为 EF) 是支持代码优先 (Code First) 的开发模式.代码优先允许您通过编写简单的类来创建对象模型.(相对于"原始的CLR objects",这也被称为POCO 类)然后, 可以从您的…
Asp.net MVC 简单分页:   public static string Pager(int page,int pageSize,int total)         {             var htmlStr = "<div class=\"pagination\">";             var pageCount = Math.Ceiling((double)total / pageSize);             var…
ASP.NET MVC 简单事务 //实例化查询上下文 using ( BookStoreEntities db = new BookStoreEntities()) { //找到需要价格和名称的数据实体对象 var book = db.Books.FirstOrDefault(x => x.Title == "ASP.NET NVC 程序开发"); if(book!=null) { //更改属性值 book.Title = "ASP.NET NVC 程序开发"…
//登录页面 login.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.…
摘要:做网站的时候,经常碰到这种问题,一个没登录的用户,却可以通过localhost:23244/Main/Index的方式进入到网站的内部,查看网站的信息.我们知道,这是极不安全的,那么如何对这样的操作进行拦截呢,这里记录我学到的一个小小方法. 以下是我要记录的正文部分: 开始讲之前声明一点,我目前的能力着实很有限,有些东西并不很懂,也可能讲不清楚,有些知识表述可能是错误的(尽量避免),主要是把我对这部分做法的理解记载下来,以后自己独立开发的时候确保不会忘记. 非法登录拦截,主要用到的是.ne…
如鹏的学习管理系统是使用ASP.net MVC 5开发的,今天一个新版本发布后网站出现一个Bug,学生在下拉列表中选中的项再加载显示的时候发现仍然没被选中.详细一点说吧:假如有这样一个Action: public ActionResult Index() { List<SelectListItem> persons = new List<SelectListItem>(); persons.Add(new SelectListItem { Text = "腾讯"…
话题:请求从路由开始 在实际的ASP.NET MVC开发中,URL访问规则----路由的定义是非常重要的.因为任何一个请求都离不开路由.理解它,我们将能理解MVC处理请求的整个过程,灵活地定义系统各种页面的访问规则. 1.1为什么需要路由 我们先来看一个最简单的案例: 示例1: routes.MapRoute( Name:”Default”, Url:”{controller}/{action}/{id}”, Defaults:new {controller=”Home”,action=”Ind…
一.MVC简单入门 1.1.MVC概念 视图(View) 代表用户交互界面,对于Web应用来说,可以概括为HTML界面,但有可能为XHTML.XML和Applet. 模型(Model) 表示用户对其数据的操作的一个封转.可以分为视图模型(view model)和领域模型(domain models),视图模型就是在视图与控制器之间传输数据的一个封转,而领域模型就是业务逻辑,后台数据模型等的一个集合.是我们学的3层中的BLL,DAL,Models的集合 控制器(Controller) 控制器可以理…
学习asp.net 已经有近三个月的时间了,在asp.net mvc上花的时间最多,但个人真是有些菜,不得不说,asp.net mvc的水真的还是蛮深的.目前在公司实习,也见过公司几个项目的代码了.对项目的代码始终停留在一知半解的地步,能改一些简单的bug,但关于项目的来龙去脉始终云里雾里.对于asp.net mvc的架构始终看不懂.因此,照着传智博客的学习视频,学了一下简单的架构搭建.真个架构的搭建我看了将近两遍视频,才稍稍有些头绪,今天在这里记录一下,一方面加深理解,一方面如果以后忘记了,还…
最近在写一些web应用了解了一下asp.net mvc发现的确好用,所以直接就干上了.不过在使用asp.net mvc的Razor模板的情况并不向传统webform那样可以使用控件.但从Razor的功能上已经具备相关代替的功能,只是从Razor角度来说不是我们平常说的控件而是子模板.由于Razor可以根据自己需求把功能拆分到子模板中,然后通过RenderPage方法输出.从设计的手段上来看完全可以把分页控件封装成一个子的cshtml,在需要的时候引用上就是了. 作为一个控件的设计其最重要的环节是…
在用 ASP.NET MVC 3 重写博客园网站首页时,特地留意了一下这个缓存问题,通过这篇博文分享一下. 在 ASP.NET MVC 3 中如果使用了 OutputCache,一定要在 Action 中添加下面的代码,切记! Response.Cache.SetOmitVaryStar(true); 这是一个伴随ASP.NET从1.0到4.0的OutputCache Bug,ASP.NET MVC 3 是基于 ASP.NET 4.0 的,所以也躲不过. 问题演示 下面先来体验一下不加 Resp…
一.ASP.NET 概述        1. .NET Framework 与 ASP.NET                .NET Framework包含两个重要组件:.NET Framework类库和公共语言进行时.编写ASP.NET                    页面需要用到.NET Framework的框架类库和公共语言进行时        2. ASP.NET MVC简介            ASP.NET MVC是ASP.NET技术的一个子集,它是ASP.NET 技术和M…
首先我们通过VS创建一个空的基于Razor视图引擎的ASP.NET MVC3 Web应用程序,命名为JohnConnor.Web 对创建过程或Razor不太了解的看官,请移步 ASP.NET MVC Razor视图引擎攻略 <传送门> ,这里就不再赘述了. 然后我们需要进行以下几步 1,Models文件夹下,添加Student.cs文件,添加以下代码,为了演示方便这里模拟了一个数据源,实际中的数据源可能来自数据库. public class Student { public int Id {…
前面视频 文章地址 Easyui + asp.net MVC 系列教程 第09-17 节 完成登录 高清录制  Easyui + asp.net mvc + sqlite 开发教程(录屏)适合入门    这节课 我们要实现 一个登录的限制 如果用户没有登录 就访问我们的管理页面 那么 直接跳转到登录 当然 可以可以给一个中间的页面 对用户进行友好的提示 我们首先找到 管理页的action   public ActionResult Index() { return View(); } 我们编写一…
摘要:上篇写了如何搭建一个简单项目框架的上部分,讲了关于Dal和Bll之间解耦的相关知识,这篇来把后i面的部分说一说. 上篇讲到DbSession,现在接着往下讲. 首先,还是把一些类似的操作完善一下,与Dal层相同,我们同样可以把Bll层中某些使用广泛的类似的操作封装到基类中,另外,同样要给Bll层添加接口层. 下面直接给出相应的代码: Bll层基类: BaseService.cs public abstract class BaseService<T> where T : class,ne…
由于项目上的需求,需要导出指定条件的Excel文件.经过一翻折腾终于实现了. 现在把代码贴出来分享 (直接把我们项目里面的一部份辅助类的代码分享一下) 我们项目使用的是Asp.Net MVC4.0模式. 每个ActionResult必然会返回一个View或Json等(View或Json中的参数都是object类型的) 所以我们需要一个公共类来统一定义操作的"成功或失败"的状态或返回操作的消息 ,以及有利于使用jquery $.get() .$.post()的接收返回参数时的统一性. 以…
MVC记住账号密码 使用cookie操作 前端: <div> 用户名:<input type="text" id="UserName" value="@ViewBag.UserName"/> </div> <div>    密码:<input type="text" id="UserPwd" value="@ViewBag.UserPwd&qu…
首先到http://open.weibo.com/development 注册一个开发者账号. 然后可以点微连接--网站接入 会分配App Key 和App Secret 然后点高级信息 在这里设置回调地址 这里的回调地址不能用localhost,后面再说怎么来设置这个 新建web项目 为了方便调试,在项目属性的Web中选择本地IIS 保存会提示创建虚拟目录 注意:如果是用本地IIS的话,需要把数据库连接改下,不能用程序自带的LocalDB 运行即可看到页面 此时需要请出一款神器:ngrok 下…
在ASP.NET MVC4中,HtmlHelper为我们提供了Html.RadioButton()方法用来显示Radio Button单选按钮.如果想显示一组单选按钮,通常的做法是遍历一个集合把每个单选按钮显示出来.本篇尝试写一个扩展方法用来展示一组带验证的单选按钮. 首先来扩展HtmlHelper,扩展方法中接收一个SelectListItem的集合,遍历这个集合把每个单选按钮显示出来,并且让这些单选按钮具有不同的id属性值. using System.Collections.Generic;…
三层架构与MVC的关系 三层架构是一个分层式的软件体系架构设计,分为:表现层(UI).业务逻辑层(BLL).数据访问层(DAL).分层的目的是为了实现“高内聚,低耦合”的思想,有利于系统后期的维护.更新或者移植. MVC是一个设计模式,分为:MVC 即Model(模型),View(视图),Controller(控制). MVC与三层架构不是一个等级的.我个人认为MVC其实就是把三层中的UI层又细分成了三层而已 开发环境 vs2013+mvc5+ef6+sql2008 解决方案设计 Common:…
在上篇笔记里我们创建了一个简单的MVC程序 在view中,@Model指的就是MyFirstMvc.Models.IndexModel,我们的提交页面是/Test/Index,当我们输入完数字并按下提交按钮后,程序会去找TestController这个控制器类下的Index方法,并将Model传递给它. 注:input标签中的name属性值必须和IndexModel中的属性名一致,大小写可以不一致,但尽量保持一致. 在controller中,Index方法的return(model)指的是将运算…
1:捕获异常新建一个异常处理的类MyExceptionAttribute捕获异常信息. //写到日志中.多个线程同时操作一个文件,造成文件的并发,这时用队列 public static Queue<Exception> ExecptionQueue = new Queue<Exception>(); /// <summary> /// 可以捕获异常数据 /// </summary> /// <param name="filterContext…