最近几天学习有关javaweb和数据库的知识,准备自己写一个图书馆管理系统,不过过去几天也就写了一个简单的登入界面。以下是登入界面的截图。一开始有这个想法,但是不知道从哪学起,后面是跟着B站视频学的。(B站是个好地方!!!)
学习过程,
1、先安装eclipse +JDK
2、安装数据库SQL server 2008、MySQL、Oracle都可以(数据库对新手可能不是很友好,要有耐心,)我安装的是SQL server 2008的,当时数据库搞了我两天多的时间
SQL server 2008 :https://jingyan.baidu.com/article/9faa7231f24e76473c28cbcf.html
SQL Server 2008数据库的配置及连接:https://luanxiyuan.iteye.com/blog/1908913
数据库增删改查 https://blog.csdn.net/du_du1/article/details/93610769
3、搭建Tomcat环境 https://blog.csdn.net/du_du1/article/details/92390746
4、目前只是学习了jsp知识+简单HTML+CSS+数据库的增删修改的知识
以下是第一张图中的HTML的代码
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Login</title>
<style>
input[type=text], select {
width: 100%;
padding: 12px 20px;
margin: 8px 0;
display: inline-block;
border: 1px solid #ccc;
border-radius: 4px;
box-sizing: border-box;
}
input[type=submit] {
width: 100%;
background-color: #4CAF50;
color: white;
padding: 14px 20px;
margin: 8px 0;
border: none;
border-radius: 4px;
cursor: pointer;
}
input[type=submit]:hover {
background-color: #45a049;
}
div {
border-radius: 5px;
background-color: #f2f2f2;
padding: 20px;
}
form
{
position:absolute;
left:1150px;
top:100px;
}
body
{
background:url(https://cdn.pixabay.com/photo/2016/06/01/06/26/open-book-1428428_1280.jpg);
background-size:1550px 750px;
background-repeat:no-repeat;
padding-top:150px;
}
</style>
</head>
<body>
<form name="abc" action="check.jsp" method="post">
<label for="fname">用户名</label><br/>
<input type="text" id="fname" name="uname" placeholder="请输入用户名"><br/>
<label for="lname">密 码</label><br/>
<input type="password" id="lname" name="upwd" placeholder="请输入密码">
<input type="submit" value="登入">
<div>
<a href="inquire.jsp" class="button2">忘记密码</a>
<a href="register.jsp" class="button1">去注册账号</a><br/>
</div>
</form>
</body>
</html>
以下是第一张图中的check的HTML
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="org.dao.loginDao" %>
<%@ page import="org.entity.Login" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
String name=request.getParameter("uname");
String pwd=request.getParameter("upwd");
if(name==""||pwd==""){
request.getRequestDispatcher("login.jsp").forward(request,response);
}else{
Login login=new Login(name,pwd);
loginDao dao=new loginDao();
int bl=dao.login(login);
System.out.print(bl);
if(bl==1){
out.print("登入成功");
}else if(bl==-1){
request.getRequestDispatcher("login.jsp").forward(request,response);
}else{
out.print("密码错误");
}
}
%>
</body>
</html>
以下是第一图中的java访问数据库的代码
package org.dao;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import org.entity.Login;
public class loginDao {
int bl;
public int login(Login login) throws SQLException {
String JDriver="com.microsoft.sqlserver.jdbc.SQLServerDriver";
String connectDB="jdbc:sqlserver://localhost:1433;DatabaseName=JDBCTest";
String youuser="sa";
String youpwd="123456";
Connection conn = null ;
PreparedStatement pstmt = null;
ResultSet rs=null;
try {
// 动态导入数据库的驱动
try {
Class.forName(JDriver);
System.out.println("连接数据库成功!");
}catch(Exception e){
e.printStackTrace();
System.out.print("SQL Server连接失败!");
}
// 获取数据库链接
// 创造SQL语句
//String sql = "INSERT INTO 登入信息 ( 姓名, 密码 ) VALUES ( '李四', '456123' )";
//String sql = "UPDATE 登入信息 SET 密码='123' WHERE 密码='456123'";
//String sql="DELETE FROM 登入信息 WHERE 姓名='李四'";
try {
conn = DriverManager.getConnection(connectDB,youuser,youpwd);
System.out.println("连接数据库成功!");
}catch(Exception e){
e.printStackTrace();
System.out.print("SQL Server连接失败!");
}
String query="SELECT * FROM studentview WHERE name=? AND password=?";
// 执行SQL语句
pstmt = conn.prepareStatement(query,ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
pstmt.setString(1,login.getName());
pstmt.setString(2,login.getPassward());
rs=pstmt.executeQuery();
if(rs.next()==false) {
bl=-1;
System.out.print(bl);
}else {
rs.last();
//int num=rs.getRow();
rs.first();
//System.out.print(num);
if(rs.getString("password").trim().equals(login.getPassward().trim())&&rs.getString("name").trim().equals(login.getName().trim())){
bl=1;
System.out.print(bl);
}else {
bl=0;
System.out.println(bl);
//System.out.print(rs.getString("password"));
//System.out.print(login.getPassward());
}
}
}finally {
rs.close();
pstmt.close();
conn.close();
}
return bl;
}
}
其他两张图的程序和第一张图的程序框架都是一样的,如有需要可以补充。以上代码还有很多不足,希望能多多学习,多多进步。