Javaee入門篇一之利用JSP+jdbc+MYSQL 部署至伺服器實現簡單的留言功能。
JavaEE入門篇一之利用JSP+jdbc+MYSQL實現簡單的留言功能。
環境:
- MYSQL
- eclipse
- MYSQL連線驅動jar包
mysql-connector-java-5.1.46(可以在官網下載)
也可以點這裡
執行模式
資料庫建立
**一般資料庫不存明文密碼需要用MD5或者hash+字串加密
載入驅動
將jar放入lib目錄下然後右鍵工程名,在java build path中的Libraries分頁中選擇Add JARs…,選擇剛才新增的JDBC,如下圖
程式碼實現
- 在webcotent目錄下建立login.jsp(登入頁),
<!-- 瀏覽器+JSP+JDBC+MYSQL開發一個Javaweb專案; -->
<%@ 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>
<title>簡單留言板</title>
</head>
<body>
<form action="validate.jsp" method="post">
使用者名稱:<input type="text" name="username" size="20" /><br>
密 碼:<input type="password" name="password" size="21" /><br>
<input type="submit" value="登入" />
<input type="reset" value="重置" />
</form>
</body>
</html>
validate.jsp(驗證頁)
<!-- 瀏覽器+JSP+JDBC+MYSQL開發一個Javaweb專案; -->
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" import="java.sql.*"%>
<<jsp:useBean id="Mysql" scope="page" class="org.easybook.test.jdbc.MysqlDBConn" />
<!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">
</head>
<body>
<%
request.setCharacterEncoding("utf-8");
String usr=request.getParameter("username");
String pwd=request.getParameter("password");
boolean validated=false;
String sql="select * from usertable";
ResultSet rs=Mysql.executeQuery(sql);
while(rs.next()){
if((rs.getString("username").trim().compareTo(usr)==0)&&(rs.getString("password").compareTo(pwd)==0)){
validated=true;
}
}
rs.close();
Mysql.closeStmt();
Mysql.closeConn();
if(validated){
%>
<jsp:forward page="main.jsp" />
<%
}
else{
%>
<jsp:forward page="error.jsp" />
<%
}
%>
</body>
</html>
建立main.jsp(主頁)
<!-- 瀏覽器+JSP+JDBC+MYSQL開發一個Javaweb專案; -->
<%@ 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>
<body>
<%out.print(request.getParameter("username"));%>,你好歡迎登陸留言板
</body>
</html>
建立error.jsp(出錯頁)
<!-- 瀏覽器+JSP+JDBC+MYSQL開發一個Javaweb專案; -->
<%@ 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>
<body>
登入失敗!單擊<a href="login.jsp">這裡</a>返回
</body>
</html>
在scr目錄下建立包名為org.easybook.test.jdbc檔名為MysqlDBConn.java Java檔案
// 瀏覽器+JSP+JDBC+MYSQL開發一個Javaweb專案;
package org.easybook.test.jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
public class MysqlDBConn {
private java.sql.Statement stmt;//Statment 物件(語句)
private Connection conn; //Connection 物件(連線)
ResultSet rs; //ResultSet 物件 (結果集)
//在構建方法中建立資料庫連線;
public MysqlDBConn(){
stmt=null;
try {
//載入驅動程式
Class.forName("com.mysql.jdbc.Driver");
//1.getConnection()方法,連線MySQL資料庫!!
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb","root","root");
}catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
rs=null;
}
//執行查詢類的sql語句 有返回集;
public ResultSet executeQuery(String sql){
try {
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
rs=stmt.executeQuery(sql);//執行查詢語句
} catch (SQLException e) {
// TODO: handle exception
System.err.println("data.excuteQuery:"+e.getMessage());
}
return rs; //返回結果集
}
//關閉物件
public void closeStmt(){
try {
stmt.close(); //關閉Statment連線
} catch (SQLException e) {
// TODO: handle exception
System.err.println("data.excuteQuery:"+e.getMessage());
}
}
public void closeConn(){
try {
conn.close(); //關閉資料庫連線
} catch (SQLException e) {
// TODO: handle exception
System.err.println("data.excuteQuery:"+e.getMessage());
}
}
}
補充:修改xml檔案部署至伺服器
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>JavaEE</display-name>
<welcome-file-list>
<welcome-file>login.jsp</welcome-file>
</welcome-file-list>
</web-app>
專案最終目錄樹
執行結果
相關文章
- 入門篇-其之八-常用類的簡單使用
- JSP(ajax)+Servlet實現簡單的登入功能JSServlet
- Dcat Admin實現簡單的excel匯入功能Excel
- 實現簡單元件到部署伺服器——react元件伺服器React
- 踩坑指南:入門OpenTenBase之部署篇
- NoSLQ之MongoDB簡單入門MongoDB
- laravel_admin 單一登入的簡單實現Laravel
- 動手實現一個簡單的 rpc 框架到入門 grpc (下)RPC框架
- 動手實現一個簡單的 rpc 框架到入門 grpc(上)RPC框架
- 動手實現一個簡單的 rpc 框架到入門 grpc (上)RPC框架
- JavaScript之實現一個簡單的VueJavaScriptVue
- 訂單交易平臺三(登入介面整個實現過程)階段一(只實現簡單的登入功能)
- Flask-Login 讓實現登入功能變簡單Flask
- 利用jQuery實現表單驗證功能jQuery
- 簡單專案實戰flutter(功能篇)Flutter
- Git 伺服器 利用 hook 實現自動部署Git伺服器Hook
- 超級簡單的sql入門(一)SQL
- Python:Excel自動化實踐入門篇 甲【留言點贊領圖書門票】PythonExcel
- 【C#入門超簡單】簡單的專案實踐C#
- 超簡單實現iOS列表的索引功能iOS索引
- Java Web簡單登陸功能的實現JavaWeb
- Vue實現簡單的購物車功能Vue
- Dubbo入門(2) - 簡單實踐
- Dubbo入門(2) – 簡單實踐
- web前端入門到實戰:非同步載入CSS最簡單的實現方式Web前端非同步CSS
- 一起來實現單使用者登入 —— 功能實現
- 一、Ansible基礎之入門篇
- sql簡單入門的一些操作SQL
- springmvc簡單學習(一)-----入門SpringMVC
- 《MySQL 入門教程》第 07 篇 簡單查詢MySql
- [今日白學]利用Vue-CLi實現一個簡單的TodoList工具Vue
- Laravel入門(安裝部署篇)Laravel
- 如何實現簡單的分散式鏈路功能?分散式
- 用Java程式碼實現一個簡單的聊天室功能Java
- SpringMVC學習筆記之---簡單入門SpringMVC筆記
- rust學習一、入門之搭建簡單開發環境Rust開發環境
- springboot-stater + redis + lua 實現一個簡單的發號器(3)-- 實現篇Spring BootRedis
- 實現一個簡單的TomcatTomcat