我现在准备使用eclipse和SQL server2008数据库去建立一个登录和注册界面的功能项目。使用工具:eclipse,SQL server 2008首先在Java EE中创建一个项目,我取名为requestvsresponse。在项目中创建一个名为Login.jsp...
我现在准备使用eclipse和SQL server2008数据库去建立一个登录和注册界面的功能项目。
使用工具:eclipse,SQL server 2008
首先在Java EE中创建一个项目,我取名为requestvsresponse。在项目中创建一个名为Login.jsp的登录页面
代码如下:
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>登录页面</title>
</head>
<script type="text/javascript">
</script>
<style>
.margin{
margin:20px 300px;
}
.textrange{
width:200px;
}
</style>
<body>
<h1 class="margin">登录界面</h1>
<form name="loginfrm" action="loginserv" method="post" class="margin">
<table>
<tr>
<td>用户名:</td>
<td><input type="text" name="username" class="textrange" class="textrange"></td>
</tr>
<tr>
<td>密 码:</td>
<td><input type="password" name="password1" class="textrange"></td>
</tr>
</table>
<input name="button" type="submit" value="登录" onclick=""><br><br>
<a href="register.jsp" style="text-decoration:none">没有账户,点击注册 </a>
</form>
</body>
</html>
登录界面运行效果如下:
再创建一个注册界面,格式为jsp,命名为register.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.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>注册界面</title>
</head>
<script type="text/javascript">
function a(){
var text1=loginfrm.password1.value;
var text2=loginfrm.password2.value;
var text3=loginfrm.username.value;
if(text1=="" || text2=="" || text3==""){
alert("用户名或密码不能为空!");
return false;//false:阻止提交表单
}
if(text1!=text2 && text1!="" && text2!=""){
alert("密码不一致!");
return false;//false:阻止提交表单
}
if(text1==text2 && text1!="" && text2!="" && text3!=""){
alert("注册成功,跳转登录界面");
//window.location.href='Login.jsp';
}
}
</script>
<style>
.margin{
margin:20px 300px;
}
.textrange{
width:200px;
}
</style>
<body>
<h1 class="margin">注册界面</h1>
<form name="loginfrm" action="loginserv.do" method="post" class="margin" onsubmit="return a()">
<table>
<tr>
<td>用户名:</td>
<td><input type="text" name="username" class="textrange"></td>
</tr>
<tr>
<td>密 码:</td>
<td><input type="password" name="password1" class="textrange"></td>
<tr>
<td>新密码:</td>
<td><input type="password" name="password2" class="textrange"></td>
</tr>
</table>
<input name="button" type="submit" value="注册" >
</form>
</body>
</html>
效果如下:
此时在Login.jsp登录界面中,因为JavaScript方法,点击“没有账户,点击注册”这句话能够跳转到注册界面
然后打开SQL server2008数据库,创建一个新的数据库,命名为:MyDatabase,通过新建查询在该数据库中新建一张表,命名为mytable,sql语句如下:
create mytable
(
name char(8),
passwd char(16)
)
建立好数据库表之后,我们需要在Java EE项目中加入jdbc,因为我使用的是SQL server 2008 ,所以jdbc的版本是41。将jdbc导入到WebContent的WEB-INF的lib中。可以直接在外面将其放入该文件夹下。
之后可以创建servlet项目了,作用是对数据库建立连接,我们先进行注册界面的servlet创建。
将servlet命名为ConnectRe,格式是.java文件。注意要将@WebServlet("/lConnectRe")改为@WebServlet("/loginserv.do"),自己的数据库账户和密码也需要进行修改。
代码如下:
package com.connect;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class ConnectRe
*/
@WebServlet("/loginserv.do")
public class ConnectRe extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public ConnectRe() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
//设置编码
response.setCharacterEncoding("UTF-8");
//response.getWriter().append("Served at: ").append(request.getContextPath());
response.setHeader("Content-type", "text/html;charset=UTF-8");
doPost(request,response);
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
//设置编码
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
response.setHeader("Content-type", "text/html;charset=utf-8");
//获取参数
String username = request.getParameter("username");
String userpwd1 = request.getParameter("password1");
String userpwd2 = request.getParameter("password2");
try{
PrintWriter pw=response.getWriter();
//连接数据库
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
System.out.println("数据库连接");
//得到连接
Connection ct=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DataBaseName=MyDatabase","sa","自己的密码");/*第20行*/
System.out.println("连接数据库成功");
//创建Statement
Statement sm=ct.createStatement();
//得到结果集
//ResultSet rs=sm.executeQuery("select top 1 * from users");
//if(rs.next()){
// pw.println("hf");
/
本文标题为:从入门到入土Java EE(八)——jsp,html,servlet连接SQL server数据库的登录注册界面
基础教程推荐
- JavaScript的三种BOM对象 2023-08-12
- js实现ajax分页完整实例 2022-12-28
- Typescript+Vue大型后台管理系统实战 2023-10-08
- 简单实现ajax三级联动效果 2023-02-14
- Vue项目问题——vue-router重写push方法,解决相同路径跳转报错 2023-10-08
- 理解jquery ajax中的datatype属性选项值 2022-10-17
- ajax同步验证单号是否存在的方法 2023-01-21
- 解析原生JS getComputedStyle 2022-11-20
- 「免费开源」基于Vue和Quasar的前端SPA项目crudapi后台管理系统实战之业务数据增删改查(七) 2023-10-08
- 微信小程序的WXSS和全局、页面配置详细讲解 2022-08-31