JSP页面开发和数据库应用01(JDBC)

前期需要有eclipse和MYSQL的环境,具体怎么获取请自行百度~

有了前面两个环境,我们还需要准备一个MySQL的连接jar包:
mysql-connector-java-5.1.39-bin.jar(资源不知道上传成功了没,如果找不到就自行下载,版本不同没有关系,下载jar包地址
之后就可以开始写我们需要的代码了

1、写用户注册界面

相信来看这篇文章的同学都有一定的HTML基础,话不多说,代码附上

<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<!DOCTYPE>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>注册页面</title>
</head>

<script language="javascript">
		function check_register()
		{
		
		 if(document.form1.username.value=="")
		 {
		 alert("请检查用户名是否为空!");
		 return false;
		 }
		 if(document.form1.password.value==""){
		 alert("请检查您的密码是否为空!");
		 return false
		 }
		 if(document.form1.password.value.length<6){
		   alert("您的密码长度小于6!");
		   return false
		 }
		 if(document.form1.confirmpassword.value != document.form1.password.value){
			   alert("两次密码输入不一致!");
			   return false
		 }
		 if(document.form1.phone.value==""){
				 alert("请检查您的联系方式是否为空!");
				 return false
		 }
		
		}
	</script>

<body>

	<center>
		<h2>用户注册</h2>
		<form name="form1" action="regcheck.jsp" method="post" onSubmit="return check_register()" >
			<table>
				<tr>
					<td>用户名</td>
					<td><input type="text" name="username" /></td>
				</tr>
				<tr>
					<td>密码</td>
					<td><input type="password" name="password" /></td>
				</tr>
				<tr>
					<td>确认密码</td>
					<td><input type="password" name="confirmpassword" /></td>
				</tr>
				<tr>
					<td>联系电话</td>
					<td><input type="tel" name="phone"/></td>
				</tr>
				<tr>
					<td>性别</td>
					<td><input type="radio" name="sex" id="s1" value="男"
						checked="checked" /><label for="s1"></label> <input type="radio"
						name="sex" id="s2" value="女" /><label for="s2"></label></td>
				</tr>
				<tr>
					<td>城市</td>
					<td><input type="text" name="country"/></td>
				</tr>
				<tr>
					<td>兴趣爱好</td>
					<td><input type="text" name="hobby"/></td>
				</tr>
				<tr>
					<td><input type="submit" value="提交" /></td>
					<td><input type="reset" value="重置" /></td>
				</tr>
			</table>
		</form>
	</center>

</body>
</html>

性别当中的label标签有ID绑定,效果是让用户点击文字也可以选中

我们就需要有一个页面来接收并检查提交的数据

<%@page import="com.sun.xml.internal.ws.api.pipe.Tube"%>
<%@ page language="java" import="java.io.*,java.util.*,java.sql.*"
	contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>注册页面</title>
</head>
<script type='text/javascript'>
//提示用户信息并显示等待时间
   			var i=3;
   			function getTime(){
   			document.getElementById('num').innerHTML="<font color='red'>"+i+"</font>";
   			i-=1;
   			var x=setTimeout('getTime()',1000)
   			if(i<=0){
   			clearTimeout(x);
   			}
   			}
   			window.onload=getTime;
</script>
<body>
	<%  
       try {
    	    //驱动程序名
            Class.forName("com.mysql.jdbc.Driver");
         	//连接状态
            Connection conn = DriverManager.getConnection("jdbc:mysql:///你MySQL例数据库的名称", "连接数据库的用户名", "用户密码");
         	//获取用户数据
            String username= new String(request.getParameter("username").getBytes("ISO-8859-1"),"utf-8");
			String password= new String(request.getParameter("password").getBytes("ISO-8859-1"),"utf-8");
			String phone= new String(request.getParameter("phone").getBytes("ISO-8859-1"),"utf-8");
			String sex= new String(request.getParameter("sex").getBytes("ISO-8859-1"),"utf-8");
			String country= new String(request.getParameter("country").getBytes("ISO-8859-1"),"utf-8");
			String hobby= new String(request.getParameter("hobby").getBytes("ISO-8859-1"),"utf-8"); 
			
			//获取session
			String regip = session.getId();
			session.setAttribute("username",username);
			
			//获取初测时间
			String regtime = (new java.util.Date()).toLocaleString();
           if(conn != null){
        	   //创建帮助对象
               Statement statement = conn.createStatement();
               ResultSet rs = statement.executeQuery("select name from user group by name");
               //定义boolean变量控制相同用户名注册
               boolean check = true;
               while (rs.next()){
            	    String name1 = rs.getString("name");
            	    if(username.equals(name1)){
            	    	check = false;
            	    	%>
            	    		<script type="text/javascript">
            	    			alert("用户名已被注册!");
            	    			setTimeout('window.document.location.href="register.jsp";');
            	    		</script>
            	    	<%
            	    	break;
            	    }
               }
        	   if(check){
        		 //创建SQL语句对象
                   String sql = "insert into user (name,password,phone,sex,country,hobby,regip,regtime)"+
                   				"values ("+"'"+username+"'"+","
                   						+"md5('"+password+"')"+","
                   						+"'"+phone+"'"+","
                   						+"'"+sex+"'"+","
                   						+"'"+country+"'"+","
                   						+"'"+hobby+"'"+","
                   						+"'"+regip+"'"+","
                   						+"'"+regtime+"'"+")";
                   //执行SQL语句,对数据进行更新
                   statement.executeUpdate(sql);
                   
            	   	%>
             		<center>
             			<h1>注册成功!</h1>
             			<h2>注意!!页面将在<div id='num' style='display=inline;'>3</div>秒后跳转</h2>
             		</center>
             		<meta http-equiv='refresh' content='3;url=login.jsp'>
      			 	<%
        	   }

               //关闭对象
               rs.close();
               statement.close();
               conn.close();
           }
           else{  
               out.print("连接失败!");  
           }  
       }catch (Exception e) {        
           out.print("数据库连接异常!");  
       }
	%>
</body>
</html>

有兴趣可以试一试,博主我也是小白学生,代码比较基础,请大神勿喷,后面我会继续分享后续代码及其操作!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值