目录
一、在JSP中如何制作一个简易验证码
二、如何通过JDBC连接Oracle数据库增加数据
1.1 制作一个简易验证码的步骤:
① 引入jQuery类库&另起一个javascript;
② 定义一个验证码数组;
③ 定义好验证码区域,例如用一个span标签做验证码区域,再设置点击事件;
//随机验证码=刷新验证码
function myf() {
//下标:0-33
var arr = new Array
(2,3,4,5,6,7,8,9,'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z');//所有候选组成验证码的字符,当然也可以用中文的
var str = "";//定义一个空字符串
for(var i=0;i<4;i++){
//随机数
var a =Math.round(Math.random()*33);//下标
//console.info(arr[a]);//根据下标取元素
str+=arr[a];//拼接
}
//给span赋值
$("#yzm").html(str);
}
④ 写一个自动调用,每当点击一下验证码就调用刷新;
//自动调用
$(function() {
myf();
//给验证码添加一个点击事件
$("#yzm").click(function() {
myf();//刷新验证码
})
})
注意:验证码的字体样式什么的都可以自己用内部样式表设置;
例如:
//验证码
xxxx
好了我们一起来看看效果:
补充:如何让验证码不区分大小写?
//让验证码不区分大小写
if(yzm1.toUpperCase()!=yzm2.toUpperCase()){//验证码不一致
alert("验证码错误!");//提示
myf();//刷新验证码
$("#zz").val("");//清空验证码
return false;
}
2.1 通过表单中各标签设置的name值获取传过来的value值;
//接收表单提交过来的值
String zid = request.getParameter("ntid");//ID
String name = request.getParameter("ntitle");//标题
String zz = request.getParameter("nauthor");//作者
String zy = request.getParameter("nsummary");//摘要
String nr = request.getParameter("ncontent");//内容
String sj = new Date().toLocaleString();//取系统当前时间
2.2 通过JDBC连接Oracle数据库,执行增加的SQL语句把传过来的值赋值到数据库;
话不多说,这里就观看代码消化啦!
/*主键:唯一且不为空
1.标识列:触发器+标识列
2.取表主键的最大序号+1
*/
String URL = "jdbc:oracle:thin:@localhost:1521:orcl";
String CNAME = "oracle.jdbc.driver.OracleDriver";
Class.forName(CNAME);
Connection con = DriverManager.getConnection(URL, "用户名", "密码");
String sql = "select nvl(max(nid),0)+1 from tb_news";
PreparedStatement ps = con.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
int nid = 0;//扩大作用域
if(rs.next()){
nid=rs.getInt(1)+1;//最大序号加1
}
//实现增加=插入操作
sql="insert into tb_news(nid,tid,bt,zz,zy,nr,sj) values(?,?,?,?,?,?,?)";
ps=con.prepareStatement(sql);
//给占位符赋值
ps.setInt(1, nid);
ps.setInt(2, Integer.parseInt(zid));
ps.setString(3, name);
ps.setString(4, zz);
ps.setString(5, zy);
ps.setString(6, nr);
ps.setString(7, sj);
//获得影响行数
int n = ps.executeUpdate();
//关闭资源
if(con!=null&&!con.isClosed()){
con.close();
}
if(ps!=null){
ps.close();
}
if(rs!=null){
rs.close();
}
//判断
if(n>0){//发表成功
//新闻主界面
response.sendRedirect("/s4/news/admin.jsp");
}
else{//发表失败
out.print("");
}
看看效果图:
好啦,以上就是这篇文章Leaf给大家带来的学习笔记分享!感兴趣还可以持续关注我噢!
后续会有更多的JavaWeb学习笔记分享噢!!!