我有一个要求用户输入ID的表单.此表单将发送到servlet,该servlet检查数据库以查看用户是否存在.如果用户存在,那么它会将我的订购商品发回给我.已排序的项目将作为数组列表返回.然后将此数组列表重定向到jsp文件以在网页上显示它.用户可以有多个订单,因此数组列表大小可以变化.如何获取数组列表大小,以便显示数组列表中的每个项目?我不想使用JSTL.
的index.jsp:
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
<script>
/*function signin(id, id2) {
document.getElementById(id).style.display = 'block';
document.getElementById(id2).style.display = 'none';
//document.getElementById(id3).style.display = 'none';
}*/
</script>
Run Code Online (Sandbox Code Playgroud)
<form id="Signin" method="post" action="FindUser">
<h2>Login </h2>
<input type="text" name="txtCustID"
placeholder="UserID"><br>
<br><input type="submit" value="Find">
</form>
<%--!<form id="Signup" method="post" action="FindUser"
style="display:none;">
<h2>Sign Up </h2>
<input type="text" name="UserId"
placeholder="User ID"><br>
<br><input type="text" name="FirstaName"
placeholder="First Name"><br>
<br><input type="text" name="LastName"
placeholder="Last Name"><br>
<br><input type="text" name="Street"
placeholder="Street"><br>
<br><input type="text" name="City"
placeholder="City"><br>
<br><input type="submit" value="Sign Up"> …Run Code Online (Sandbox Code Playgroud) 我正在创建一个用户登录。我可以让用户注册,当用户注册时,他的密码在保存到数据库之前被加密。
当同一用户尝试登录时,我收到“无效密码”。
这是因为它将用户输入与数据库中的加密密码进行比较。例如,如果密码是 1234,那么在数据库中它被保存为“$2a$104$0301”。当用户尝试登录时,将用户输入“1234”与“2a$104$0301”进行比较。我该如何解决?
这是我的登录代码:
var LocalStrategy = require('passport-local').Strategy;
var User = require('../Models/users.js');
var bcrypt = require('bcrypt-nodejs');
module.exports = function(passport){
passport.use('login', new LocalStrategy({
passReqToCallback : true
},
function(req, username, password, done){
User.findOne({'username' : username},
function(err, user){
if(err)
return done(err);
if(!user){
console.log('User Not Found with username: '+username);
return done(null, false,
req.flash('message', 'User Not Found.'));
}
if (!isValidPassword(user, password)){
console.log('Invalid Password');
return done (null, false,
req.flash('message', 'Invalid Password'));
}
return done(null, user);
}
);
})
);
var isValidPassword = function(user, password){
var …Run Code Online (Sandbox Code Playgroud) 我正在尝试创建自己的相机视图,除了自动对焦之外我还能正常工作,我似乎无法弄清楚为什么它不起作用.这是我的CameraView.java代码
public class CameraView extends SurfaceView implements SurfaceHolder.Callback {
private SurfaceHolder surface_Holder;
private Camera main_Camera;
boolean on;
public CameraView(Context context, Camera camera){
super(context);
main_Camera = camera;
main_Camera.setDisplayOrientation(90);
surface_Holder = getHolder();
surface_Holder.addCallback(this);
surface_Holder.setType(SurfaceHolder.SURFACE_TYPE_NORMAL);
}
public boolean isOn(){
return on;
}
@Override
public void surfaceCreated(SurfaceHolder holder) {
try{
main_Camera.setPreviewDisplay(holder);
main_Camera.startPreview();
}catch (Exception e){
Log.d("Error", "Canmera error on surfaceCreated" + e.getMessage());
main_Camera.release();
main_Camera = null;
}
}
@Override
public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {
if(holder.getSurface()==null){
return;
}
try{ …Run Code Online (Sandbox Code Playgroud)