当前位置:首页 > 代码 > 正文

mvc登录代码(mvc登录注册)

admin 发布:2022-12-19 19:33 147


今天给各位分享mvc登录代码的知识,其中也会对mvc登录注册进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

如何用jsp,servlet完成一个简单的用户登录的MVC模式设计的实现

首先,你要知道M,V,C分别是什么意思。

M是model,也就是模型,一般都是用javabean来表示,JavaBean有实体类,逻辑业务类两种,例如一个实体类对应数据库的一个表,我们对数据库的操作可以用逻辑类来做。

V是view,是现实显示层,也就是用jsp来做,注意,在jsp中要尽量少用java脚本,这也是我们的追求。

C是controller,也就是控制层,它负责接收由V层发过来的请求,然后根据请求调用JavaBean层的类,然后再将数据返回给页面或者选择跳转到哪个页面。

例如登陆系统,用户从V层看到登陆界面,然后用户填写ID和密码,发送请求,C层接收到请求,根据请求调用M层,查询数据库,如果存在该用户并且密码正确,责跳转到登陆成功页面或者其他的;如果用户名或者密码不存在或错误,就跳转到登陆失败提示页面。

呵呵,我已经尽量简洁的说出了MVC模式的开发,当然,如果去看书,肯定会比较详细的。

记得我刚开始学的时候也是什么也不懂,用多了就明白了。

记住,概念固然重要,但是,更重要的是实践,多敲代码才是最快的学习方法。

希望我的回答可以给你带来帮助,加油!

如下图所示:

求.net mvc3注册登陆页面代码

登录:

[HttpPost]

[ValidateInput(false)]

public ActionResult Login(ACL_User model, string url)

{

if (model.UserName == null || model.UserName == "")

ModelState.AddModelError("", "请输入登录名");

else if (model.Password == null || model.Password == "")

ModelState.AddModelError("", "请输入密码");

else

{

var userlist = from ACL_User in db.ACL_User

where ACL_User.UserName == model.UserName

select ACL_User;

if (userlist.Count() == 0)

{

ModelState.AddModelError("", "登录名不存在.");

}

else if (userlist.Count() == 1)

{

ACL_User user = userlist.FirstOrDefault();

if (user.Password == Vooyo.Helper.MD5Encrypt.MD5(model.Password))

{

if (user.Deleted == true)

{

ModelState.AddModelError("", "该用户已注销,详情请和管理员联系.");

}

else

{

if (user.Avaliable == false)

{

ModelState.AddModelError("", "用户审核中.");

}

else

{

Session["user"] = user;

Session["url"] = url;

if (user.ACL_Role.RoleName.Equals("机组人员"))

{

return RedirectToAction("ChooseRole", "Account");

}

return RedirectToAction("Index", "Home");

}

}

}

else

{

ModelState.AddModelError("", "密码错误.");

}

}

}

return View(model);

}

注册:

#region 注册

public ActionResult Registered()

{

var roles = from ACL_Role item in db.ACL_Role

select item;

ViewBag.roles = roles;

var department = from Department d in db.Departments

select d;

ViewBag.department = department;

return View();

}

[HttpPost]

public ActionResult Registered(ACL_User model)

{

string prePassword = model.Password;

try

{

model.ID = Guid.NewGuid();

model.Avaliable = false;

model.Deleted = false;

MD5 md5 = MD5.Create();

// TODO: Add insert logic here

ViewBag.State = 1;

model.Password = Vooyo.Helper.MD5Encrypt.MD5(model.Password);

db.ACL_User.Add(model);

db.SaveChanges();

//Session["user"] = model;

return View();

}

catch

{

model.Password = prePassword;

return View(model);

}

}

#endregion

springmvc实现用户登入controller怎么写

@Controller

public class LoginController {

public static final String CURRENT_USER_NAME = "CURRENT_USER_NAME";

@Autowired

private UserService userService;

@RequestMapping(value="/login", method=RequestMethod.POST)

@ResponseBody

public ResponseEntityLoginReturnBean login(@ModelAttribute LoginPostBean loginForm, HttpSession session) {

String username = loginForm.getUsername();

String password = loginForm.getPassword();

if(Tools.checkParams(username, password)){

String passwordmd5 = Tools.MD5(password);

loginForm.setPassword(passwordmd5);

if(userService.loginValidate(loginForm)){

session.setAttribute(CURRENT_USER_NAME, username);

return new ResponseEntityLoginReturnBean(new LoginReturnBean(username), HttpStatus.OK);

} else {

return new ResponseEntityLoginReturnBean(HttpStatus.UNAUTHORIZED);

}

} else {

return new ResponseEntityLoginReturnBean(HttpStatus.BAD_REQUEST);

}

}

}

格式基本是如上所示,楼主对照着写就行了,然后用户登录主要是验证用户和密码,密码需要用加密方法加密,具体取决于楼主所用的是哪种加密,上述代码用的是MD5,验证完后,如果成功,进入用户界面,将用户信息写进session,如果失败,返回登录界面,并告知登录失败信息。

javascript MVC模式 对于MVC我懂得如何架构和写代码,能不能就登录这一功能给我解释一下,最好附代码?

//由于javascript实际上比java更加彻底的对象化的原因,所以model层可以任意的删改,所以只做了简化

function Model(o){

    for(var k in o )

        this[k] = o;

}

//视图层模板

function _template(s,args){

    return s.replace(/\$\$\{(.*?)\}/img,function(ag,ag1){

        return args[ag1]||ag;

    })

}

var _routeList={

    "login":{

        _model:new Model({id:null,pwd:null}),//假设这里是填充好的数据

        controlFun:function(id,pwd){//相当于action的方法

            if(id==="hao"  pwd==="123"){

                this._model.id="hao";//模拟对象数据,填充,为视图层准备

                document.getElementById("result").innerHTML=_template("div欢迎$${id}登陆/div",this._model);//填充视图层数据

            }

        }

    }

}

function router(url ,args){//模拟路由层

    if(url==="login"){//简写,相当于action请求路径

        _routeList[login].controlFun.apply(this,args)

    }

    

}

//假设下面是提交按钮

input ..... onclick= router("login",["hao","123"])  //路由层做转发

我写的非常简单,接近伪代码

视图层的绑定,action的请求拦截,Model层的一些对象操作都没写,还有DI啊之类的特性也没做,因为一旦真正写起来代码量太大都不够贴的,所以我暂时只把思路描述一下

c#mvc 怎么验证登录状态

首先,mvc开发的是web应用,web应用中, 一般使用cookie或者session来进行身份验证。

参考: 介绍了cookie和session的概念和作用,

简单的说,Cookie是客户端记录的信息, Session是服务器记录的信息,  而身份验证需要使用的就是Cookie或者Session。

所以,mvc做身份验证(登录),第一步是验证身份,然后颁发给用户cookie或者session,

如:

//控制器代码:

[HttpPost]

public ActionResult Login() 

{

     //...登录验证, 

     if(用户名密码正确)

     {

         Session["UserId"] = "100"; //这里举的是最简单的例子,即记录用户的ID

     }

}

那么记录了之后, 服务器就知道,这个人是ID = “100"的那个用户了,然后就是验证了。

在MVC中,一般使用FIlter来控制用户的权限,即某个Action需要怎么样的权限、或者指定某个用户才能进行访问,否则返回一个错误。

一般会重写过滤器, 在你的MVC项目中新建一个类:

public class MyAuthorizeAttribute : System.Web.Mvc.AuthorizeAttribute

//继承mvc自带的AuthorizeAttribute

    {

        protected override bool AuthorizeCore(HttpContextBase httpContext)

        {

           if(httpContext.Session["UserId"]!=null)

           {

               if(httpContext.Session["UserId"]=="100"}

               {

                   return true;

                }

                else

                {

                    return false;

                }

           }

            return false;

        }

    }

这个过滤器很简单, 如果Session["UserId"] =="100"的时候,才会通过(返回true),其他都不允许通过。

最后一步,就是给需要验证身份的控制器加上这个过滤器即可。

[Authorize] 

//这个就是验证身份的, 如果用户没有登录,或者UserId不等于100,

系统会禁止他进入Index的界面

public ActionResult Index()

{

     Return View();

}

怎么在spring mvc 框架中 写登录验证的验证码

form id="loginInputForm" method="post"

hr/

用户名:input type="text" id="accountNumber" name="accountNumber" value="" /

hr/

密 码:input type="password" id="password" name="password" value=""/

hr/

验证码:input type="text" size="10px" name="VerificationCode" placeholder="请输入验证码" id="VerificationCode"/

span style="padding: 0px;"

a href="javascript:void(0);" onclick="VerificationCode()"img id="randCodeImage" src="VerificationCode/generate.action"//a

/span

/form

解释:

首先验证码图片是一个img,而它的src肯定是一个动态生成图片的路径,我们可以固定一个专门只为做验证码的方法,这里以VerificationCode/generate.action方法为例,这个方法是生成图片的方法,这样进入这个页面就会有一个初始的图片,当我们点击这个图片的时候就会不停的更换不一样的图片,就是利用异步提交的方式进行,下面是js代码

/**

*验证码刷新

*/

function VerificationCode(){

var rad = Math.floor(Math.random() * Math.pow(10, 8));

//uuuy是随便写的一个参数名称,后端不会做处理,作用是避免浏览器读取缓存的链接

$("#randCodeImage").attr("src", "VerificationCode/generate.action?uuuy="+rad);

}

为什么要在后面加一个随机数?因为如果不加一个随机数,每次不停的访问同一个一模一样的方法的时候,实际上不会去执行这个方法,因为它取得是缓存,所以有时候点击验证码图片刷新图片却不动,就是这个原因,加上验证就会让系统知道你的访问地址发生了变化,就不会取缓存了。

mvc登录代码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于mvc登录注册、mvc登录代码的信息别忘了在本站进行查找喔。

版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;

本文地址:http://ahzz.com.cn/post/20681.html


取消回复欢迎 发表评论:

分享到

温馨提示

下载成功了么?或者链接失效了?

联系我们反馈

立即下载